Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.02.2011, 20:38   #11
Abuhamed
Форумчанин
 
Аватар для Abuhamed
 
Регистрация: 27.01.2010
Сообщений: 330
По умолчанию

Andkorol
Пробовал, у меня стоит такая система сообщений.
Цитата:
Это вам пример того, как не нужно делать...
Хочешь сказать что лучше просто везде вставлять mysql_result($name,$rows,$fields) чем просто сохранить их в переменную и потом расставить ? Или как?
Abuhamed вне форума Ответить с цитированием
Старый 06.02.2011, 20:50   #12
Andruhin
Пользователь
 
Регистрация: 16.10.2010
Сообщений: 48
По умолчанию

ну начнем с малого задумка кода,что в зависимости,если письма с readm==1,то есть прочитанные,значит выводит одну картинку,что нет сообщений,а если есть непрочитанные письма,значит выводит другую иконку и сообщение

$zap=mysql_query("SELECT * FROM t_messages WHERE id='$id'",$db);
$ros = mysql_fetch_assoc($zap)

if ($ros['readm'] == 1)
{
echo "|<a href='mail.php'><img src='/images/nomail.gif' alt='новых писем нет' />новых писем нет</a>|<a href='exit.php'>Выход</a><br><br>";
}
else
{
echo "
| <a href='mail.php'><img src='/images/activemail.gif' alt='новое письмо' />новое письмо</a> |<a href='exit.php'>Выход</a><br><br> ";
}
выводит такую ошибку: syntax error, unexpected T_IF on line 53
Andruhin вне форума Ответить с цитированием
Старый 06.02.2011, 21:01   #13
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Цитата:
Сообщение от Abuhamed Посмотреть сообщение
AndkorolХочешь сказать что лучше просто везде вставлять mysql_result($name,$rows,$fields) чем просто сохранить их в переменную и потом расставить ? Или как?
Хочу сказать,что для этих целей лучше воспользоваться mysql_fetch_assoc() в цикле while().
Эта функция возвращает ассоциативный массив из элементов вида:
'field_name' => 'field_value'

Преимущество во-первых в читабельности и краткости:
Цитата:
доступ к элементу id, например:
mysql_result($messages,$c,0);
или
$row['id']
во-вторых - что будет,если разработчик захочет добавить ещё несколько полей в середину таблицы,например...?
При вашем способе - нужно изменять в коде все индексы доступа в mysql_result()
Используя mysql_fetch_assoc() - 'subject' так и останется 'subject'(например), неcмотря на изменения в количестве столбцов.

Ну и ещё есть некоторые нестыковки и избыточные элементы в вашем коде - например сам вывод ссылок...
Andkorol вне форума Ответить с цитированием
Старый 06.02.2011, 21:04   #14
Andruhin
Пользователь
 
Регистрация: 16.10.2010
Сообщений: 48
По умолчанию

Я заменил на mysql_fetch_array выводит ту же ошибку
а если с while,то вот такую ошибку выводит:
syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING
Andruhin вне форума Ответить с цитированием
Старый 06.02.2011, 21:23   #15
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

1.Форматируйте ваш код при создании сообщения - есть же кнопки для этого...
2.Выкладывайте полный код файла - а не кусками.
3.КАК я могу догадаться что у вас на 53-й линии...???:
Цитата:
выводит такую ошибку: syntax error, unexpected T_IF on line 53
Хотя вот вижу что нет ; после $ros = mysql_fetch_assoc($zap) - вероятно из-за этого и ругается.
Andkorol вне форума Ответить с цитированием
Старый 06.02.2011, 21:58   #16
Andruhin
Пользователь
 
Регистрация: 16.10.2010
Сообщений: 48
По умолчанию

да из-за этого.
А вот тут пролблема,не работает задумка моя:
Код:
$zap=mysql_query("SELECT * FROM  `t_messages` WHERE `poluchatel`='$login'",$db);
$ros = mysql_fetch_assoc($zap);

  	if ($ros['readm'] == 0)
  	{
  			echo "<a href='mail.php'><img src='images/activemail.gif' alt='новое письмо' /> новое письмо </a>"."</br>";
  		}
  		else
  		{
  			echo "<a href='mail.php'><img src='images/nomail.gif' alt='новых писем нет' /> новых писем нет </a>"."</br>";
  			}

выводит в любом случаи только картинку и сообщение,что есть "новое письмо",вне зависимости есть оно или нет

Последний раз редактировалось Andruhin; 06.02.2011 в 22:11.
Andruhin вне форума Ответить с цитированием
Старый 06.02.2011, 22:14   #17
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Поставьте после запроса
Цитата:
echo mysql_num_rows($zap);
и посмотрите, что выведет...
Andkorol вне форума Ответить с цитированием
Старый 06.02.2011, 22:16   #18
Andruhin
Пользователь
 
Регистрация: 16.10.2010
Сообщений: 48
По умолчанию

выводит 0,блиин а почему так
Andruhin вне форума Ответить с цитированием
Старый 06.02.2011, 22:20   #19
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Вероятно ошибка в запросе.
Добавьте после запроса
Цитата:
echo mysql_error();
Andkorol вне форума Ответить с цитированием
Старый 06.02.2011, 22:24   #20
Andruhin
Пользователь
 
Регистрация: 16.10.2010
Сообщений: 48
По умолчанию

удевительно но ошибку не выводит раньше стояло
Код:
or die('Error: ' . mysql_error())
все таки сделал
Код:
echo mysql_error();
,хотя это одно и то же,но все равно ошибку не выводит!
Andruhin вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не удаляется почтовый ящик в программе The Bat Kapitann Операционные системы общие вопросы 2 18.05.2017 12:02
Как создать электронный почтовый ящик используя HTML - для своего сайта. Dimon18 HTML и CSS 2 31.01.2011 12:25
Внутренняя ошибка makarov.y Общие вопросы Delphi 3 16.12.2010 20:32
Запись текста в текст бок(edit1.text) и отправка его на почтовый ящик Memfis1992 Общие вопросы Delphi 2 16.06.2010 13:10
C++: Нужна функция, которая отсылает электронное письмо на почтовый ящик kolchakA Фриланс 5 08.12.2009 00:45