2014-10-08 60 views
0

我已經在國內外投擲了這麼多線程4個小時以上,似乎缺少一件簡單的事情。

我想讓幾個用戶上傳他們的'新聞'到MYSQL。
但是,我只想顯示附加到該行的登錄用戶名(userpost)的'新聞'。
$ current是誰登錄的用戶名,哪個是有效的。
示例A不會篩選出不包含$ current用戶的行。
實施例B不提供任何輸出

Php Mysql SELECT查詢1列等於1個變量

所以,我已經嘗試都答:

$result = mysqli_query($con,"SELECT * FROM images_tbl"); 
//echo $current . "2" . $current; 
while($row = mysqli_fetch_array($result)) { 
    if ($row['userpost'] = '.$current.') { 
    $num = 0; 
    $num = $num + 1; 
    $pic.$num = $row['images_path']; 
    $h1 = $row['hlone']; 

和B:

$result = mysqli_query($con,"SELECT * FROM images_tbl WHERE (userpost = '.$current.')"); 
    echo $current . "2" . $current; 
    while($row = mysqli_fetch_array($result)) { 
     echo $row['hlone'] . " " . $row['images_path']; 
     echo "<img src=\"" .$row['images_path']. "\">"; 
    } 

27,圖像/ 2014年8月10日-1412752801.jpg(images_path),2014-10-08,標題(hlone),標題2,故事,testb(userpost)

任何幫助將不勝感激。

+0

顯示您的數據庫模型 – Sal00m 2014-10-08 07:57:24

回答

1

添加where子句來查詢

//in situation A 
$result = mysqli_query($con,"SELECT * FROM images_tbl where username='".$current."'"); 
//username is column name for user you might have to change this 
while($row = mysqli_fetch_array($result)) { 
    echo $row['images_path']; 
    echo $row['hlone']; 
} 

在情況B試試這個

$result = mysqli_query($con,"SELECT * FROM images_tbl WHERE userpost = '".$current."')"); 
    echo $current . "2" . $current; 
    while($row = mysqli_fetch_array($result)) { 
     echo $row['hlone'] . " " . $row['images_path']; 
     echo "<img src=\"" .$row['images_path']. "\">"; 
    } 
+0

對不起,延遲,我已經試過每個人的建議一次又一次,它仍然無法回聲從數據庫中的任何信息... 有太多的WHERE語句變體我'已經嘗試過,並且無法弄清楚爲什麼它不起作用。 – 2014-10-10 14:30:34

0

爲什麼你想用PHP來過濾。

如果要篩選那些不被當前用戶編寫只是使用MySQL Where子句中的「新聞」:

// For Example A 
$result = mysqli_query($con, "SELECT * FROM images_tbl WHERE userpost != '{$current}'"); 
while($row = mysqli_fetch_array($result)) { 
    $pic = $row['images_path']; 
    $h1 = $row['hlone']; 
} 

// For Example B 
$result = mysqli_query($con,"SELECT * FROM images_tbl WHERE userpost = '{$current}')"); 
echo $current . "2" . $current; 
while($row = mysqli_fetch_array($result)) { 
    echo $row['hlone'] . " " . $row['images_path']; 
    echo "<img src=\"" .$row['images_path']. "\">"; 
} 

它很容易與MySQL的過濾選項。你應該對MySQL做更多的研究。

+0

感謝球迷,仍然沒有運氣讓這個工作。 我知道PHP並不是這樣做的有效方式,但它值得一試;示例A是唯一一個從數據庫中輸出任何東西的東西,它太糟糕了,它會輸出所有東西。 我已經在Mysql上讀了更多的小時,並且有一本OReilly Mysql書,它在WHERE語句中只有幾個簡短的句子。 如果任何人有任何想法或知道還有什麼可能會錯過,那將是偉大的。 非常感謝您的幫助:) – 2014-10-10 14:33:58

+0

這是一個遲到的答案,但您說'$ current'具有正確的值。然而,如果它仍然從數據庫獲取所有數據,請首先使用phpMyAdmin檢查表的'userpost'列,看它是否有值。你需要自己做一些調試。如果查詢從DB獲得結果,則表示查詢正在工作,因此我們不能從MySQL獲取任何錯誤。 'userpost'列中有一些錯誤。 – Valour 2014-10-14 08:02:34