我有這段代碼在PHP爲使得從MySQL數據庫PHP決策查詢得到錯誤,如在未知列「where子句」
if(isset($_SESSION["esb2b_userid"])){
$check_row = mysql_num_rows(mysql_query("select * from esb2b_basket where es_session='.$site.' and es_uid=".$_SESSION["esb2b_userid"]) or die(mysql_error()));
echo "Logged in as <b>" . $_SESSION["esb2b_username"] . "</b>" ;
?> <? }else{
?> <? echo "$to" ?> Our Website <? } ?> <? if($_SESSION['esb2b_userid']=='')
{?> <span id="log-info"><a href="<?=$domain_url?>/signup.html"><? echo "$Join_Free" ?></a><?php }?> |
<? if($_SESSION['esb2b_userid']=='')
{?> <a href="<?=$domain_url?>/signin.php?file="><? echo "$Sign_In" ?></a><?php } else { ?><a href="<?=$domain_url?>/logout.php" > <? echo "$Sign_out" ?> </a><?php }?>
但現在我喜歡這個
得到錯誤查詢Unknown column 'esb2b_userid' in 'where clause'
所以,有人可以告訴我,我得到這個結果,我該如何解決這個問題?任何幫助和建議都將非常可觀。由於
嗨!您應該使用已準備好的查詢來使用PDO。 – Guicara 2013-03-04 11:27:22
[**請不要在新代碼**中使用'mysql_ *'函數](http://bit.ly/phpmsql)。他們不再被維護[並且被正式棄用](http://j.mp/XqV7Lp)。看到[**紅框**](http://j.mp/Te9zIL)?學習[*準備的語句*](http://j.mp/T9hLWi),並使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/ mysqli) - [這篇文章](http://j.mp/QEx8IB)將幫助你決定哪個。如果你選擇PDO,[這裏是一個很好的教程](http://j.mp/PoWehJ)。 – 2013-03-04 11:27:35
我們可以看到你的數據庫模式嗎?很明顯,'esb2b_userid'列不存在。此外,您的代碼缺少結尾雙引號,並且會受到普通的SQL插入攻擊。 – 2013-03-04 11:42:23