2012-02-12 2 views
0

У меня есть таблица под названием «Профиль» в базе данных MySQL Структура таблицы:получение двух видов данных и отобразить его

user | hasimg | imgurl 

Как вы можете видеть «hasimg» и «imgurl», как правило, если пользователь не имеет изображения, hasimg будет установлено в 0 и imgurl установлено равным нулю.

С другой стороны, если у пользователя есть назначенное изображение, то hasimg установлено на 1 и imgurl будет содержать ссылку.

  • Как я могу отобразить те, которые имеют изображения (hasimg набор в 1) с <img src="imgurl HTML-теги?

  • Как можно отобразить те, которые этого не делают есть изображения (hasimg набор на 0), без <img src?

Я хочу составить список, отображающий пользователей с изображениями и пользователей, у которых нет изображения.

Вот код им с помощью эхо из строки данных по строкам

<?php 

     $sql = "SELECT * FROM profile ORDER BY user DSC"; 
     $query = mysql_query($sql)or die(mysql_error()); 

       $rows = array(); 
     while($row = mysql_fetch_array($query)){ 
      $rows[] = $row; 
      echo "User:$row[user]<br>Image:$row[hasimg]\n"; 
     } 

    ?> 

Р соединение/S MySQL установлена.

+0

я попробовал PHP в то время как эхо вне данных из каждой строки. но я не уверен, как позволить php различать, у кого есть img, а какой нет при использовании WHILE. – sm21guy

+0

Пожалуйста, проверьте мой пример, указанный в ответе. –

+0

Правильный [пример кода] (http://sscce.org/) (здесь, операторы SQL) более полезен, чем любая специальная схема и примерный формат данных. Пожалуйста, используйте 'CREATE TABLE' и' INSERT ... VALUES' для образцов. Желаемые результаты не обязательно должны быть представлены в качестве примера кода, так как результаты - это результат кода, а не самого кода. – outis

ответ

1

Если вы хотите сохранить свой макет, вы можете использовать изображение по умолчанию.

if($hasimg == 0) 
    $imgurl = "default.jpg"; 

echo '<img src="' . $imgurl . '">'; 

EDIT:

Ваш PHP-код может быть.

$sql = "SELECT * FROM profile ORDER BY user DSC"; 
$result = mysql_query($sql)or die(mysql_error()); 


echo "<table border='1'> 
<tr> 
<th>Name</th> 
<th>Image</th> 
</tr>"; 

while($row = mysql_fetch_array($result)) 
    { 
    $imgurl = $row['imgurl']; 
    if($row['hasimg'] == 0) 
     $imgurl = "default.jpg"; 

     echo "<tr>"; 
     echo "<td>" . $row['user'] . "</td>"; 
     echo "<td><img src=\"" .$imgurl . "'\" /></td>"; 
     echo "</tr>"; 
    } 
echo "</table>"; 
+0

о, я вижу, спасибо – sm21guy

0

Два решения:

  1. Установить путь по умолчанию для IMG файла JPG в качестве содержимого поля по умолчанию в поле imgurl в вашей базе данных.

  2. результатов запроса путем добавления фильтра этого кода сразу после $rows[] = $row;:

    If ($row['hasimg'] == 0) $row['imgurl'] = 'default.jpg'; 
    
Смежные вопросы