Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проверка таблицы mysql на пустое поле 
:(
    Опции темы
XpoHuk
Дата 13.7.2012, 02:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 21.3.2012

Репутация: нет
Всего: нет



Здравствуйте у меня проблема в следующем:
Я делаю проверку на пустоту поля id 

Код

$select = "select count(*) from name_table where id IS NULL";

или
Код

$select = "select count(*) from name_table where id=?";


И не как не получается сделать IF который будет проверять если поле пустое не выводить table если же не пустое выводить.

Код


if ($select (К ЧЕМУ ЕГО ПРИРОВНЯТЬ))
{
echo '<table border="1">
....................................................

</table>';
}

PM MAIL   Вверх
Fortop
Дата 13.7.2012, 03:21 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2200
Регистрация: 13.11.2007
Где: Донецк

Репутация: 3
Всего: 42



Цитата(XpoHuk @  13.7.2012,  02:59 Найти цитируемый пост)
Я делаю проверку на пустоту поля id 

это же жесть....

Запомните поле id не должно быть пустым. Никогда.



Цитата(XpoHuk @  13.7.2012,  02:59 Найти цитируемый пост)
select count(*) from name_table where id IS NULL

Это не проверка на пустоту чего бы то ни было.
Это подсчет числа записей где id IS NULL

Раз уж вам нужно вывести все записи, где нет какого-либо параметра, то 
Код

SELECT * FROM table WHERE "condition"

Выберет вам именно такие записи и дополнительных if в php не нужно.



--------------------
Мир это Я.
Живее всех живых.
PM MAIL   Вверх
XpoHuk
Дата 13.7.2012, 03:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 21.3.2012

Репутация: нет
Всего: нет



Цитата

Запомните поле id не должно быть пустым. Никогда.

Факт в том что у меня есть table в который выводится расчёт из form через mysql эти расчёты удаляют, следовательно все поля бывают пустыми.

Цитата

Выберет вам именно такие записи и дополнительных if в php не нужно.

Именно нужно if так как mysql выводит только числа хранящиеся в ней, и когда поля пустые она не выводит нечего но помимо чисел есть ещё таблица с названиями полей 

Код

echo '<table border="1">
         <tr>
        <td>№:</td>
        <td>d1:</td>
        <td>d2:</td>
        <td>L:</td>
        <td>H:</td>
        <td>Количество:</td>
        <td>Цена за кв.м:</td>
        <td>Площадь:</td>
        <td>Стоимость:</td>
    </tr>';


в первую очередь мне надо скрыть их, и я так понимаю это можно сделать с помощью проверки на пустоту поля id, то есть, если в id есть хоть что-то выводим всё остальное.

Теперь наверно я понятней изъяснился  smile 

Это сообщение отредактировал(а) XpoHuk - 13.7.2012, 03:49
PM MAIL   Вверх
Fortop
Дата 14.7.2012, 08:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2200
Регистрация: 13.11.2007
Где: Донецк

Репутация: 3
Всего: 42



Цитата(XpoHuk @  13.7.2012,  03:47 Найти цитируемый пост)
Факт в том что у меня есть table в который выводится расчёт из form через mysql эти расчёты удаляют, следовательно все поля бывают пустыми.

При удалении из БД записи - она удаляется целиком

Соответственно при попытке ее получить, вы не получите ничего.

Получить удаленные записи невозможно, если не позаботиться об этом специально.
Например, не удалять записи из БД, а завести специальное поле, где помечать как удаленные. Тогда вы сможете получать записи по условию на это поле.


--------------------
Мир это Я.
Живее всех живых.
PM MAIL   Вверх
XpoHuk
Дата 8.8.2012, 01:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 21.3.2012

Репутация: нет
Всего: нет



Забыл написать что нашёл ответ.
Для тех кому вдруг понадобится это:

Код

$conn = mysql_connect("localhost","root","") or die ("Невозможно соединиться с базой".mysql_error());

mysql_select_db("raschet");   
$list_f = mysql_list_fields("raschet","RectangularDuct", $conn);
$n = mysql_num_fields($list_f);

for ($j=0; $j<$n; $j++)
{
    $names[]=mysql_field_name($list_f, $j);
}
$sql1 = "SELECT * FROM RectangularDuct ";
$q = mysql_query($sql1, $conn);
$n = mysql_num_rows($q);

if ($n == 0) {
mysql_close($conn);
}
else {

echo '<div class="display"><br />
<table border="1" id="allPic">
    <tr>
        <td><h7 >Прямоугольный воздуховод</h7></br><img src="images/f8fdad5f.jpg" alt="" ></td>
    </tr>
</table >
<br />
<table border="1">
    <tr>
            <td>Сторона A</td>
            <td>Сторона B</td>
            <td>Длина L</td>
            <td>Количество:</td>
            <td>Цена за кв.м</td>
            <td>Площадь</td>
            <td>Стоимость</td>
            <td>№</td>
        </tr>';

for ($i=0; $i<$n; $i++)
{
echo '<tr>';
foreach ($names as $k =>$val)
{
$value = mysql_result($q, $i, $val);
echo '<td>'.$value.'</td>';
    }
echo '</tr>';
}
echo '</table>';
mysql_close($conn);
  echo '<br /></div><br />';
}

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Базы Данных | Следующая тема »


 




[ Время генерации скрипта: 0.0429 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.