<MyRusakov.ru />

Вёрстка сайта с нуля

Вёрстка сайта с нуля

Это уникальная информация по созданию страниц любой сложности. Вы узнаете всё, что нужно по HTML и CSS, а также увидите множество примеров по вёрстке страниц. А также почти к каждому уроку идут упражнения для закрепления материала, поэтому в отличном результате можете быть уверены! Пройдя данный курс, Вы сможете верстать страницы с любым по сложности дизайном. Помимо курса, Вы получите Бонус, который расскажет, как заработать на вёрстке сайтов.

Весь курс соткан из практических примеров реальной вёрстки. А также почти к каждому уроку идут упражнения для закрепления материала, поэтому в отличном результате можете быть уверены!

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Форум сайта MyRusakov.ru

Диалоги
09.03.2013 21:45:36 Диалоги Сообщение #1
ilyadenisovid

ilyadenisovid

Мастер

Мастер

Дата регистрации:
28.01.2013 18:32:29

Сообщений: 213

Всем привет!Мне нужно сделать, чтобы принажатии на личное сообщение(как в вк), выводися диалог между двумя пользователями.Например, по $_GET:
<?php
$id1 = getIDOnLogin($_SESSION["login"]);
$id2 = getIDOnLogin($from["login"]);
echo "<a href = "dial.php?from=".$id1."&to=".$id2."'>Диалог</a>";
?>
Проблема в том, что пользователь может выступать и в роли отправителя и в роли получателя У меня пока есть только SQL запрос
function getAllDial($from, $to) {
global $mysqli;
connectDB();
$result_set = $mysqli->query("SELECT * FROM `messages` WHERE (`from` = '$from' AND `to` = '$to') OR (`from` = '$to' AND `to` = '$from') ORDER by `date` DESC";
closeDB();
return resultToArray($result_set);
}


А вот и сам код

$messages = getAllDial(getIDOnLogin($_SESSION["login"]), getIDOnLogin($from["login"]);
for($i = 0; $i < count($messages); $i++) {
$to = getUserOnID($messages[$i]["to"]);
$avatar = getAvatar($_SESSION["login"]);
$avatar_to = getAvatar($to["login"]);
if($avatar == "" $avatar = "default.jpeg";
if($avatar_to == "" $avatar_to = "default.jpeg";
echo "<table><tr><td style = 'border: 2px dashed red;'><img src = 'avatars/$avatar' height = '60px' alt = 'Аватар' /></td><td><div id = 'message_block'><table style = 'width: 100%;'>";
echo "<tr><td>К <span id = 'from'>".$to["login"]."</span></td>";
echo "<td align = 'right'><span id = 'date_mes'>".date("d-m-y H:i:s",$messages[$i]["date"])."</span></td></tr>";
echo "<tr><td><span id = 'text_mes'>".$messages[$i]["message"]."</span></td></tr>";
echo "<tr><td><span id = 'a_mes'><a href = 'smes.php?id=".$to["id"]."' title = 'Написать'>Написать</a></span></td></tr>";
echo "</table></div></td><td style = 'border: 2px dashed red;'><img src = 'avatars/$avatar_to' height = '60px' alt = 'Аватар' /></td></tr></table>";
Профиль Ответить
10.03.2013 11:29:45 Диалоги Сообщение #2
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Выводите, что пришло из базы с помощью цикла.
Профиль Ответить
10.03.2013 16:15:06 Диалоги Сообщение #3
ilyadenisovid

ilyadenisovid

Мастер

Мастер

Дата регистрации:
28.01.2013 18:32:29

Сообщений: 213

Михаил, вот я попробовал, сообщения выводятся, но относительнотого пользователя с чьей страницы ты перешел(если со страницы одного, то он и выводится как from), и avatar тоже. Помогите, пожалуйста код:

<?php
$messages = getAllDial($_GET["to"], $_GET["from"]);
for($i = 0; $i < count($messages); $i++) {
$to = getUserOnID($_GET["to"]);
$from = getUserOnID($_GET["from"]);
$avatar = getAvatar($from["login"]);
$avatar_to = getAvatar($to["login"]);
if($avatar == "" $avatar = "default.jpeg";
if($avatar_to == "" $avatar_to = "default.jpeg";
echo "<table><tr><td style = 'border: 2px dashed red;'><img src = 'avatars/$avatar' height = '60px' alt = 'Аватар' /></td><td><div id = 'message_block'><table style = 'width: 100%;'>";
echo "<tr><td>От <span id = 'from'>".$from["login"]."</span> к <span id = 'from'>".$to["login"]."</span></td>";
echo "<td align = 'right'><span id = 'date_mes'>".date("d-m-y H:i:s",$messages[$i]["date"])."</span></td></tr>";
echo "<tr><td><span id = 'text_mes'>".$messages[$i]["message"]."</span></td></tr>";
echo "</table></div></td><td style = 'border: 2px dashed red;'><img src = 'avatars/$avatar_to' height = '60px' alt = 'Аватар' /></td></tr></table>";
}
?>
Профиль Ответить
10.03.2013 20:55:15 Диалоги Сообщение #4
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Проверяйте значения переменных: http://myrusakov.ru/php-finderror.html
Когда увидите переменные с неправильными значениями, там и ищите ошибку.
Профиль Ответить
06.06.2013 20:38:52 Диалоги Сообщение #5
shamil

shamil

Продвинутый

Продвинутый

Дата регистрации:
17.03.2013 00:07:27

Сообщений: 51

здравствуйте,как можно включить аватары пользователей на странице *Все зарегестрированные пользователи* ?
Отображается только собственный во всех полях.что можно изменить в этом коде?

<table width='420' cellspacing='1' cellpadding='1' border='2'
style='table-layout: fixed; word-wrap: break-word;'>
<tr>
<td bgcolor="#ECFAD7" align="center">Логин</td>
<td bgcolor="#ECFAD7" align="center">Отправить сообщение</td>
</tr>
<?php
$users = getAllUsers();
for ($i = 0; $i < count($users); $i++) {

$avatar = getAvatar($_SESSION["login"]);
$avatar_id = getAvatar($id["login"]);
if($avatar == "" $avatar = "98704332.jpg";
if($avatar_id == "" $avatar_id = "98704332.jpg";


echo "<tr>";
echo "<td width='70' bgcolor='#ECFAD7' align='center'><b>";
echo $users[$i]["login"];
echo "<br>";
echo "<img src = 'avatars/$avatar' height = '60px' alt = 'Аватар'>";
echo "</b></td>";
echo "<td align='center'>";
echo "<a href='smessage.php?to=".$users[$i]["id"]."' title='Отправить сообщение'>Отправить сообщение</a>";
echo "</td>";
echo "</tr>";
}
?>
</table>
Профиль Ответить
06.06.2013 23:34:51 Диалоги Сообщение #6
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

echo "<img src = 'avatars/$avatar' height = '60px' alt = 'Аватар'>"; - вот в этой строчке выводится один и тот же аватар. Если не понимаете, что здесь нужно исправить, то: http://myrusakov.ru/php-how-study.html
Профиль Ответить
07.06.2013 21:55:24 Диалоги Сообщение #7
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Я написал всё в сообщении выше. Проще задачи придумать трудно, если Вы её не в состоянии решить, то тут надо не мне примеры показывать, а Вам основы учить.
Профиль Ответить