51

Re: Проблема с занесением данных в таблицу бд

zikfrid сказал:

стало яснее, как я понял выдает количество строк, а как теперь из числа получить строку?

Из числа никак. Если надо выбрать данные, то можно сделать еще один запрос к БД, хотя я не думаю, что в этом есть смысл, ведь все значения уже есть и из можно просто взять из POST массива.

52

Re: Проблема с занесением данных в таблицу бд

что то не получается

53

Re: Проблема с занесением данных в таблицу бд

<?php
$Link = mysql_connect('***', '***', '***');
@mysql_query("SET NAMES 'cp1251'",$Link);
if (!$Link) echo "Не удалось подключиться к серверу";
mysql_select_db('obyavleniya');

$sql="SELECT Operation,Marka, Model, Birthday, Cash, Homephone, Mobilephone, Comment,Date FROM `cars` \n"
."WHERE `Operation`=\"\'.$_POST[\'Operation\'].\'\"\n"
."AND `Marka`=\"\'.$_POST[\'Marka\'].\'\"\n"
."AND `Model`=\"\'.$_POST[\'Model\'].\'\"\n"
."AND `Birthday`=\"\'.$_POST[\'Birthday\'].\'\"";
$result=mysql_query($sql);
if (!$result){
    echo "Ошибка при запросе";
    exit(mysql_error());
}
$myarray = array(); // создаем пустой массив, страховка
$n = mysql_num_rows($result); // Узнаем количество элементов в выборке

for($i = 0; $i < $n; $i++){
    $myarray[] = mysql_fetch_array($result);
}
if(!$myarray) echo "Объявления отсутствуют";
else
{
foreach($myarray as $value){
    echo $value['Operation']."\t";
    echo $value['Marka']."\t";
    echo $value['Model']."\t";
    echo $value['Birthday']."\t".'года '.'за ';
    echo $value['Cash'].'p.'."\t".'Обращаться по телефону: ';
    echo $value['Homephone']."\t".'или ';
    echo $value['Mobilephone'].'.'."\t".'Комментарий:'."\t";
    echo $value['Comment'].'.'."\t".'Дата подачи объявления: ';
    echo $value['Date'].'<hr/>';
}
}


?>

составил запрос, но он не работает

54

Re: Проблема с занесением данных в таблицу бд

Не правильный синтаксис. И обязательно все данные перед отправкой в БД заключать в функцию mysql_real_escape_string().

$sql = 'SELECT `Operation`, `Marka`, `Model`, `Birthday`, `Cash`, `Homephone`, `Mobilephone`, `Comment`, `Date` FROM `cars`
WHERE `Operation`="' . mysql_real_escape_string($_POST['Operation']) . '"
AND `Marka`="' . mysql_real_escape_string($_POST['Marka']) . '"
AND `Model`="' . mysql_real_escape_string($_POST['Model']) . '"
AND `Birthday`="' . mysql_real_escape_string($_POST['Birthday']) . '"';

55

Re: Проблема с занесением данных в таблицу бд

теперь встала проблема, если ввести данные только в одно поле, а остальные оставить пустыми, то выдает что объявление отсутствует

56

Re: Проблема с занесением данных в таблицу бд

zikfrid сказал:

теперь встала проблема, если ввести данные только в одно поле, а остальные оставить пустыми, то выдает что объявление отсутствует

Разумеется. А должно быть как?

57

Re: Проблема с занесением данных в таблицу бд

меня бы удовлетворил результат, при котором если вводишь данные в одно поле, то запрос искал данные по одному этому полю, а пока буду думать как это сделать

58

Re: Проблема с занесением данных в таблицу бд

zikfrid сказал:

меня бы удовлетворил результат, при котором если вводишь данные в одно поле, то запрос искал данные по одному этому полю

Тогда четыре условия, одно в другом, с четырьмя отдельными запросами к БД.

59

Re: Проблема с занесением данных в таблицу бд

подскажите пожалуйста, как сформировать запрос, что бы записи в таблице удалялись по истечению 45 дней

60

Re: Проблема с занесением данных в таблицу бд

zikfrid сказал:

подскажите пожалуйста, как сформировать запрос, что бы записи в таблице удалялись по истечению 45 дней

Для таких целей делают специальный скрипт, который запускают через планировщик, который на Linux называется Cron.

Начиная с версии MySQL 5.1.6 можно задействовать планировщик встроенный в MySQL. Документация планировщика событий. Однако на виртуальных хостингах у вас может не быть привилегий для создания событий планировщика.