需要验证mysql和PHP中空reult的编码语法

需要验证mysql和PHP中空reult的编码语法,php,mysql,Php,Mysql,这是一段代码,据我所知,它应该可以正常工作,但好像if语句不存在 $payloadObj->数据在通话中提供,并包含用于识别的唯一号码 $limit=""; $order=" ORDER BY rmtID"; $where=" WHERE udid = '".$data."'"; $data=$payloadObj->data; $now = date("o-m-d H:i:s"); $quer

这是一段代码,据我所知,它应该可以正常工作,但好像if语句不存在

$payloadObj->数据在通话中提供,并包含用于识别的唯一号码

        $limit="";
        $order=" ORDER BY rmtID";
        $where=" WHERE udid = '".$data."'";
        $data=$payloadObj->data;
        $now = date("o-m-d H:i:s");
        $query00="SELECT DISTINCT udid FROM rmtCustomer".$where; 
        $result00 = mysql_query($query00)
            or die("Query failed -".$query00);
        //$items=mysql_num_rows($result00);
        if ($result00) {
            if (mysql_num_rows($result00) == 0) {
            //if(!$items){
                $query11="INSERT INTO rmtCustomer (rmtCustomerID, udid, date) VALUES ('', '".$data."', '".$now."')";
                $result11 = mysql_query($query11)
                    or die("Query failed -".$query11);  
                $query22="INSERT INTO rmtSales (rmtSalesID, udid, productCount, date) VALUES ('', '".$data."', '9', '".$now."')";
                $result22 = mysql_query($query22)
                    or die("Query failed -".$query22);  
            }
        }

        $query="SELECT rmtTitle as product FROM rmtData".$order.$limit;
        $result = mysql_query($query)
            or die("Query failed -".$query);        
        $rows=array();
        while($row = mysql_fetch_array($result, MYSQL_BOTH)) {
            $rows[] = $row;
        }
我使用变量$limit、$order和$where来完成查询,因为我有几个变量,这使查询更容易。他们已经检查过了,根本不是问题

所需的效果是运行第一个查询以检查是否有新客户(如果未找到记录这是新客户),然后我希望运行if语句中的查询以将其添加到customer表和sales表中,然后继续执行其余的查询。如果第一个结果中有记录,则客户存在,我想跳过插入查询,直接转到其余查询

本例显示了到目前为止的几次尝试。注释掉的两行是我第一次尝试,但得到了相同的结果

任何帮助都将不胜感激。

有几件事:

  • $data在使用后(第3行)初始化(第4行)。这不应该是另一种方式吗

  • 如果udid是主键或唯一索引,则可以简单地运行insert并捕获“重复”错误。这将提高您的性能,因为您不需要第一次“选择”查询。注意:如果下一个udid是自动递增字段,即使插入失败,也会增加该字段

  • 你说“声明不存在”,我真的不确定那是什么意思

  • 哦,嘘%#@*我一定累了,我甚至没听清楚第1项。很抱歉,我犯了这么一个简单的错误,占用了你的时间。谢谢你抽出时间