2013-10-21 207 views
0

我有一個網站,是在PHP和MySQL。只顯示相關帖子

這是一個我創建的播客網站。

主頁上有一個播客列表,一旦點擊了它,它會調出episode.php?id =,然後是在該播客的mysql中列出的ID。

在劇集頁面的底部我添加了一個評論框。

,我必須用它來顯示保存在MySQL的評論:

<?php class feedback { 
public function fetch_all(){ 
    global $pdo; 
     $query = $pdo->prepare("SELECT * FROM comments"); 
     $query->execute(); 
return $query->fetchAll(); 
       } } 
$feedback = new feedback; 
$articles = $feedback->fetch_all(); 
?> 

<html> 
<body> 

    <?php foreach ($articles as $feedback) { ?> 

<div class="comment" align="center">Name: <font size="3" color="grey"><?php echo $feedback['name']; ?></font> &nbsp;&nbsp; Email: <font size="3" color="grey">Hidden</font> 
<br /> 
<font size="5" color="red"><div align="left"><?php echo $feedback['post']; ?></font></div></div> 
<br><div class="divider2"> </div><br> 
<?php } ?> 
</html> 
</body> 

這顯示了在意見欄中列出的MySQL的所有評論。 每個評論都有一個「投射」選項卡,顯示播客的ID。

我怎樣才能得到這個反映正在瀏覽的頁面?例如

如果我正在查看episode.php?id = 1,那麼我希望顯示「cast」選項卡的評論顯示爲「1」,而不是「2」的「cast」選項卡。這同樣適用於episode.php?id = 2。等等!

請有人可以指導我如何做到這一點?

謝謝。

千電子伏

+0

查詢中的WHERE如何? –

+0

是的。我知道在哪裏。但是'$ query = $ pdo-> prepare(「SELECT * FROM comments WHERE cast =?」); $ query-> bindValue(1,$ cast);'不起作用。 –

回答

0

因此,在嘗試TimoDörsching的建議後,我有點玩弄這個方法。

我打撤消拿回來給我原來的職位,並改變了這一點:

<?php foreach ($articles as $feedback) { ?> 

<div class="comment" align="center">Name: <font size="3" color="grey"><?php echo $feedback['name']; ?></font> &nbsp;&nbsp; Email: <font size="3" color="grey">Hidden</font> 
<br /> 
<font size="5" color="red"><div align="left"><?php echo $feedback['post']; ?></font></div></div> 
<br><div class="divider2"> </div><br> 
<?php } ?> 

這樣:

<?php foreach ($articles as $feedback) { 
if ($feedback['cast'] === $_GET['id']) { ?> 

<div class="comment" align="center">Name: <font size="3" color="grey"><?php echo $feedback['name']; ?></font> &nbsp;&nbsp; Email: <font size="3" color="grey">Hidden</font> 
<br /> 
<font size="5" color="red"><div align="left"><?php echo $feedback['post']; ?></font></div></div> 
<br><div class="divider2"> </div><br> 
<?php } } ?> 

這完全沒有工作。

-1

也許你要過濾$ _GET [ '身份證'] & $投....但這個簡單的Google是如何做到這一點... 看一看:How can I prevent SQL injection in PHP?

$cast = $_GET['id']; 
public function fetch_all($cast){ 
    global $pdo; 
     $query = $pdo->prepare("SELECT * FROM comments WHERE cast/id/... = ".$cast.""); 
     $query->execute(); 
return $query->fetchAll(); 
       } } 
$feedback = new feedback; 
$articles = $feedback->fetch_all(); 
相關問題