Поздравляю всех мастеров с Новым Годом!
Ну и по теме дальше. Понадобилось мне сделать вывод случайного фото из анкеты с переходом в нее и чтоб был ник под ним. Нашел тут код один. Чуть переделал. Все работает. Вот код:
$c = mysql_result(mysql_query("SELECT COUNT(*) FROM (SELECT DISTINCT user_id FROM cms_album_files) a"), 0);
$rand = mt_rand(0, ($c - 1));
$row = mysql_fetch_assoc(mysql_query("SELECT * FROM cms_album_files GROUP BY user_id ORDER BY user_id DESC LIMIT " . ($c > 1 ? $rand : 0) . ", 1"));
$ob = mysql_fetch_assoc(mysql_query("select `id`, `name` from `users` where `id`='".$row['user_id']."';"));
echo '<div class="list1" style="text-align:center"><a href="'.$home.'/users/profile.php?user='.$row['user_id'].'"><img src="'.$home.'/files/users/photo/'.$row['user_id'].'_small.jpg" alt="'.$ob['name'].'"/></a><br/><b>'.$ob['name'].'</b></div>';
Но вот проблема. Если у пользователя нет фото в анкете то вместо фото появляется просто ссылка с ником на анкету, что некрасиво. Как сделать чтобы при отсутствии фото у юзера появлялась просто какая нибудь заданная картинка на вывод? А не пустой квадрат с ссылкой
быдло код у тебя
ORDER BY RAND() LIMIT 0,9
blackvj, Это не мой код я ж сказал. Вопрос то не по коду. А скорее как сделать условие чтобы если нет фото то выводилась картинка
~РайСкиЙ~, 1. Разницы нет, твой код или чужой. Факт что быдлокод
2. Картинки нет, только в одном случае если их вовсе нет у пользователя, в остальных случаях оно будет, правда с этим быдло кодом явно нахимичили, поэтотому и косяк с пустым фото
$c > 1 ? $rand : 0
Не может быть запроса с Limit 0, это абсурд
blackvj, Так я про что и пишу. Если фото нет совсем у пользователя то как сделать чтобы выводилась определенная. Например "Нет фото". Этот код тут не при чем. Перебор в коде идет по пользователям. А не по файлам в папке. Поэтому нужно ставить условие если нет фото то вывод идет простой картинки.
blackvj,
http://wapbirga.ru/1/t5.php
пообновляй страницу и поймешь о чем я
if($row['user_id'] == FULL)
нет картинки
else
есть
Я так понял если нет фото пользователя в альбоме, значит и записи в базе альбома про данного пользователя не будет.
Раз уж речь пошла о случайном фото, то выложу еще один код "Случайное фото из альбома в анкету". Код в profile.php
$alb77 = mysql_query("SELECT `id`,`user_id`,`tmb_name`, `access` FROM `cms_album_files` WHERE `user_id` =' " . $user['id'] . " ' ORDER BY RAND() LIMIT 0,3 ");
while($alb9 = mysql_fetch_array($alb77)){
if ($alb9['access'] == 4 ) {
echo '<img src="/files/users/album/'.$alb9['user_id'].'/'.$alb9['tmb_name'].'"/> ';
} elseif ($alb9['access'] == 2) {
echo '<img src="' . $set['homeurl'] . '/images/stop.gif" width="50" height="50"/>';
}
}
Вроде тут недавно кто то искал. Выводит три фото из альбома в анкете. Если фото под паролем то выводится картинка просто
# blackvj (01.01.2015 / 12:13)
if($row['user_id'] == FULL)
нет картинки
else
есть
Я так понял если нет фото пользователя в альбоме, значит и записи в базе альбома про данного пользователя не будет.
По идее да. Только видимо через elseif надо делать. Тогда два условия надо. Пробовал через else как то делать тупо ошибку выбивало