Перейти к содержимому

Сервис обмена электронных валют

Партнерская программа Kredov

Удаление строк с нулевым значением

#1 kolesgan

kolesgan
  • Пользователь
  • 73 сообщений
  • Репутация: 0
0

Отправлено 14 Январь 2011 - 14:48

Столкнулся с такой проблемкой. Есть каталог организаций. Данные выводятся из базы. При добавлении в базу не все поля обязательно. Вывод из базы у меня сделан следуюющим образом:
$result1 = mysql_query("SELECT * FROM org WHERE cat_org=$id and dostup=1",$db);
if (!$result1)
{
echo "<p>Запрос на выборку данных из базы не прошел. Напишите об этом администратору. <br> <strong>Код ошибки:</strong></p>";
exit(mysql_error());
}
if (mysql_num_rows($result1) > 0)
{
$myrow1 = mysql_fetch_array($result1);
do
{
printf ("<p class='text'><font color='#771201'><strong><u>%s</u></strong></font><br>%s<br><strong>Адрес:</strong> %s<br><strong>Телефон:</strong> %s<br><strong>Сайт:</strong> <a href='http://%s' target='_blank'>%s</a><br><strong>E-mail:</strong> <a href='mailto:%s'>%s</a><br><strong>Время работы:</strong> %s</p>",$myrow1["title"],$myrow1["description"],$myrow1["adres"],$myrow1["tel"],$myrow1["site"],$myrow1["site"],$myrow1["mail"],$myrow1["mail"],$myrow1["time"]);
}
while ($myrow1 = mysql_fetch_array($result1));
}
else
{
echo "<p>Извините, в таблице нет записей</p><p></p>";
}

Как сделать так, чтоб, если данные в таблице отсуствуют ( к примеру нет у организации сайта и электронной почты), то при выводе данных просто удалялась строчка с пустой данной. ( к примеру не будет строчки с сайтом и электронной почтой).

 

 

  • 0

#2 surfer

surfer
  • Заблокированные
  • 1 956 сообщений
  • Репутация: 71

Отправлено 14 Январь 2011 - 15:07

приведи код в читабельный вид
  • 0

#3 Евгений

Евгений
  • Пользователь
  • 481 сообщений
  • Репутация: 0

Отправлено 14 Январь 2011 - 15:25

простой пример

if ( !empty($myrow1["site"]) )
{
echo 'Сайт: ' . $myrow1["site"];
}

  • 0

#4 kolesgan

kolesgan
    Topic Starter
  • Пользователь
  • 73 сообщений
  • Репутация: 0

Отправлено 14 Январь 2011 - 15:35

У меня там несколько строк. Допустим не заплолненеа строка сайт, выводится таблица без строчки "сайт", незаполнена строка время работы и емейл, то в выведенной таблице не будет время работы и емейла. а остальные без пробелов акуратненько в пару строк. к примеру вот здесь - http://www.cheb.ru/str.htm, где то нет одного где-то другого, но всеравно красиво выводит данные об организации.


  • 0

#5 yury

yury
  • Пользователь
  • 629 сообщений
  • Репутация: 176

Отправлено 14 Январь 2011 - 15:37

kolesgan,
просто проверяешь пустая ли переменная и, если нет, то добавляешь ее в строку вывода, примерно так:
$output = "";
$output .= "<p class='text'>";
$output .= (empty($myrow1["title"]) ? "" : "<font color='#771201'><strong><u>" . $myrow1["title"] . "</u></strong></font><br>");
$output .= (empty($myrow1["description"]) ? "" : $myrow1["description"] . "<br>");
$output .= (empty($myrow1["adres"]) ? "" : "<strong>Адрес:</strong> " . $myrow1["adres"] . "<br>");
...
...
$output .= "</p>";
echo $output;

  • 0

#6 kolesgan

kolesgan
    Topic Starter
  • Пользователь
  • 73 сообщений
  • Репутация: 0

Отправлено 14 Январь 2011 - 16:04

Спасибо, получилось. Тролько вот тепер как можно сделать, чтоб адрес url был вставлен в код <a href="...........>


  • 0

#7 yury

yury
  • Пользователь
  • 629 сообщений
  • Репутация: 176

Отправлено 14 Январь 2011 - 16:31

kolesgan,
примерно так:
$output .= (empty($myrow1["site"]) ? "" : "<strong>Сайт:</strong> <a href='http://" . $myrow1["site"] . "' target='_blank'>" . $myrow1["site"] . "</a><br>");


На всякий случай, там в коде выше пропущено было, я поправил сейчас.
  • 0

#8 kolesgan

kolesgan
    Topic Starter
  • Пользователь
  • 73 сообщений
  • Репутация: 0

Отправлено 14 Январь 2011 - 16:36

Спасибо. получилось. пытался таким же образом, но упускал маленькую деталь. спасибо еще раз!!!!


  • 0

#9 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 18 Январь 2011 - 21:57

kolesgan, вопрос решен, тему закрываю?
  • 0

robot

robot
  • Пользователь PRO
  • 2 652 сообщений
  • Репутация: 85


Оформление форума – IPBSkins.ru