未使用PHP将查询添加到SQL数据库
未使用PHP在SQL数据库上运行查询。输出是这样说的,但当我检查它时,它不在那里。请帮忙!顺便说一句,“connectdb.php”连接到sql和数据库。有没有什么我忘记的功能未使用PHP将查询添加到SQL数据库,php,mysql,sql,get,Php,Mysql,Sql,Get,未使用PHP在SQL数据库上运行查询。输出是这样说的,但当我检查它时,它不在那里。请帮忙!顺便说一句,“connectdb.php”连接到sql和数据库。有没有什么我忘记的功能 <?php $userId = mysql_real_escape_string($_GET["UserId"]); $banner = mysql_real_escape_string($_GET["banner"]); include "connectdb.php"; $query = mysql_query
<?php
$userId = mysql_real_escape_string($_GET["UserId"]);
$banner = mysql_real_escape_string($_GET["banner"]);
include "connectdb.php";
$query = mysql_query("SELECT * FROM banned WHERE Userid='$userId'");
$numrows = mysql_num_rows($query);
if (numrows == 1) {
echo "true";
} else {
echo "false";
}
?>
您在if条件下忘记了$,这可能就是您的代码无法工作的原因
<?php
include "connectdb.php";
$userId = mysql_real_escape_string($_GET["UserId"]);
$banner = mysql_real_escape_string($_GET["banner"]);
$query = mysql_query("SELECT * FROM banned WHERE Userid='$userId'");
$numrows = mysql_num_rows($query);
if ($numrows > 1) {
echo "true";
} else {
echo "false";
}
?>
您的if语句中缺少numrows之前的$ 直接回答问题:
调试时,您应该将以下内容添加到查询行中,如下所示,以获取错误的输出:
or die(mysql_error());
这一点,考虑使用PDO,您会发现它的错误消息非常冗长,并且将节省您不得不运行MySQLJRealOracle EngEnEdScript(),并提供更多的SQL注入保护。
< P>将您的包含链接放置在文件的顶部/P>
include "connectdb.php";
$userId = mysql_real_escape_string($_GET["UserId"]);
$banner = mysql_real_escape_string($_GET["banner"]);
然后在numrows中添加$
if ($numrows == 1) {
您也可以使用
if ($numrows > 0) {
您是否在UserId中获得了一个值?是的,这是输出:“UserId:232被Usering禁止”如果$UserId存在于您的“禁止”表中,则应为true。为什么要删除转义调用并使查询容易受到SQL注入攻击?我在if语句中向numrows添加了现金标记,并添加了mysql查询。仍然没有添加到它。如果运行此命令,输出是什么?是否打开了错误显示?$query=mysql\u query(“从禁用的位置选择*Userid='$Userid')或die(mysql\u error());