php - 切换到 php 7 后 $.getJSON 不起作用
问题描述
我切换到 php 7,这不再起作用了!请帮忙!
当我切换回 php 5.6 时,它突然起作用了。不知道为什么 php 会影响 jquery。请帮忙!
我已经尝试了一切,但所有其他代码都是一样的,我什么也没改变。我所做的只是切换 php 版本。我感到困惑和困惑。请帮忙!
我什至可以给你看我的服务器的截图。除了切换 php 版本外,我什么都没改变。配置中是否缺少某些内容?
请帮忙!
function fillForm(id) {
console.log('fillForm ' + "<?=$read_call?>&id="+id+"");
$.getJSON("<?=$read_call?>&id="+id+"", function( data ) {
console.log('fillForm '+data);
$.each( data, function( key, val ) {
if(data.hasOwnProperty(key))
$('input[name='+key+']').val(val);
if(key == 'acct') {
$('select[name="acct"]').find('option:contains("'+val+'")').attr("selected",true);
}
if(key == 'priority') {
$('select[name="priority"]').find('option:contains("'+val+'")').attr("selected",true);
console.log('priority '+val);
}
if(key =='extra') {
$('textarea[name='+key+']').val(val);
}
if(key == 'password') {
$('#passwordRow').prop('title', val);
}
if(key == 'code') {
$('#codeRow').prop('title', val);
}
if(key == 'url') {
$('#url_1_href').prop('href', val);
}
if(key == 'referralURL') {
$('#url_2_href').prop('href', val);
}
});
});
}
添加了php代码:
<?php
include($dir.'functions.php');
include($dir.'config.php');
include($dir.'ez_sql_core.php');
include($dir.'ez_sql_mysql.php');
///////////////////////////
$tableName = 'credentials';
///////////////////////////
$id = $_REQUEST['id'];
foreach($_REQUEST as $request => $value) {
$_REQUEST[$request] = mysql_real_escape_string($value);
}
switch($_GET['action']) {
case 'update':
$update = "UPDATE $tableName SET name='".$_REQUEST['name']."',
password=AES_ENCRYPT('".$_REQUEST['password']."', '$key'),
code=AES_ENCRYPT('".$_REQUEST['code']."', '$key'),
acct='".$_REQUEST['acct']."',
priority='".$_REQUEST['priority']."',
campaign='".$_REQUEST['campaign']."',
username='".$_REQUEST['username']."',
email='".$_REQUEST['email']."',
url='".$_REQUEST['url']."',
referralURL='".$_REQUEST['referralURL']."',
extra='".$_REQUEST['extra']."'
WHERE id='".$id."'";
$success = $conn->query($update);
if($success == 1)
echo 'Updated record '.$id.': '.$update;
else
echo 'Failed to update record '.$update;
break;
case 'delete':
$query = "DELETE from $tableName WHERE id='".$id."'";
$success = $conn->query($query);
if($success == 1)
echo 'Successfully deleted record '.$id;
else
echo 'Failed to delete record '.$id;
break;
case 'create':
$insert = "INSERT INTO $tableName (name, acct, priority, campaign, username, email, password, code, url, referralURL, extra) values (
'".$_REQUEST['name']."',
'".$_REQUEST['acct']."',
'".$_REQUEST['priority']."',
'".$_REQUEST['campaign']."',
'".$_REQUEST['username']."',
'".$_REQUEST['email']."',
AES_ENCRYPT('".$_REQUEST['password']."', '$key'),
AES_ENCRYPT('".$_REQUEST['code']."', '$key'),
'".$_REQUEST['url']."',
'".$_REQUEST['referralURL']."',
'".$_REQUEST['extra']."'
)";
$success = $conn->query($insert);
if($success == 1)
echo 'Added record '.$insert;
else
echo 'Failed to add record '.$insert;
break;
case 'read':
default:
$read = "SELECT *, AES_DECRYPT(password, '$key') as password, AES_DECRYPT(code, '$key') as code FROM $tableName WHERE id='".$id."'";
$resR = $conn->query($read);
$recs = $resR->fetch_assoc();
echo json_encode($recs);
break;
}
?>
解决方案
正如 Tangentially Perpendicular 所说,这个函数导致了错误 mysql_real_escape_string()
更改为 mysqli_real_escape_string() 并且它起作用了
推荐阅读
- python - 使用 CSV 更改文件中的特定行
- apache-spark - pyspark (spark 2.2) 将流式数据帧写入 Mysql
- python - 构建我自己的数据集以与 Tensorflow 或 Keras 一起使用
- c - 根据 access() 目录不可写,用户仍然可以在其中创建文件
- matlab - 优化等数分布
- node.js - Axios + Sequelize ValidationError = promise catch 块中没有请求或响应对象?怎么处理?
- c# - 为什么错误 500 Web Api JWT 在服务器上进行身份验证?
- javascript - 未捕获的 SyntaxError:位置 0 处 JSON 中的意外标记 T
- perl - 所有引用的取消引用都相同吗?
- xamarin.android - 当我连接到 mysql 时,在 xamarin android 中显示此问题