从 PHP 获取 AJAX 调用的返回值
get return value from php for ajax call
我正在尝试将 php 中的数据库插入中的自动增量 id 带回我的 javascript ajax 调用:
我的 ajax 调用如下所示:
//get values
var note = $('#note1').val();
alert(userID);
alert(beerID);
var ajaxSettings = {
type: "POST",
url: "atn.php",
data: {u:userID , b:beerID ,n:note},
success: function(data){
alert(data);
} ,
error: function(xhr, status, error) { alert("error: " + error); }
};
$.ajax(ajaxSettings);
return false;
我的PHP脚本看起来像这样:
<?php
error_log("starting code");
require_once('myConnectDB.inc.php');
$u = $_POST['u'];
$b = $_POST['b'];
$n = $_POST['n'];
//do some checks etc
$db = new myConnectDB();
$u = $db->real_escape_string($u);
$n = $db->real_escape_string($n);
$b = $db->real_escape_string($b);
$query3 = "INSERT INTO tn (userID,beerID,note) VALUES ($u, '$b', '$n')";
$result = $db->query($query3);
$dbID = mysql_insert_id();
echo $dbID;
?>
我尝试发回的$dbID在 PHP 脚本运行后没有收到警报。我在警报中收到此错误:
<br />
<b>Warning</b>: mysql_insert_id() [<a href='function.mysql-insert-id'>function.mysql-insert-id</a>]: A link to the server could not be established in <b>/home4/m133414/public_html/atn.php</b> on line <b>23</b><br />
替换以下行:
$dbID = mysql_insert_id();
对于这个:
$dbID = $db->insert_id;
由于您错误地使用了 mysql_insert_id() 的过程版本,而您使用的是面向对象的版本,因此为了保持一致,我们在这里也使用 OOP 版本。
相关文章:
- 如何记录调用另一个函数的函数的返回值
- 单击按钮时,使用Javascript调用并返回值
- 从JSP页面调用Java Script函数未返回值
- jQuery 延迟的 AJAX 调用返回值
- 未使用返回值时调用方法
- 如何在循环中调用Promise函数并保存其返回值
- AngularJS如何从异步调用返回值
- angularjs从html调用函数返回值
- jQuery deferred:用于延迟函数的返回,直到函数内的异步调用完成+获取返回值
- PHP调用脚本函数,返回值为Uncaught SyntaxError:意外的令牌ILLEGAL
- 如何使用Ajax内部调用JQuery在函数中获取返回值
- 为什么当我调用具有返回值的函数时,我的 onclick 事件不起作用
- 从函数从 JavaScript 调用 servlet 的 Ajax 不返回值
- 带有 AJAX 调用的 Javascript 函数 - 在响应后返回值
- 将一个函数作为参数传递给另一个函数,每次调用函数时检查返回值
- 从 PHP 获取 AJAX 调用的返回值
- 如何在 c# 代码隐藏中调用具有返回值的 Javascript 函数
- Javascript 函数返回 value.根据第一个函数返回值调用另一个函数
- 基于JSF中动作控制器方法的返回值调用javascript
- 基于控制器返回值调用javascript方法