[英]Using a PHP/HTML form to insert information into 2 MySQL tables
我使用表單將3個文本字段和2個復選框中的信息插入MySQL數據庫。
該數據庫由2個表組成,其中包含以下行:
id - articletitle - articleorganization - articledate - articleurl
id - article_tags - articlid - tagid
復選框使用數組,並因此進行了編碼:
<input type="checkbox" name="articletags[]" value="geology" id="articletags_0" />
<input type="checkbox" name="articletags[]" value="astronomy" id="articletags_1" />
MySQL語句如下所示:
mysql_query("INSERT INTO articles SET articletitle='$articletitle',
articleorganization='$articleorganization',
articledate='$articledate',
articleurl='$articleurl' ")
mysql_query2("INSERT INTO articles_tags SET articletags='$articletags' ")
但是,當我在Web瀏覽器中訪問該頁面時,它顯示為空白頁面。
如果有人想知道,我使用復選框的原因是因為文章將需要使用標簽組合進行標簽,這將確保在標簽中使用一致性。 另外,我有一個用於編輯文章的表格,我認為可以使用數據庫結構來使編輯頁面上的復選框“選中”。
任何意見是極大的贊賞。
什么是mysql_query2? 您確定在查詢后輸入分號嗎?
mysql_query("INSERT INTO articles_tags SET articletags='$articletags' ");
將mysql_query2('*******)
更改為mysql_query()
並啟用錯誤報告以檢查代碼中是否包含錯誤。 回顯您的查詢並直接在數據庫中運行以檢查任何與SQL相關的錯誤。
該空白頁實際上來自語法錯誤。 要查看語法錯誤,請編輯php.ini或將此行添加到代碼的頂部error_reporting(E_ALL);
將mysql_query2()
更改為mysql_query()
您的SQL語法不正確...
如果數據已經在數據庫中,則要使用UPDATE。
mysql_query("UPDATE articles SET articletitle='$articletitle',
articleorganization='$articleorganization',
articledate='$articledate',
articleurl='$articleurl' ");
mysql_query("UPDATE articles_tags SET articletags='$articletags' ")
這是您插入數據的方式:
mysql_query("INSERT INTO articles (articletitle,
articleorganization,
articledate,
articleurl) VALUES ($articletitle,$articleorganization,$articledate,$articleurl) ");
注意 :您應該使用mysql_error()
檢查語法錯誤。
mysql_query("INSERT INTO articles_tags SET articletags='$articletags' ") OR DIE(mysql_error());
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.