Заранее спасибо!
У меня есть простой блог mysql и php, который я построил на основе учебника, который нашел в Интернете.То, что я хотел бы сделать, но не знаю, как это сделать, это:
Я хотел бы, чтобы изображение (аватар) отображалось с каждым комментарием к каждому сообщению.Выбранная картинка будет основана на имени в области «Опубликовано»: комментария.Так, например: скажем, администратор оставляет комментарий в ветке.Мое имя автоматически вводится через переменную $ _SESSION, поэтому мне не нужно беспокоиться о том, чтобы вводить это каждый раз.Когда комментарий отображается на странице ветки блога, он показывает «Комментировано от: Admin».Это имя хранится в БД и извлекается с помощью оператора php echo.
Итак, я хочу, чтобы этот код аватара был в состоянии: 1) посмотреть на область, в которой Commented on By: текст равен 2) прочитать текст 3) увидеть, что на нем написано Admin, и отобразить admin.PNG изображение рядом с ним.Если он видит что-то кроме Admin в области Commented on By:, то он будет отображать что-то вроде guest.png
Вот фрагмент кода, который я нашел в моем стековом потоке и поиске в Google.Это работает, но он получает гостевое изображение 6 раз, затем фактическое изображение admin.png, а затем гостевое изображение еще 3 раза.И это отображается таким образом на КАЖДОМ комментарии в КАЖДОМ потоке!И когда я добавляю новую ветку и новый комментарий в эту ветку, он снова добавляет гостевое изображение в конце нескольких изображений, отображаемых в каждом комментарии.Неправильно ли я его настроил?
<?
$sql = "SELECT comment_user FROM comments";
$result = mysql_query($sql) or die(mysql_error());
if (mysql_num_rows($result) != 0) {
$counter = $starting + 1;
$pathImg = "images/";
while ($row = mysql_fetch_array($result)) {
//calculate url image
$pathFile = $pathImg . $row['comment_user'] . ".png";
if (!file_exists($pathFile)) {
$pathFile = $pathImg . "guest.png";
}
?>
<img src="<?=$pathFile?>" alt="<?=$row['comment_user']?>">
</p>
<?
$counter++;
}
}
?>
Это отображается как (изображение гостя) (изображение гостя) (изображение гостя) (изображение гостя) (изображение гостя) (изображение гостя) (изображение гостя) (изображение администратора) (гостевое изображение)Изображение) (Изображение гостя) (Изображение гостя).
Любая помощь в подбрасывании чего-либо будет отличной!Попытка сделать это простым для!
РЕДАКТИРОВАТЬ:
Так отображаются комментарии, а также код из ответа FlyingGuy.функции поиска для отображения и добавления комментариев:
function get_comments($pid){
$pid = (int)$pid;
$sql = "SELECT `comment_body` AS `body`, `comment_user` AS `user`, DATE_FORMAT(`comment_date`, '%m/%d/%Y') AS`date` FROM `comments` WHERE `post_id` = {$pid}";
$comments = mysql_query($sql);
$return = array();
while (($row = mysql_fetch_assoc($comments)) !== false){
$return[] = $row;
}
return $return;
}
// adds a comment
function add_comment($pid, $user, $body){
if (valid_pid($pid) === false){
return false;
}
$pid = (int)$pid;
$user = mysql_real_escape_string(htmlentities($user));
$body = mysql_real_escape_string(nl2br(htmlentities($body)));
mysql_query("INSERT INTO `comments` (`post_id`, `comment_user`, `comment_body`, `comment_date`) VALUES ({$pid}, '{$user}', '{$body}', NOW())");
return true;
}
?>