PHP脚本未出错且未运行

PHP脚本未出错且未运行,php,sql,Php,Sql,我的代码是: <?php echo "Test1"; $con=mysqli_connect("Removed"); $Amount=$_GET["Amount"]; $GetType=$_GET["Type"]; var_dump($GetType); var_dump($Amount); $sql_query = "SELECT * FROM EventRecord WHERE EventType='$GetType' ORDER BY EventId DESC"; $sql_res

我的代码是:

<?php
echo "Test1";
$con=mysqli_connect("Removed");

$Amount=$_GET["Amount"];
$GetType=$_GET["Type"];
var_dump($GetType);
var_dump($Amount);
$sql_query = "SELECT * FROM EventRecord WHERE EventType='$GetType' ORDER BY EventId DESC";
$sql_result = mysqli_query($con,$sql_query)
     or exit(mysqli_error($con));
while($sql_row = mysqli_fetch_assoc($sql_result)){
   echo $sql_row['EventId'].'<br>';
}
mysqli_close($con);
?>

出于某种原因,当我转到时,输出的只是“Test1string(4)string(2)”。 注意:我知道SQL注入漏洞,但是这些漏洞不会对我的代码产生特别的影响。所有的表结构都是正确的

此外,我如何使其回显最上面的行(由EventId的大小决定),但仅回显前2行、前3行、前7行或任何其他数字,具体取决于$Amount是多少?

替换

$sql_result = mysqli_query($con,$sql_query)
     or exit(mysqli_error($con));

见:

使用限额显示数据库中的第一个$Amount结果如何

SELECT * FROM EventRecord WHERE EventType='$GetType' ORDER BY EventId DESC LIMIT 0, $Amount

如果我想回答您的问题,请更正。

也许您应该描述一下表的结构,并提供一些格式化的输出,以便我们回答这个问题。“Test1string(4)string(2)”这看起来像是您首先执行了一个echo“Test1”,然后得到了2个vardumps字符串(4)和字符串(2)。如果你想限制你的结果,你可以使用mysql的limit n,正如我所说的,没有输出。为此,你可以根据你的列名进行排序,并可以给limit 0,7如果没有返回记录,你希望得到什么输出?“没有返回记录”为什么会发生这种情况?if语句中缺少一个右括号。您确定在PHP的配置文件中启用了错误吗?尝试添加
错误报告(E_ALL);ini设置(“显示错误”,1)在脚本的开头。我认为这是正确的,但是我相信$Amount是一个字符串,这有关系吗?应该可以。或者,您可以先将其转换为整数。“您的SQL语法有错误;请检查与MySQL服务器版本对应的手册,以了解第1行“3”附近使用的正确语法(我使用3表示金额),请删除$amount的报价。好吧,现在没有错误。。。“Test1string(4)”Join“string(1)”3”是输出,因此它似乎没有运行
SELECT * FROM EventRecord WHERE EventType='$GetType' ORDER BY EventId DESC LIMIT 0, $Amount