Отново проблем с аватар

draconian

Registered
Здравейте... Имам една чат система. Искам да се извеждат аватарите на потребителите.
Ето какво имам:
Имам таблица CHATBOX съответно тя съдържа: id, avtor, date, message, rank
Имам и таблица USERS съдържание: id, username, password, email, viewmail, skype, avatar, name, city, gender, rank, message, date, ip, status, views, uploads

Искам когато някой напише коментар да извлича аватара но не да го записва във таблицата CHATBOX а да го взема директно от USERS защото ако го записва във CHATBOX и ако дадения потребител си смени аватара във чата ще показва стария му аватар на по старите постове ..

Ето и кода на chatbox.php
<?php
session_start();
ob_start();
include "functions.php";
$username = $logged['username'];
capital("Чат стая!");
?>

<div id="R_menu">
<div class="H_menu" style="line-height: 29px;">Последно добавени</div>
<div class="menu">
<div class="value">
<?
session_start();
putenv("TZ=Europe/Sofia");
if(!$logged['username']) {
echo"<div class='note'><center>Само регистрираните потребители могат да пишат коментари ..</center></div><br />";
}
else {
?>
<form method="post" name="inputform"><div style="border: 1px solid #c0c0c0; padding: 4px;">
<div style='width:98%'>
<input type='image' src='emoticons/emote.png' class='bbcodes' onclick="return overlay(this, 'bbcode_smileys_list_message', 'bottomleft');" title='Smileys' />
<div id='bbcode_smileys_list_message' class='tbl1' style='display:none;-moz-border-radius:0px;border:1px solid #c0c0c0;position:absolute;overflow:auto;width:auto;height:auto;' onclick="overlayclose('bbcode_smileys_list_message');">
<img src='emoticons/smile.gif' onclick="insertText('message', ':)', 'inputform');" />
<img src='emoticons/tong.gif' onclick="insertText('message', ':P', 'inputform');" />
<img src='emoticons/bigsmile.gif' onclick="insertText('message', ':D', 'inputform');" />
<img src='emoticons/kiss.gif' onclick="insertText('message', ':*', 'inputform');" />

<img src='emoticons/crying.gif' onclick="insertText('message', ';(', 'inputform');" />
<img src='emoticons/wink.gif' onclick="insertText('message', ';)', 'inputform');" />
<img src='emoticons/hi.gif' onclick="insertText('message', '(wave)', 'inputform');" />
<img src='emoticons/nod.gif' onclick="insertText('message', '(nod)', 'inputform');" />
<img src='emoticons/finger.gif' onclick="insertText('message', '(finger)', 'inputform');" />
<img src='emoticons/mooning.gif' onclick="insertText('message', '(mooning)', 'inputform');" />
<img src='emoticons/wondering.gif' onclick="insertText('message', '(wondering)', 'inputform');" />
<img src='emoticons/yes.gif' onclick="insertText('message', '(yes)', 'inputform');" />
<img src='emoticons/no.gif' onclick="insertText('message', '(no)', 'inputform');" />
<img src='emoticons/party.gif' onclick="insertText('message', '(party)', 'inputform');" />
</div>
<input type='image' src='templates/img/bbimg/b.png' class='bbcodes' onclick="addText('message','','','inputform');return false;" title='Удебелява избрания текст' />
<input type='image' src='templates/img/bbimg/i.png' class='bbcodes' onclick="addText('message','','','inputform');return false;" title='Прави текста наклонен' />
<input type='image' src='templates/img/bbimg/u.png' class='bbcodes' onclick="addText('message','','','inputform');return false;" title='Прави избрания текст подчертан' />
<input type='image' src='templates/img/bbimg/url.png' class='bbcodes' onclick="addText('message','','','inputform');return false;" title='Прави URL кликване' />
<input type='image' src='templates/img/bbimg/img.png' class='bbcodes' onclick="addText('message','
','inputform');return false;" title='Показва изображение от определена страница' />

<a onclick="document.getElementById('chat').value=entobg(document.getElementById('chat').value);">
<img style="float: right; margin-top: 7px;" src="templates/img/icons/bg.png" title="Смени езика на БГ" /></a>
</div><hr style="border: 1px solid #d7d7d7;" /><br/>
<textarea style="width: 100%; height: 135px; margin-top: -15px; border: 1;" id="chat" name="message"></textarea>
</div><input class="button" type="submit" name="chat" value=" Публикувай " />
<br /><br />
</form>
<?php
}
$query = mysql_query("SELECT * FROM users WHERE username='$username'") or die (mysql_error());
$row = mysql_fetch_assoc($query);
if(isset($_POST['chat'])){
$message = addslashes(htmlspecialchars($_POST['message']));
$message = preg_replace('/(\r\n|\n|\r)/','<br />',$message);
$message=preg_replace("/\[b\](.+?)\[\/b\]/s", '<b>$1</b>',$message);
$message=preg_replace("/\[i\](.+?)\[\/i\]/s", '<i>$1</i>',$message);
$message=preg_replace("/\[u\](.+?)\[\/u\]/s", '<u>$1</u>',$message);
$message=preg_replace("/\[s\](.+?)\[\/s\]/s", '<s>$1</s>',$message);
$message=preg_replace("/\[m\](.+?)\[\/m\]/s", '<marquee onmouseout="this.start()" onmouseover="this.stop()" loop="-1" scrollamount="3" width="30%">$1</marquee>',$message);
$message=preg_replace("/\[quote\](.+?)\[\/quote\]/s", '<div class="quotemain">$1</div>',$message);
$message=preg_replace("/\[quote\=(.+?)](.+?)\[\/quote\]/s", '<div class="Htable" style="width: 630px; height: 20px;"><b>$1</b> каза:</div><div style="margin-top: -5px; border-top: none; -moz-border-radius-topleft:5px; -moz-border-radius-topright:5px;" class="form">$2</div>',$message);
$message=preg_replace("/\[url\](.+?)\[\/url\]/s", '<a href="$1" target="_blank" class="url">$1</a>',$message);
$message=preg_replace("/\[url\=(.+?)\](.+?)\[\/url\]/s", '<a href="$1" target="_blank" class="url">$2</a>',$message);
$message=preg_replace("/\[img\](.+?)\[\/img\]/s", '<img src="$1" />',$message);
$message=preg_replace("/\[img\=(.+?)](.+?)\[\/img\]/s", '<a href="$1" target="_blank">$2 - Изображение</a>',$message);
$message=preg_replace("/\[color\=(.+?)\](.+?)\[\/color\]/s", '<span style="color:$1">$2</span>',$message);
$message=preg_replace("/\[size\=(.+?)\](.+?)\[\/size\]/s", '<span style="font-size:$1">$2</span>',$message);
$message=preg_replace("/\[code\](.+?)\[\/code\]/s", '<div style="-moz-border-radius: 5px;-webkit-border-radius: 5px;background: #FFF; padding: 5px; border: 1px solid #DDD; color: teal;"><code>$1</code></div>', $message);
$message = str_replace(":)",'<img src="emoticons/smile.gif" style="margin-left: 2px;margin-right: 2px">',$message);
$message = str_replace(":P",'<img src="emoticons/tong.gif" style="margin-left: 2px;margin-right: 2px">',$message);
$message = str_replace(":D",'<img src="emoticons/bigsmile.gif" style="margin-left: 2px;margin-right: 2px">',$message);
$message = str_replace(":*",'<img src="emoticons/kiss.gif" style="margin-left: 2px;margin-right: 2px">',$message);
$message = str_replace(";(",'<img src="emoticons/crying.gif" style="margin-left: 2px;margin-right: 2px">',$message);
$message = str_replace(";)",'<img src="emoticons/wink.gif" style="margin-left: 2px;margin-right: 2px">',$message);
$message = str_replace("(wave)",'<img src="emoticons/hi.gif" style="margin-left: 2px;margin-right: 2px">',$message);
$message = str_replace("(nod)",'<img src="emoticons/nod.gif" style="margin-left: 2px;margin-right: 2px">',$message);
$message = str_replace("(finger)",'<img src="emoticons/finger.gif" style="margin-left: 2px;margin-right: 2px">',$message);
$message = str_replace("(mooning)",'<img src="emoticons/mooning.gif" style="margin-left: 2px;margin-right: 2px">',$message);
$message = str_replace("(wondering)",'<img src="emoticons/wondering.gif" style="margin-left: 2px;margin-right: 2px">',$message);
$message = str_replace("(yes)",'<img src="emoticons/yes.gif" style="margin-left: 2px;margin-right: 2px">',$message);
$message = str_replace("(no)",'<img src="emoticons/no.gif" style="margin-left: 2px;margin-right: 2px">',$message);
$message = str_replace("(party)",'<img src="emoticons/party.gif" style="margin-left: 2px;margin-right: 2px">',$message);
$date = date("d.m.Y, H:i");
$rank = $row['rank'];
if($message == NULL){
header("Location: ".$_SERVER['HTTP_REFERER']."");
}
else {
$add = mysql_query("INSERT INTO `chatbox` (avtor,message,date) VALUES ('$username','$message','$date')");
header("Location: chatbox.php");
}
}
$tbl_name="chatbox";
$adjacents = 4;
$query = "SELECT COUNT(*) as num FROM $tbl_name";
$total_pages = mysql_fetch_array(mysql_query($query));
$total_pages = $total_pages[num];
$targetpage = "chatbox.php";
$limit = 10;
$page = $_GET['p'];
if($page)
$start = ($page - 1) * $limit;
else
$start = 0;

