[請益] 會員權限 帳號有英文就無法跳(已解決)

看板PHP作者 (貝爾菲格諾)時間10年前 (2015/08/05 16:01), 10年前編輯推噓1(1012)
留言13則, 6人參與, 最新討論串1/1
我有個資料表有七個欄位,主要用來存放使用者個人資料 每個使用者都有對應的權限等級,而我權限等級用一個欄位存放,目前分1 2 3個等級 http://i.imgur.com/aTc5r8D.jpg
目前功能是想先做,可以依照帳號權限去顯示超連結 程式碼參考#1IUPiWqn <?php session_start(); ?> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <?php include("mysql_connect.inc.php"); echo '<a href="logout.php">登出</a> <br><br>'; //echo $_SESSION["username"]."<br>"; $sql="SELECT * FROM member_table WHERE username=".$_SESSION["username"]; //echo $sql."<br>"; $result = mysql_query($sql); while ($row = mysql_fetch_array($result)){ $level = $row["lv"]; } $_SESSION["memberLevel"]=$level; if($_SESSION["memberLevel"] =="3"){ echo '<a href="register.html">新增</a>'; } else if($_SESSION["memberLevel"]=="2"){ echo '<a href="update.php">修改</a>'; } else{ echo '<a href="delete.php">刪除</a><br>'; } ?> 只要登入帳號有英文他就說那行有錯,而且結果會直接顯示刪除的連結 登入帳號是數字功能就正常 以下是錯誤訊息 Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\...............\member_2.php on line 11 刪除 我看起來沒什麼問題,希望有高手能來幫忙看一下 補充一下echo $_SESSION["username"]也都有顯示登入帳號 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.221.217.28 ※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1438761663.A.430.html

08/05 16:09, , 1F
$sql少了最後的雙引號?
08/05 16:09, 1F

08/05 16:10, , 2F
所以username是數字就ok 字串就爆炸
08/05 16:10, 2F
※ 編輯: asd56799001 (61.221.217.28), 08/05/2015 16:14:52

08/05 16:16, , 3F
$sql='SELECT * FROM member_table WHERE username="'
08/05 16:16, 3F

08/05 16:18, , 4F
.$_SESSION["username"].'"';
08/05 16:18, 4F

08/05 16:20, , 5F
用PDO會好很多,不用擔心爆掉的問題
08/05 16:20, 5F
※ 編輯: asd56799001 (61.221.217.28), 08/05/2015 16:23:30

08/05 16:22, , 6F
SQL內所有value左右加上引號 欄位左右加上倒引號
08/05 16:22, 6F

08/05 16:23, , 7F
養成好習慣 一般而言value加引號就可以了 但是你欄位
08/05 16:23, 7F
※ 編輯: asd56799001 (61.221.217.28), 08/05/2015 16:25:23

08/05 16:24, , 8F
如果剛好取到保留字如left right index等就一定要加
08/05 16:24, 8F
※ 編輯: asd56799001 (61.221.217.28), 08/05/2015 16:26:10 ※ 編輯: asd56799001 (61.221.217.28), 08/05/2015 16:26:57

08/05 16:29, , 9F
感謝上面的大大已經可以了是引號的關係
08/05 16:29, 9F

08/05 16:30, , 10F
PDO有耳聞...因目前在做一些東西,等這陣過了來學
08/05 16:30, 10F
※ 編輯: asd56799001 (61.221.217.28), 08/05/2015 16:32:54

08/08 01:22, , 11F
$sql 少了一個引號 有很大的可以在query時 不會出現錯誤
08/08 01:22, 11F

08/08 01:22, , 12F
很大可能....最近常遇到這個問題
08/08 01:22, 12F

08/08 01:59, , 13F
少一個就unbalanced 要怎樣不會出現錯誤
08/08 01:59, 13F
文章代碼(AID): #1LmSA_Gm (PHP)
文章代碼(AID): #1LmSA_Gm (PHP)