2015-04-30 46 views
0

我想獲得用戶數據。當我進入

[email protected]

的用戶名$郵件我可以得到的信息,但如果我把

$_SESSION['username']

我得到「未知列

'[email protected]'

在 'where子句'」

,或者如果我把

$郵件

我沒有得到任何錯誤,但看到空線。

function getusersfield($field){ 
     //echo $field; 
     $mail = $_SESSION['username'].'<br>'; 
     //echo $mail; 

     $query ="SELECT `$field` FROM `users` WHERE `e-mail`='$mail'"; 
     //echo mysql_result($query_run=mysql_query($query), 0, $field); 

     if($query_run = mysql_query($query)) { 
      if($query_result=mysql_result($query_run,0,$field)) { 
       return $query_result; 
      } else { 
       echo mysql_error(); 
      } 
     } else { 
      echo mysql_error(); 
     } 
     //echo $_SESSION['ad'].' '.$_SESSION['usersurname']; 

} 

爲什麼輸出的下面的代碼是空的?

echo getusersfield('Ad').'<br>'; 
+1

'$郵件= $ _ SESSION [ '用戶名']「。
';'< - 您的數據庫中是否有折線標籤? :) – Rizier123

+0

謝謝。我有錯誤,這就是爲什麼我複製/粘貼。 –

回答

1

您的問題能在這找到:

$mail=$_SESSION['username'].'<br>'; 

<br>標籤也被添加到您的SQL SELECT查詢,使你的數據庫中搜索字符串錯誤([email protected]<br>)。

將其更改爲:

$mail=$_SESSION['username']; 
+2

它有什麼錯誤?爲什麼這會破壞OP的代碼? – Rizier123

+2

我想知道爲什麼這個答案是upvoted。 '
'只是搜索電子郵件失敗 –

+0

你可能是對的,但你沒有解釋爲什麼這可能是問題。 – RiggsFolly