.post javascript with PHP启用select语句返回
好的,我的脚本正常运行
$.post('2.php', { id: 12345 }, function(data) {
// Increment vote count, etc
});
这就是我的2.php看起来像
$data = $_POST['id'];
$file = fopen("test.txt","w");
echo fwrite($file, $data);
fclose($file);
所以我做了一个测试,运行1.php并看到test.txt是用数据创建的。
这证明了连接是成功的。
现在是困难的部分。
我需要发送id:12345到2.php,而2.php需要
"select * from account where account_id='$data'";
然后返回结果,我想到使用MYSQL_ASSOC或MYSQL_BOTH 我不确定哪个最好。
然后得到结果,无论是1行结果还是多行结果。
以数组形式返回,然后使用1.php执行
alert( ArrayReturnResult );
假设我的帐户表具有此值
account_id, account_name, account_phone, account_email
我如何做到这一点?
答案 0 :(得分:3)
假设您知道如何建立数据库连接(当然使用PDO),您可以在2.php中执行类似的操作:
if(!empty($_POST)) {
$data = (int) $_POST['id'];
// query the table
$stmt = $pdo->prepare("SELECT * FROM account WHERE account_id = :id");
$stmt->bindValue(":id", $data, PDO::PARAM_INT);
$stmt->execute();
// fetch results
$buffer = array();
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$buffer[] = $row;
}
// output JSON string
echo json_encode($buffer);
}
当然,这没有经过测试......如果处理个人信息,可能不安全。
不要忘记更新$.post
方法,以便它可以预期JSON编码的数据:
$.post('2.php', { id: 12345 }, function(data) {
console.log(data); // this will now be a JS object, from 2.php
}, 'json');