2012-11-26 22 views
2

這是我遇到的一段代碼,據我所知它應該工作,但它好像if語句不在那裏。需要驗證mysql和PHP中空reult的編碼語法

$ 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; 
     } 

我使用變量$限制,爲了$,一個唯一的號碼和$那裏完成查詢,因爲我有幾個它使它變得更容易。他們已被檢出,他們根本不是問題。

如果找不到NO RECORD,運行第一個查詢來檢查新客戶,這是一個新客戶,然後我想在if語句中運行查詢以將它們添加到客戶表中,到銷售表,然後繼續查詢的其餘部分。如果第一個結果中有記錄,那麼該客戶存在,我想跳過插入查詢並直接轉到其餘查詢。

這個例子顯示了迄今爲止的一些嘗試,兩條評論線是我的第一次嘗試,但得到了相同的結果。

任何援助將不勝感激。

回答

1

幾件事:

  1. $數據被初始化它正在使用(第3行)後(第4行)。難道這不是相反嗎?

  2. 如果udid是主鍵或唯一索引,則可以簡單地運行插入並捕獲「重複」錯誤。這會提高你的性能,因爲你不需要第一個「選擇」查詢。注意:如果它是一個自動遞增的字段,即使插入失敗,這將增加下一個udid。

  3. 你說的「說法是不存在的」,我真的不知道這意味着什麼..

+0

OH SH%#@ *我一定是累了我也無法趕上第1項我很抱歉因爲我的這個簡單的錯誤而佔用你的時間。我感謝你的時間 –