作者foxzgerald (O⊥M)
看板PHP
標題Re: [請益] 不好意思有高手可以幫我看看嗎??
時間Sun Oct 19 02:36:36 2008
除了連線的問題之外,我另外發現好像還有其他問題:
※ 引述《kf110800 (LEO)》之銘言:
: <?php
: // 是否是表單送回
: if (isset($_POST["Insert"])) {
: // 開啟MySQL的資料庫連結
: $link = mysql_connect("********","****","*****")
: or die("無法開啟MySQL資料庫連結!<br>");
: mysql_select_db("store songs"); // 選擇資料庫
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
據我的猜測。你應該是有個資料庫叫 store,然後其中有個 songs 的資料表?
如果是這樣的話, 那應該是:
mysql_select_db('store'); // 這樣才對
: // 建立新增記錄的SQL指令字串
: $sql ="INSERT INTO store songs (name, cellphone, month, race ";
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
至於這段,如果是照我的猜測那樣,那邊應該是:
$sql = "INSERT INTO songs ....";
此外,關於 $sql的寫法,我提供一個可讀性較高的建立查詢字串的方式
請你參考看看:
$sql = "
INSERT INTO songs"
. "
(name, cellphone, month, race, date, hour, mint, people)"
. "
VALUES ( '{$_POST['name']}', '{$_POST['cellphone']}',"
. "
~~" // 連結其他字串
. "
'{$_POST['people']}')";
以上僅就字串處理的方式提供建議,至於資料庫處理則不建議直接將
$_POST[]用於查詢字串,因為容易被 SQL injection攻擊。不過如果是
剛開始學、只是寫寫作業,那先擱著這個議題別管以免搞的太複雜,等
更熟悉PHP的時候再回過頭來學(但請謹記在心這安全性上的問題)
: $sql.=$_POST["date"]."','".$_POST["people"].")";
: echo "<b>SQL指令: $sql</b><br>";
: // 送出Big5編碼的MySQL指令
: mysqli_query($link, "SET CHARACTER SET big5");
: mysqli_query($link,
: "SET collation_connection = 'big5_chinese_ci'");
: if ( mysqli_query($link, $sql) ) // 執行SQL指令
: echo "訂位成功 ".
: mysqli_affected_rows($link) . "<br>";
: else
: die("訂位失敗<br>");
: mysqli_close($link); // 關閉資料庫連結
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.223.230.165
推 kf110800 :嗯嗯謝謝 我試著改看看 10/19 02:38
※ 編輯: foxzgerald 來自: 61.223.230.165 (10/19 02:43)
推 kf110800 :請問一下"~~"的意思是什麼??? 10/19 02:42
→ foxzgerald :我懶得全部打..省略用符號XD 10/19 02:43
→ foxzgerald :大意是中間如法炮製..將字串變數建立起來 10/19 02:44
推 kf110800 :懂了謝謝 10/19 02:45
推 kf110800 :恩...我去爬爬文... 10/19 02:52