iT邦幫忙

0

Mysql語法問題

小弟是程式新手,為了申請資工系,現在在寫一個報名網站想放在備審,4/6就要上傳有點急
主要問題是昨天用下列code插入數據到Mysql可以,但是今天去調其他變數,預防空白或輸入錯誤的問題再run就變成下面那樣了,幫託幫幫小弟,感激不盡。
看起來是單引跟雙引的問題(因為之前是這樣錯的),我的理解是單引裡面全部會當成字串來讀,雙引會把他當成字串加變數看讀到哪一個。但現在改成這個版本應該沒錯才對啊。上mariadb官網查的insert語法好像也對
https://ithelp.ithome.com.tw/upload/images/20200331/20126010Yz4bf2wymz.png

看更多先前的討論...收起先前的討論...
直接這樣看就不對了。你少了後面的)
listennn08 iT邦研究生 4 級 ‧ 2020-03-31 16:12:19 檢舉
你可以把 code 貼上來嗎
你執行的那句 看起來少一個括號
淺水員 iT邦新手 1 級 ‧ 2020-03-31 16:16:08 檢舉
POST 過來的資料不建議直接拿來組 SQL
很容易遇到 "SQL 注入攻擊"
可以多利用 PDO:
https://ithelp.ithome.com.tw/articles/10183166
ant1017 iT邦新手 4 級 ‧ 2020-03-31 16:18:33 檢舉
我脫節了...現在申請學校的系所需要附上程式碼嗎?
如果不熟的話,會不會有點拿石頭砸自己腳了
qawl987 iT邦新手 5 級 ‧ 2020-03-31 16:26:07 檢舉
對!感謝各位,看來是改變數的時候動到的,抱歉問了蠢問題。
因為資工系現在好熱門,我想多別人一些多西,確實不熟的話好像會出事,我盡量讓自己熟一點。
那如果表單數據只限定中英數字還會被攻擊嗎?就我所知好像是用到單引雙引之類的好像才會讓程式讀進去。
淺水員 iT邦新手 1 級 ‧ 2020-03-31 16:30:34 檢舉
要攻擊的人不會乖乖填表單喔。
能送post的方式太多了。
qawl987 iT邦新手 5 級 ‧ 2020-03-31 16:53:46 檢舉
那我還是太菜了,可是時間剩不多,只能跟教授說w3school的教學就是這樣哈哈,感謝你
jasonb122 iT邦新手 5 級 ‧ 2020-04-03 18:30:12 檢舉
記得跟面試官說你只是根據教學做的小程式 基礎還不好 展現出你對這個領域的興趣 不然要是問深一點應該會很落漆XDD
qawl987 iT邦新手 5 級 ‧ 2020-06-01 19:53:02 檢舉
感謝各位,最後上了中央資工,特地回來感謝一下

1 個回答

0
frankychen
iT邦新手 1 級 ‧ 2020-03-31 20:22:54
最佳解答
$sql = "INSERT INTO `signup` (`name`,`school`, `email`,`id`) VALUES ('".addslashes($_POST['name'])."','".addslashes($_POST['school'])."','".addslashes($_POST['email'])."','".addslashes($_POST['id'])."')";
qawl987 iT邦新手 5 級 ‧ 2020-04-01 10:03:56 檢舉

sor我忘記改成已解答,謝謝你的回答

我要發表回答

立即登入回答