<MyRusakov.ru />

Фреймворк Yii 2.0 с нуля. Пример создания сайта

Фреймворк Yii 2.0 с нуля. Пример создания сайта

Видеокурс "Фреймворк Yii 2.0 с нуля. Пример создания сайта" обучит Вас созданию профессиональных сайтов с использованием фреймворка Yii. В курсе есть 2 раздела: теоретический и практический. В теоретическом разделе будут разобраны возможности фреймворка Yii с примерами их использования, а в практической части будет создан сайт Blog.MyRusakov.ru с помощью полученных знаний из теоретического раздела.

Так же почти ко всем урокам идут упражнения для закрепления материала из урока на практике.

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

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

Подписавшись по 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

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