在我的PHP代碼中,我很容易將記錄寫入數據庫,但出於某種原因,我無法讀取任何條目。我的PHP代碼:無法通過PHP查詢MySQL數據庫
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT * FROM companies";
if ($conn->query($sql) === TRUE)
{
echo "query success";
while($row = $result->fetch_assoc())
{
echo "ID: " . $row["ID"]. " - Name: " . $row["name"]. "<br>";
}
}
else
{
echo "query failure";
echo "Error: " . $sql . "<br>" . $conn->error;
}
$sql = "INSERT INTO companies (name)
VALUES ('mycompany')";
if ($conn->query($sql) === TRUE)
{
echo "insert success";
}
else
{
echo "insert failure";
echo "Error: " . $sql . "<br>" . $conn->error;
}
我從瀏覽器中得到當我運行它的輸出是: query failureError: SELECT * FROM companies insert success
我試着在這$ SQL字符串撇號,插入記號,報價變化。我試過在HeidiSQL中運行這個查詢,它工作正常。任何想法,我要去錯了嗎?任何關於更基本的東西的建議,我可以嘗試縮小問題的根源?
謝謝!
其實你不綁定您的查詢的結果,如果'($結果= $ conn->查詢($ SQL))'。但這不是你問題的根源,請看看['mysqli_error'](http://php.net/manual/en/mysqli.error.php)和['error_reporting(-1);'](http ://php.net/manual/en/function.error-reporting.php)。 – Qirel
您應該考慮使用條件,以便運行select或運行插入,或者在select之後運行插入,或者在insert之後運行select。現在,您的代碼重新使用相同的變量,而無需對該變量賦予新值時的任何控制。 –