PHP编程问题。未按预期执行

时间:2016-12-12 12:10:49

标签: php

我正在尝试使用PHP编程将数据推送到数据库中。以下是代码的一部分:

<?php
if($_SERVER["REQUEST_METHOD"]== "POST"){
    $id = mysql_real_escape_string($_POST['id']);
    $num = mysql_real_escape_string($_POST['num']);
    $bool = true;
    mysql_connect("localhost","root","") or die(mysql_error()); // Connect to server
    mysql_select_db("track") or die("Cannot connect to database"); // Connect to database
    $query = mysql_query("Select * from test"); // query the test table
    while($row = mysql_fetch_array($query)) //dislplay all rows from query
    {
        //$table_test1 = $row['id']; 
        $table_test2 = $row['num']; 

        if($num == table_test2)
        {
            $bool = false;
            Print '<script>alert("Data present already !");</script>';
            Print '<script>window.location.assign("register.php");/script>';
        }
    }
    if($bool)
    {
        mysql_query("INSERT INTO test (id,num) VALUES ('$id','$num')");
        Print'<script>alert("Successfully Registered!");</script>';
        Print'<script>window.location.assign("register.php");</script>';
    }   ...

如果if循环中的条件,我试图检查输入到帖子中的数字是否与表测试中存储在数据库中的数字相匹配。如果它存在,则不要将数据插入表中。但即使数据存在于数据库中,if条件也不会执行,仍然会将数据插入表中。任何人都可以解释我为什么会这样。

1 个答案:

答案 0 :(得分:5)

你有一个错字。您错过了$符号,这意味着它是一个变量:

if($num == table_test2)

更改为:

if($num == $table_test2)