[請益] 關於sql裡面有共白字元的問題

看板PHP作者 (c++新手)時間14年前 (2011/06/09 21:27), 編輯推噓3(309)
留言12則, 3人參與, 最新討論串1/1
因為小弟是php初學者 在嘗試寫一個連結到sql作搜尋功能的php時 遇到了 在資料庫裡面的資料是 ex: "test123 " 然後我輸入test123時 無法得到結果 由於sql裡面資料非常繁多 而且不確定哪幾個前後有空格 請問有什麼語法可以用類似模糊搜尋(就是不管前面有無空格都可以搜到的) 可能是個很笨的問題QQ 因為事發突然 來不及去找書QQ 可以請知道的版友救救我嗎??? 感謝QQQQQQQQQ 我寫的程式碼大致上是 -------------------------------------- $query = "Select * From ssss where name1= '$sname' Order By name1 Desc"; $result = mysql_query($query) or die("查詢 Query 錯誤"); $row = mysql_fetch_row($result); if( $sname != null && $row[0] == $sname) { echo '成功!'; echo '<meta http-equiv=REFRESH CONTENT=1;url=num.php>'; } else { echo '失敗!'; echo '<meta http-equiv=REFRESH CONTENT=1;url=num.php>'; } -------------------------------------------------- 順便問一個問題 假如要phpmyadmin要匯入csv時 因為我是由excel轉成的 原始資料有好幾"行" 轉進去的時候會出現嚴重的錯誤(例如多筆資料登記在同一筆) 曾經嘗試改過phpmyadmin裡面的字元判定 但還是失敗QQQQQQ 好像得必須把所有資料集中在一行才可以QQ 有好的解法嗎? 感謝大家QQQQQQQQQQQ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.35.128.44

06/09 21:53, , 1F
只是砍空格的話 WHERE TRIM(`name1`)='$sname'
06/09 21:53, 1F

06/09 21:53, , 2F
再不然就要用LIKE了
06/09 21:53, 2F

06/09 22:06, , 3F
其實trim $sname也行啊 不然用php在輸入時trim...
06/09 22:06, 3F

06/10 11:28, , 4F
SELECT * FROM 表格 WHERE 欄位 LIKE '%' + 字串 + '%'
06/10 11:28, 4F

06/10 11:29, , 5F
資料都在資料庫裡面了還教人家trim咧 我要搜尋 "this is
06/10 11:29, 5F

06/10 11:29, , 6F
a book"裡面的book可以trim()嗎?
06/10 11:29, 6F

06/10 11:32, , 7F
至於excel匯入問題,可以自己用VBA拼insert述句。
06/10 11:32, 7F

06/10 11:32, , 8F
學一下VBA用處很大
06/10 11:32, 8F

06/10 11:49, , 9F
MYSQL有TRIM函數沒問題啊...
06/10 11:49, 9F

06/10 11:50, , 10F
我看他的需求 很明顯用不到LIKE
06/10 11:50, 10F

06/10 11:50, , 11F
真要找this is a book的book當然只能用like了
06/10 11:50, 11F

06/10 18:04, , 12F
M大誤會了吧 TRIM是指MySQL的function 不是指PHP的
06/10 18:04, 12F
文章代碼(AID): #1DyCfORw (PHP)
文章代碼(AID): #1DyCfORw (PHP)