我想通過將該表的名稱作爲來自文本框的輸入來創建數據庫中的表。通過給出來自php文本框的輸入來創建數據庫表
<?php
$tablename = $_POST['tablename'];
// Create a MySQL table in the selected database
mysql_query("CREATE TABLE $tablename(
id INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY(id),
firstpublish VARCHAR(255),
descriptions VARCHAR(255))") or die(mysql_error());
?>
它使表和字段,但我不能插入任何數據。當我運行下面
<?php
$firstpublish = $_POST['firstpublish'];
$descriptions = $_POST['descriptions'];
if(isset($_POST['firstpublish']) || ($_POST['descriptions']))
{
$order="INSERT INTO $tablename (id,firstpublish,descriptions) VALUES ('','$firstpublish','$descriptions')";
$result = mysql_query($order) or die (mysql_error());
}
?>
它顯示錯誤信息
代碼「您的SQL語法錯誤;檢查對應於你的MySQL服務器版本使用附近的「正確的語法手冊(ID INT NOT NULL AUTO_INCREMENT,PRIMARY KEY(ID),firstpublish VARCHA」位於第1" 行 我怎樣才能固定這個問題。
-thankyou。
add他們之間的空間,但仍顯示錯誤。我不知道這是寫表名還是不寫的正確方法。 :( – webrider
表正在創建,但是在該表中插入數據的問題 – webrider
您得到的錯誤(即您在此處發佈的錯誤)表明錯誤在於創建表,而不是插入數據。你真的很確定表格是否被創建了嗎?嘗試在行之間加入一些「虛擬調試代碼」,比如'print(「Hello,我在mysql_query之前」);''print(「Now I'm之後「);'等,這將給你一個更好的提示,確切地說,發生錯誤的地方。 – bos