这里我尝试将两个变量
发送到我的php
文件:
我的 PHP 中不断出现错误..
mysqli_query() 期望参数 1 为 mysqli 和两个
变量的未定义索引
就像它们没有被正确发送或接收一样。
var name = "John";
var address = "UK";
var sendInfo = {
Name: name,
Address: address
};
var params = JSON.stringify(sendInfo);
alert(params);
var httpSend = new XMLHttpRequest();
var php = "http://server/~name/folder/insertOffer.php";
httpSend.open("POST", php, true);
httpSend.onreadystatechange = function()
{
if(httpSend.readyState == 4 && httpSend.status == 200) {
}
}
httpSend.send(params);
PHP 文件:将变量
添加到数据库
<?php
include("mysqlconnect.php");
$name = $_POST['Name'];
$address = $_POST['Address'];
mysqli_query($connection,"INSERT INTO offerSelected (Id, Url) VALUES ('".$name."','".$address."')");
?>
mysqlconnect.php 等于:
<?php
$connection = mysql_connect("localhost", "user", "pass");
if(!$connection){
die('Could not connect to server: ' . mysql_error());
}
mysql_select_db("table", $connection);
?>
更新版本
<?php
$connection = mysqli_connect("localhost", "user", "pass", "table");
$stmt = $connection->prepare('INSERT INTO offerSelected (Id, Url) VALUES (?, ?)');
$stmt->bind_param('ss', $name, $address);
$stmt->execute();
?>
JavaScript
var xmlhttp1 = new XMLHttpRequest();
var name = "John";
var address = "UK";
var params = 'Name=' + name + '&Address=' + address;
var php_url = "http://server/~name/folder/insertOffer.php";
xmlhttp1.open('POST', php_url, true);
xmlhttp1.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp1.onreadystatechange = function() {
if (xmlhttp1.readyState == 4 && xmlhttp1.status == 200) {
var response1 = xmlhttp1.responseText;
response1 = JSON.parse(response1);
alert(response1);
console.log(response1);
alert('Check the browser console');
}
}
xmlhttp1.send(params);
我的回复警报根本没有激活。
最佳答案
你使用mysql_connect,这对mysqli来说是错误的;) 看这里:mysqli
关于php - 如何使用 PHP 使用 AJAX/JSON 将详细信息添加到 mySQL 数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25889970/