精華區beta PHP 關於我們 聯絡資訊
※ 引述《ottokang (貓貓的大玩偶)》之銘言: : ※ 引述《sonicjr (平凡中的不平凡)》之銘言: : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ : 如果你的軟體有好用的高亮度編輯 就可以把.去掉 : $sql = "select * from member where name = '$name' and pw = '$pw'"; : 我的感覺是這樣比較清楚 比較不會被一堆.搞混 當然這個喜好隨個人 : 另外我手上有一本書說使用單引號速度會比較快 因為不用檢查字串是否為變數 : 例如可以用單引號包的純字串 : '我是字串' 就不要用雙引號: "我是字串" : 但是我的感覺好像是沒有差別>.< 也沒有看過手冊有寫這種建議 : 不知道有沒有強者有找到相關的資料? 我在一開始學的時候也是使用ottokang大的用法 可是寫到後來某一天吃了疑似型別轉換的悶虧(當時在趕進度,所以沒時間check) 所以後來我都是用 $str = sprintf("select * form xxx where name='%s'", $username); 這樣子其實可以更清楚,而且型別也很明確,給各位作參考。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.16.1.95 ※ 編輯: wawawa 來自: 163.16.1.95 (03/02 17:02)
grassboy2:很推這招!不過這招的效率會有浪費嗎?好奇… 03/02 17:05
ileadu:我聽某此高手也說要這樣用耶 真神奇... 03/02 17:10
ileadu: 些 03/02 17:11
ottokang:好方法! 03/02 17:19
andreli:這種做法跟Dreamweaver的一樣,補充一下。 03/02 18:00
fillano:型別明確有一個好處,是減少sql injection攻擊的機會 03/02 23:10
fillano:因為通常id是整數,如果不檢查型別,讓字串可以代替id 03/02 23:13
fillano:用'0 UNION x,y,z....'代替,這樣無論如何都會有result喔 03/02 23:14
wawawa:sql injection php預設免疫:p magic quotes的副作用:ppp 03/03 00:43
ails:為何不用 PEAR:DB 然後用bind就好了 03/04 12:57