Forum Webscript.Ru

Программирование => PHP => Тема начата: Художник от 27 Октября 2003, 15:28:30

Название: Желающим помочь... просмотреть исходник
Отправлено: Художник от 27 Октября 2003, 15:28:30
function out_cat_text_list()
 {
  if (isset($_REQUEST[\'cat\'])) $cat=strval($_REQUEST[\'cat\']); else $cat=0;
  if (isset($_REQUEST[\'id\'])) $id=intval($_REQUEST[\'id\']); else $id=0;
 $this->sql_query="SELECT t_id, t_cat, t_name, t_lead FROM tbl_text WHERE t_cat=\'$cat\' ORDER BY t_id DESC LIMIT $id,10";
 $this->sql_execute();
 if($this->sql_err) return(11);

 while(list($id, $cat, $name, $lead)=mysql_fetch_row($this->sql_res))
  {
 $this->out_cat_text_list.="
$name
$lead

";
  }
 return(0);
 }

обратите внимание на выделенною строку...

мне нужно прописать строчку(условие) при которой переменная $name(строка) приобретала пустое место

тем самым ниже перечисленный оператор (while...) не исполнялся
весь вопрос в том как это правильно прописать...(не хватает базового знания в PHP)

Зарание благодарен за содействие...
Название: Желающим помочь... просмотреть исходник
Отправлено: tserbis от 27 Октября 2003, 15:39:18
mysql_num_rows ?
Название: Желающим помочь... просмотреть исходник
Отправлено: Художник от 27 Октября 2003, 15:56:10
tserbis

Извени но я тебя не совсем понял... не мог бы ты более подробнее переспросить ?
Название: Желающим помочь... просмотреть исходник
Отправлено: tserbis от 27 Октября 2003, 16:00:47
Я понял так, что ты не хочешь делать while, если запрос не вернул ни одной записи...
Если я правильно понял, - тогда проверить кол-во записей можно приведённой мной ф-ей.
Название: Желающим помочь... просмотреть исходник
Отправлено: tserbis от 27 Октября 2003, 16:18:14
Так, кажется я не то что-то...
Название: Желающим помочь... просмотреть исходник
Отправлено: Художник от 27 Октября 2003, 16:32:53
Нет, тут чуть по сложнее :) для меня по крайнее мере

Мне нужно выводить из таблицы записи которые имеют значение в поле t_name...

а работа оператора while меня в полне устраивает !
Название: Желающим помочь... просмотреть исходник
Отправлено: tserbis от 27 Октября 2003, 16:33:08
Художник, наверное, нужно уточнить, в чём у тебя проблема, потому что проверка, у которой я писал, - не нужна.
[написано до предыдущего поста]
Название: Желающим помочь... просмотреть исходник
Отправлено: tserbis от 27 Октября 2003, 16:40:35
Блин, дошло... Тебе внутри while нужно делать проверку $name, но ты не знаешь как?
Название: Желающим помочь... просмотреть исходник
Отправлено: tserbis от 27 Октября 2003, 16:44:40
Пиши, например,

if ( $name != \'\' ) {
}
Название: Желающим помочь... просмотреть исходник
Отправлено: Художник от 27 Октября 2003, 17:44:02
Я седал все как ты сказал в писал эту строчку
вот так:

if($name!=\'\') {}
while(list($id, $cat, $name, $lead)=mysql_fetch_row($this->sql_res))

сделал переменную глобальной(от безисходности)

но он все hfdyj выводит мне все записи из поля t_name :(

или может я не правильно тебя понял ?
Название: Желающим помочь... просмотреть исходник
Отправлено: tserbis от 27 Октября 2003, 17:48:23
while(list($id, $cat, $name, $lead)=mysql_fetch_row($this->sql_res))
{
if ( $name != \'\' ) {
$this->out_cat_text_list.="
$name
$lead

";
}
}
Название: Желающим помочь... просмотреть исходник
Отправлено: FreeSpace от 28 Октября 2003, 00:24:02
удобнее будет написать просто

while(list($id, $cat, $name, $lead)=mysql_fetch_row($this->sql_res))
{
    if ($name == \'\') continue;
    $this->out_cat_text_list.="
$name
$lead

";
}
Название: Желающим помочь... просмотреть исходник
Отправлено: Художник от 28 Октября 2003, 09:12:14
tserbis FreeSpace

Спасибо огромное ! проблемма решена :)