2017-08-07 28 views
-1

ユーザーが複数の画像をプロフィールページにアップロードした場合、その特定のユーザーの画像はどのように表示されますか?私はこのようなものでしてみました:データベースからログインしたユーザーの画像を表示するにはどうすればよいですか?

$db = mysqli_connect("localhost", "root", "", "testdb"); 
     $sql = "SELECT * FROM users ORDER BY id DESC"; 
     $result = mysqli_query($db, $sql); 
     while ($row = mysqli_fetch_array($result)) { 
      echo "<a href='profiles/uploads/".$row['image']."> "; 
       echo "<img id='img_div' title='".$row['image']."' alt='".$row['image']."' src='profiles/uploads/".$row['image']."'/>"; 
       //echo "<p id='img_div'>".$row['desc']."</p>"; 
       echo "</a>"; 

をしかし、私はそれは、ユーザーの画像をみんなの画像を表示していませんので、これはひどく間違っているように感じます。私は答えを探してみましたが、見つけられないようです。

答えて

0

はこれを試してみてください:

あなたはid = 10ようなSQLクエリでユーザーを設定する必要があります。

そしてまた、このラインの'最後に行方不明:echo "<a href='profiles/uploads/".$row['image'].">";

<?php 
$user_id = 10; 
$db = mysqli_connect("localhost", "root", "", "testdb"); 
$sql = "SELECT * FROM users WHERE id = ". $user_id ." LIMIT 1"; 
$result = mysqli_query($db, $sql); 

while ($row = mysqli_fetch_array($result)) { 
    echo "<a href='profiles/uploads/". $row['image'] ."'>"; 
    echo "<img id='img_div' title='".$row['image']."' alt='".$row['image']."' src='profiles/uploads/".$row['quotes']."'/>"; 
    //echo "<p id='img_div'>".$row['desc']."</p>"; 
    echo "</a>"; 
} 
?> 
+0

ありがとうございます! @ChandraKumar –

1

where句が必要です。 where id = 5はもちろん、番号をあなたが探しているユーザーに置き換えてください。

は今、クエリSELECT * FROM users ORDER BY id DESCが言っている:

はidでそれらを注文し、すべてのユーザーからのすべての列を選択します。述べ

SELECT * FROM users WHERE id = {user id}

は、idは、ユーザIDに等しいすべてのユーザーからすべての列を選択し

は代わりに、あなたのような何かをしたいです。

ユーザーが、私は特定のユーザーの画像

ことを表示する方法を、自分のプロフィールページに複数の画像をアップロードした場合はさておき、私はあなたのデータベースを設定しているかわからないんだけど、

として、

複数の画像を許可したい場合は、実際には別々のテーブルを用意する必要があると私は考えます。

+0

ので、私はWHERE ID =「$ user_id''またはそのような何か '言うことができますか? –

+0

@AshleyHowardはい正確に – Matthew

+0

私は別の人のプロフィールページに行く場合、私は同じことを行うか、それに加えて 'AND username = '$ username''をしますか? @Matthew –

関連する問題