$rl = mysql_query('SELECT COUNT(*) as ctn FROM `chatbox`');
$ruw = mysql_fetch_assoc($rl);
$chatbox = $ruw['ctn'];
if($chatbox == 0){
echo"<div class='error'>Все още нямаме добавени коментари ..</div>";
}
$sel = mysql_query("SELECT * FROM $tbl_name ORDER by id DESC LIMIT $start, $limit") or die (mysql_error());
$result = mysql_query("SELECT * FROM users WHERE username = '$username'");
$raw = mysql_fetch_assoc($result);


while($row = mysql_fetch_array($sel)){
echo"";
if($raw['rank']==4 || $raw['rank'] == 3){
echo "<a href='del_chat.php?id=$com[id]'><img src='templates/img/icons/x.gif' title='Изтрий коментара' /></a>";
}
echo"<div>
<div class='avatar_comm' style='float:left;'><a href='profile.php?user=$row[avtor]'><img src='?' alt='' title='$row[avtor]'></a></div>
<div class='comment'>
<div class='h'><span>От:</span> <a href='profile.php?user=$row[avtor]'>$row[avtor]</a> <span>Добавен на: $row[date]</span> <br></div>
$row[message]
</div>
</div><br>";

}
?>
</div>
</div>
</div>
<?
footer();
?>

Там където е въпросителния знак, пробвах със $row[avatar] Но не излиза нищо. Моля помогнете спешно е !!! :cry:
 
След
Код:
while($row = mysql_fetch_array($sel)){

Поставяш

Код:
$sel_avatar = mysql_query("SELECT avatar FROM users WHERE username='$row[avtor]'");
$arr_avatar = mysql_fetch_array($sel_avatar);
$avatar = $arr_avatar[avatar];

и където искаш да изведеш аватара(там дето ти е ?)
пишеш
Код:
$avatar

П.П. Това не е най-оптимизирания вариант ама върши работа.
 
Много благодаря братле !!! Ти си уникален. Толкова го мислих и си бих главата и какво ли не правих :o ейй.. че съм..

Имаш + от мене :) :?:
 

Back
Горе