2017-07-17 44 views
-2

我試圖更新'pantry-info'表中的記錄。代碼去if循環而不是else即使DB有記錄,但試圖編輯記錄時,代碼不起作用

代碼在下面提到,我做錯了什麼?

DB連接:

require 'config/connectDB.php'; 
session_start(); 
$id = $_GET['id']; 
$sql = 'SELECT * FROM temp WHERE'. " pan_id = '$id'"; 
$result = mysqli_query($conn,$sql); 

試圖在形式上讀取數據庫表中的值如下:

<?php 
      if(mysqli_num_rows($result1) == 0) 
      { 
       echo '<h2><a href="javascript:delete_user('.$id.')">This record already exists. Do you want to delete it?</a></h2>'; 
      } else { ?> 
       <h4>Edit the record here:</h4> 
       <br> 
       <form name="pantryinfo" id="pantryForm" method = "post" action="update.php" data-toggle="validator" role="form"> 
        <?php while ($row = mysqli_fetch_array($result1,MYSQLI_ASSOC)) { ?> 
         <div class="control-group form-group"> 
          <div class="controls"> 
           <input type="hidden" class="form-control" id="panid" name="panid" value="<?php echo $row['pan_id'];?>"> 
           <p class="help-block"></p> 
          </div> 
         </div> 
         <div class="control-group form-group"> 
          <div class="controls"> 
           <label>Name</label> 
           <input type="text" class="form-control" id="name" name="name" value="<?php echo $row['pname'];?>" required> 
           <p class="help-block"></p> 
          </div> 
         </div> 
       </form> 
      <?php 
      } 
      } 
     ?> 

類似的代碼可從另一個數據庫表中的不同頁面檢索值的罰款。請幫忙。提前致謝。

+3

'$ result1'你確定你不是指'$ result'?我沒有看到'$ result1'的查詢。我只看到'$ result = mysqli_query($ conn,$ sql);'對於其他使用的變量相同。 –

+0

如果是這樣,這就成爲一個未定義的索引/變量關閉重複 –

+0

'$ result1'是我的一個錯字。它到處都是「結果」。代碼運行'if'條件的邏輯,而不是進入'else' –

回答

0

我解決了這個問題。在SQL查詢中,我使用$result作爲變量,而在if-else代碼中,我使用的是result1

謝謝弗雷德指出。

+0

*「$ result1是我的一個錯字,它只是'result'無處不在,代碼運行邏輯if條件而不是進入else *但你說...否則。 –