簡體   English   中英

PHP未將所有語句插入MySQL數據庫

[英]PHP not Inserting into MySQL database all statements are there

我想知道是否有人輸入了為什么此語句未插入到我的MySQL數據庫中。 它沒有顯示任何錯誤,當我手動輸入SQL語句時,它會插入信息。

<?php

$host="mysql16.000webhost.com";
$user_name="a1611480_akaash";
$pwd="*****";
$database_name="a1611480_akaash";
$db=mysql_connect($host, $user_name, $pwd);

$sql = "INSERT INTO mydata VALUES ('dude1', 'dude2', 'dude3', 'dude4', 'dude5')";

mysql_query($sql);

?>

這是由於mysql不知道該SQL語句使用哪個數據庫。 包括mysql_select_db

mysql_select_db($database_name);

要在php中獲取任何類型的錯誤(致命錯誤除外),請使用try塊將代碼括起來

try{
    // db code
}catch(Exception $e){
    // something is wrong
    echo "Oh God! I got this ". $e->getMessage();
}

要查看錯誤,請執行以下操作:

mysql_query($sql) or die("Error:".mysql_error());

從您的查詢中,我假設您只有一列,並且想要添加多個值,所以這可能是以下格式:

$sql = "INSERT INTO mydata VALUES 
        ('dude1'), ('dude2'), ('dude3'), ('dude4'), ('dude5);";

那是因為您沒有提到列名-請參見http://www.w3schools.com/php/php_mysql_insert.asp另外您還忘記了選擇數據庫-mysql_select_db(“ my_db”);

因此,您的查詢必須類似於“ INSERT INTO mydata(column1,column2,column3,column4,column5)VALUES('dude1','dude2','dude3','dude4','dude5')”。

編輯:當然,科里是對的。 我認為這是更好的做法-我總是這樣做:)

您正在連接到遠程主機,您確定您有權這樣做嗎? 該代碼在哪里執行?

輸出mysql_error()的結果將很有用!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM