Php 检查行是否存在,以便用户不能篡改输入

Php 检查行是否存在,以便用户不能篡改输入,php,mysql,if-statement,exists,Php,Mysql,If Statement,Exists,注意:我已经编辑了整篇文章,试图让它更清晰 我很难把问题弄清楚,但这是我最后一次尝试了。 我在点击按钮时收到了这个消息 echo"Auto/Prijs<br><br><select name='autos'>"; echo"<br><br>"; $sql = "SELECT `garage`.`id`, `car_id`, `schade`, `naam`

注意:我已经编辑了整篇文章,试图让它更清晰

我很难把问题弄清楚,但这是我最后一次尝试了。 我在点击按钮时收到了这个消息

                echo"Auto/Prijs<br><br><select name='autos'>";
            echo"<br><br>";

            $sql = "SELECT `garage`.`id`, `car_id`, `schade`, `naam`, `prijs` FROM `garage` LEFT JOIN `cars` ON (`garage`.`car_id` = `cars`.`id`) WHERE `user_id`=".ID." ORDER BY `id` ASC LIMIT ".($page * 10).", 10";
$sql = mysql_query($sql) or die(mysql_error());
    $i = 1;
while($res = mysql_fetch_assoc($sql)){
    echo"


<option value='".$res['car_id']."'>".$res['naam']."</option><br>
    ";

我没有主意了,不能清楚地知道我需要做什么。我需要检查发送的车号是否真的在“用户”的车库里。(尝试通过检查“garage”表中的唯一条目“id”来执行此操作。

通过匹配行修复了此问题

$sql = mysql_query("SELECT `id` FROM `garage` WHERE `car_id`=".$carr." AND `user_id`=".ID) or die(mysql_error());

} elseif(mysql_num_rows($sql) == 0){
        $msgs = bad("x");

感谢您的回复。

.ID.
看起来很奇怪。不要使用mysql\u查询,开始使用PDO!ID似乎是常量,是常量还是变量$ID?
$carr
看起来它在这个应用程序中引入了SQL注入漏洞。有人能帮我在skype或ICQ上连接吗?我想这很难解释..ID。只是指页面上的用户ID。它用于整个源代码中。$carr是正在发布的汽车ID。
$sql = mysql_query("SELECT `id` FROM `garage` WHERE `car_id`=".$carr." AND `user_id`=".ID) or die(mysql_error());

} elseif(mysql_num_rows($sql) == 0){
        $msgs = bad("x");