2013-12-14 106 views
0
<?php 
include_once 'dbconnect.php'; 
$flds= "UPDATE OFFICE SET OADD02=? WHERE OFFNO=$OFFNO"; 
$stmt = $mysqli->prepare($flds); 
$stmt->bind_param('s',$OADD02); 
$stmt->execute(); 
$stmt->close(); 

我執行上述和在bind_param它失敗。我的過程如下:mysqli bind_param更新查詢不工作

  • 用戶進入表單更新信息(信息通過mysqli查詢顯示);
  • 他們點擊提交。

初始化和填充$stmt的作品,但是當我到達bind_param頁面變成空白。這裏是網址:http://gccitech.com/iclub/office.php?ONO=4&ftype=m

+1

嘗試使用$ OFFNO報價。 – Mihai

回答

0

嘗試兩個參數綁定:

$flds= "UPDATE OFFICE SET OADD02=? WHERE OFFNO=?"; 
$stmt = $mysqli->prepare($flds); 
$stmt->bind_param('ss',$OADD02, $OFFNO); 

我推測,即$ OFFNO是一個字符串。如果它是一個整數,使用這個:

$stmt->bind_param('si',$OADD02, $OFFNO); 
0

通過閱讀我已經注意到了一些事情。您需要一個文件,但是您尚未聲明$ mysqli,意味着連接字符串可能不起作用。

你還檢查過它是否有任何錯誤會顯示出來嗎?試試這個代碼來檢查錯誤,你將會對發生的事情有個更好的認識

if ($sql = $mysqli->prepare($query)){ 
      $sql->bind_param("s",$OADD02); 
      $sql->execute(); 
     } else { 
      echo "Failed prepare statement" . $this->conn->error . $this->conn->error; 
     } 

這樣你就可以打印出MySQL錯誤。一旦你完成了這個錯誤,我可以嘗試和幫助。

此外,您還沒有聲明$ OFFNO,這意味着查詢將無法正確執行。如果你聲明$ mysqli和$ OFFNO的連接,並確保你使用上面的if語句進行錯誤檢查,你應該能夠明白爲什麼它不起作用。