2017-10-22 17 views
-1

私は自分のウェブサイトのコメントセクションを作ろうとしていますが、名前とアバターを表示するためにコメントのテキストと日付は表示していません。 コメントテーブル:id、member_id、comment、date、product_id 問題はループ内で結果を取得できないことです。私は別のクエリを試したが、それは私に同じコメントを与え続ける。PHPはDBから結果を得ることができません(中)

<?php 
include("includes/db.php"); 
{ 
$sql_query="SELECT * FROM product_comm WHERE product_id='$id'"; 
    $result_set=mysqli_query($conn,$sql_query) or die('error'); 
    $get_comm=mysqli_fetch_array($result_set); 
    $comm_date=$get_comm['date']; 
    $comm_mem_id=$get_comm['mem_id']; 
    $comm_text=$get_comm['comment']; 
} 
{ 
$sql_query="SELECT * FROM products WHERE str='$str'"; 
    $result_set=mysqli_query($conn,$sql_query) or die('error'); 
    $get_products=mysqli_fetch_array($result_set); 
    $id=$get_products['id']; 
     } 
{ 
$sql_query="SELECT * FROM member WHERE id='$comm_mem_id'"; 
    $result_set=mysqli_query($conn,$sql_query) or die('error'); 
    $get_member=mysqli_fetch_array($result_set); 
    $member_name_first=$get_member['first_name']; 
    $member_name_last=$get_member['last_name']; 
    $member_avatar=$get_member['avatar']; 
    } 

$result = mysqli_query($conn,"SELECT id FROM products WHERE str='$str'"); 

$result = mysqli_query($conn,"SELECT * FROM product_comm WHERE product_id=$id"); 

$result = mysqli_query($conn,"SELECT * FROM member WHERE id='$comm_mem_id'"); 
if ($result) { 

    if($result->num_rows === 0) 
    { 
     echo "<center>No comments</center>"; 
    } 
    else 
    { 

while($row = mysqli_fetch_array($result)) { 

    echo " 

<div class='media'> 
    <div class='media-left'> 
    <img src='http://maikatideeba.byethost32.com/images/profile_pics/".$row['avatar']."' class='img-circle' style='width:60px'> 
    </div> 
    &nbsp;<div class='media-body'> 
    <h4 class='media-heading'>&nbsp; ".$row['first_name']." ".$row['last_name']." <small><i> on ".$row['date']." </i></small></h4> 
    <p> ".$row['comment']." </p> 
<hr> 
</div> 

</div>"; 
} 
} 
} 


mysqli_close($conn); 
?> 

すべてが正しくデータベースに挿入されているが、私はその何(のようなコメント)の結果を表示しないようにしようと... Result image

+1

複数のクエリを実行しようとしており、最後のクエリだけが実行/クエリされます。これは '$ result'のためのものです。 –

+0

準備された文とパラメータ化されたクエリを使用します。 https://stackoverflow.com/a/60496/1461181 – DanielO

答えて

0

不要なクエリのソースをクリーンアップします。あなたが正確にやろうとしていることを理解するのは難しいことです。

$sql_members = "SELECT * FROM member WHERE id= ".$comm_mem_id; 
$result = mysqli_query($conn , $sql_members); 

それはデバッグがはるかに簡単だし、後でクエリをエコー:

は次のように、変数にクエリを割り当てることを学びます。 例えば、のために出力するものである:あなたのHTML出力の単一引用符を使用して

echo $sql_members; 

避け

は非常に好奇心サブドメインの選択... "maikatideeba.byethost32.com"。

+0

ドメインは無料です。私はmysqlデータベース内の異なるテーブルから情報を取得しようとしており、コメントブロックのように表示しています。 –

関連する問題