【发布时间】:2014-02-08 00:59:37
【问题描述】:
我无法通过单击按钮运行我的 php 脚本。
如果我通过终端运行脚本,'php get_funny_status.php' 它会返回正确的输出。但是,我无法通过 AJAX 做到这一点。 beginning ajax 警报出现,但我没有收到任何 responseText。
我错过了什么吗?
编辑:我正在 Adobe Dreamweaver 中测试此应用程序视图预览浏览器(我不确定这是否与问题有关)
<script>
$( document ).ready(function() {
$( ".nextStatus" ).click(function() {
alert('beginning ajax');
var statusNumber = '5';
$.get('get_funny_status.php?' + statusNumber, function(responseText) {
alert(responseText);
});
});
});
</script>
这是我的 php 脚本:
<?php
//initialize DB stuff
$status_text_query = "SELECT * FROM funny_status WHERE STATUS_NUM = '". $_GET['statusNumber']."'";
$result = mysql_query($status_text_query);
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
echo 'num likes: ' . $row['NUM_LIKES'];
echo 'num dislikes: ' . $row['NUM_DISLIKES'];
echo 'status text: ' . $row['STATUS_TEXT'];
echo 'status num: ' . $row['STATUS_NUM'];
}
?>
【问题讨论】:
-
_GET应该是$_GET。文件路径是否正确? -
如果我是你,我会使用 mysqli 或 PDO 而不是 mysql_ 函数。第一行是黑客的乐趣,容易发生 SQL 注入。
-
看起来你有一些很好的答案可以从下面工作。我还应该指出你有一个巨大的 SQL 注入漏洞,你应该考虑修复。
-
这些答案都没有帮助。我已经意识到语法错误并三重检查了路径名。它可能与从 Adobe Dreamweaver 运行 .php 有关吗?我可以从我的终端运行脚本就好了。只是不通过 Dreamweaver!
-
你能用 XAMPP 或类似的东西来看看它是否有效吗?另外,您没有提到错误日志;运行脚本时它会填充任何内容吗?
标签: javascript php mysql ajax get