Php 为什么我能';t外接程序数据库?
我正在尝试将数据从html发送到php,并尝试将其添加到数据库中。 我就是不知道怎么了,有人能帮我吗 以下是脚本中的代码:Php 为什么我能';t外接程序数据库?,php,html,json,ajax,mysqli,Php,Html,Json,Ajax,Mysqli,我正在尝试将数据从html发送到php,并尝试将其添加到数据库中。 我就是不知道怎么了,有人能帮我吗 以下是脚本中的代码: $("#addbtn").click(function(){ var cityName=document.getElementById("cityField").value.toString(); var countryName=document.getElementById("countryField").value; var descripti
$("#addbtn").click(function(){
var cityName=document.getElementById("cityField").value.toString();
var countryName=document.getElementById("countryField").value;
var description=document.getElementById("descriptionField").value;
var touristTargets=document.getElementById("targetsField").value;
var costPerDay=parseInt(document.getElementById("costField").value);
$.ajax({
dataType: "json",
type: "GET",
url: "getCities.php",
data: {limit:100,action:"add",cityField:cityField,countryField:countryField,descriptionField:descriptionField,targetsField:targetsField,costField:costPerDay},
success: {function(msg) {
alert(msg.status);
}}
});
php文件中的这个:
$action= $_REQUEST["action"];
if($action == "add"){
$city=json_decode($_GET["cityField"]);
$country=json_decode($_GET["countryField"]);
$descript=json_decode($_GET["descriptionField"]);
$targets=json_decode($_GET["targetsField"]);
$cost=json_decode($_GET["costField"]);
$command="INSERT INTO vacantiondestinations(cityName,countryName,description,touristTargets,costPerDay) VALUES(?,?,?,?,?)";
$stmt=$conn->prepare($command);
$stmt->bind_param("ssssi",$city,$country,$descript,$targets,$cost);
$stmt->execute();
if($stmt)
echo json_encode(array('status'=>'success'));
else
echo json_encode(array('status'=>'failed'));
}
由于您似乎在任何地方都没有将数据编码为JSON,因此大多数情况下,当您调用
JSON\u decode($\u GET[“somevalue”])
时,您将得到NULL
不要在非json的东西上运行
json\u decode
。既然您正在声明这些变量,那么它们不应该是数据声明中包含的值吗(代码被截断以仅显示重要内容
var cityName=...
var countryName=...
var description=...
var touristTargets=...
var costPerDay=...
...data: {limit:100,action:"add",cityField:cityName,countryField:countryName,descriptionField:description,targetsField:touristTargets,costField:costPerDay}...
您使用了错误的变量名称,代码如下:
数据:{limit:100,action:“add”,cityField:cityName,countryField:countryName,descriptionField:description,targetsField:touristTargets,costField:costPerDay},
if($\u GET['action']==“add”){
代替了if($action==“add”){
我已经定义:$action=$\u请求[“action”];但是我忘了在这里添加它