У меня есть некоторый код ajax, который выполняется при щелчке мышью.Он вызывает файл с именем update.php, который выполняет кучу всего, включая проверку прав доступа пользователей, многочисленные обращения к базе данных и т. Д. В конце я также хочу иметь возможность вернуть несколько переменных из PHP для использования обратного вызова,но не уверен, как ссылаться на них - или если есть лучший способ вернуть эту информацию.
$.ajax({
type: "POST",
url: "update.php",
data: dataString,
success: callback
});
function callback(data, status)
{
// $("div").text(data);
$("div.numbert").text("[first variable here]");
$("div.numbert2").text("[second variable here]");
}
Из моего файла update.php (некоторые фрагменты):
if ($check_access > 0)
{
// Update database
$sql = "UPDATE db SET access = '1' WHERE user = '$user'";
$result = mysql_query($sql) or die(mysql_error());
// Give access - function returns data to variable
$value = GiveAccess($user);
// Email - function returns data to variable
$emaillist = emailAdmins($user);
} else {
$message = "Sorry you do not have access";
}
Так что яЯ хотел бы выяснить, как использовать переменные $ message, $ value и $ emaillist в моем обратном вызове, если это возможно.
Мне интересно, нужно ли мне просто делать несколько вызовов $ .ajax POST, с каждым.php функция, которая возвращает переменную с собственным вызовом?
Спасибо!
---- ОБНОВЛЕНИЕ -------
Обновление кода при попыткеиспользовать методы json - спасибо за всю помощь - но, похоже, я упускаю еще одну вещь.
$.ajax({
type: "POST",
url: "update.php",
data: dataString,
dataType: 'json',
success: callback
});
function callback(data, status)
{
// $("div").text(data);
$("div.numbert").text(data.value);
$("div.numbert2").text(data.emaillist);
и update.php:
$storage = array();
// Update database
$sql = "UPDATE db SET access = '1' WHERE user = '$user'";
$result = mysql_query($sql) or die(mysql_error());
// Give access - function returns data to variable
$storage['value'] = "some user";
// Email - function returns data to variable
$storage['emaillist'] = "some stuff";
header('Content-type: application/json');
echo json_encode($storage);
exit(0);
Еще раз спасибо.