|
|
|
| Уважаемые ГУРУ, бращаеться к ВАМ полное ничтожество в програмировании на PHP. Уже головой разбил необну стенку, решил некоторые задачи но вот с задачай о каторой сейчас пойдёт речь никак! =( ну совсем что-то никак! =(
Сейчас почти полностью сделал ИНФОРМЕР для сайта по Недвижимости.
Суть информера:
1.- выводить средние цены по разным видам объектов 1-комн.кв, 2-ком.кв и тд... , (это я Сделал!)
2.-выводить % роста цен на недвижимость так же по видам объектов... (тоже Сделал!)
3.- Записывать в базу средние цены из пункта №1 только в том случае если в базе СЕГОДНЯ (текущая дата) записи ещё нет. Мне это нужно чтобы в базе небыло ООООгромного кол-ва повторяющейся информации. ВОТ ТУТ Я ИСЪСЯК!! =( совсем совсем...
Кидаю кличь о помощи... HELP ME... Help....
Привожу куски кода
- определаю текущую дату:
$today=date("Y",time()) ."-".date("m",time()) ."-".date("d",time());
- выбираю максимальное значение Даты в базе:
$pr=mysql_query("SELECT DATE_FORMAT(data,'%Y-%m-%d') AS data FROM informer3 ORDER BY data DESC LIMIT 1 " );
- пытаюсь полученное занести в базу по условию занесения 1 раз в сутки:
if ($pr < $today) { $query4=mysql_query("INSERT INTO informer3 VALUES ( NULL,'$row[raion]', '$rew',now())");
}
else
{ }
Есть подозрение что проблемы из за несоответствие формата ДАТЫ в СКЛ таблице и в переменной $today. НО Мозга понять что ИМЕННО не так, нехватает. Помощи прошу... ХЭЛП... | |
|
|
|
|
|
|
|
для: bill
(02.02.2008 в 18:50)
| | 1. Печатайте промежуточные результаты при отладке скрипта. Иначе Вы не сможете разобраться, в чем у Вас ошибки.
К примеру $pr=mysql_query(...); if($pr < $today) - явная ошибка. Вы сравниваете дескриптор результата ответа, вместо того чтоб сравнивать сам ответ. Не напечатав $pr , Вы не увидите, что пропустили mysql_fetch_assoc()
2. Никогда не ставьте алиасы к столбикам так, чтобы они совпадали с именами полей. Запутаетесь сами, и других запутаете. SELECT DATE_FORMAT(data,'%Y-%m-%d') AS out_data
3. Нужно приводить дамп структуры таблицы и пример строк в ней. Иначе понять, есть ли в Вашем случае несоответствие формата, и требуется ли преобразование в SELECT как таковое (по-моему, оно там лишнее) невозможно. | |
|
|
|
|
|
|
|
для: Trianon
(02.02.2008 в 19:03)
| | Спасибо Trianon. Вы дали мне пищу для размышлений. +)
Всегда приятно когда к просьбе о помощи относятся внимательно.
по пункту № 1 и №2 понял. (обдумаю, почитаю, исправлюсь)
по пункту № 3 если позволите завтра выложу своё творение тут на форуме и если Вас незутруднит вы ткнёте меня носим в мои недочёты.
Приношу свои извинения за ясно тупенькие вопросы и в целом уровень программирования. Надеюсь на понимание и посильное содействие.
Спасибо.
пс. отпишусь к 12-30 03 фев. | |
|
|
|
|
|
|
|
для: Trianon
(02.02.2008 в 19:03)
| | 1. немного почитал ночью, немного подумал.. НО недоконца понял насчёт:
-"Не напечатав $pr , Вы не увидите, что пропустили mysql_fetch_assoc()".
2. по поводу алиасов всё понял! Спасибо огромного!
3. дамп базы привожу, с кусочком инфы в ней:
Table structure for informer3
-- ----------------------------
CREATE TABLE `informer3` (
`id` int(4) NOT NULL auto_increment,
`raion` varchar(11) character set utf8 default NULL,
`price` varchar(11) default NULL,
`data` date default NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=cp1251;
-- ----------------------------
-- Records
-- ----------------------------
INSERT INTO `informer3` VALUES ('1', 'Центр', '1500', '2008-02-01');
INSERT INTO `informer3` VALUES ('29', 'Центр', '2713', '2008-02-02');
INSERT INTO `informer3` VALUES ('30', 'Центр', '2713', '2008-02-03');
INSERT INTO `informer3` VALUES ('31', 'Центр', '2713', '2008-02-03');
INSERT INTO `informer3` VALUES ('32', 'Центр', '2713', '2008-02-03');
Если позволите приведу ещё и сам скрипт которой по идее всё и обрабатывает.. ТОлько вот с Занесением информации в базу по условию ! ОДИН РАЗ в СУТКИ ! у меня БОЛЬШИЕ проблемы!. Помогите если несложно, HELP//
(кусок скрипта)
$today=date("Y",time()) ."-".date("m",time()) ."-".date("d",time());
$pr= "SELECT DATE_FORMAT(data,'%Y-%m-%d') AS out_data FROM informer3 ORDER BY out_data DESC LIMIT 1 " ;
$rez=mysql_query($pr);
$query_rez = mysql_fetch_assoc($rez)
echo "<pre>";
print_r ($query_rez);
echo "</pre>";
//$wer=mysql_query("SELECT DATE_FORMAT(data,'%Y-%m-%d') FROM informer3 WHERE max(data) > NOW() - INTERVAL 1 DAY");
if ($pr) { $query4=mysql_query("INSERT INTO informer3 VALUES ( NULL,'$row[raion]', '$rew',now())");
}
else
{ }
if(mysql_query($query))
{
// Осуществляем перезагрузку страницы,
// чтобы сбросить POST-данные
echo "<HTML><HEAD>
<META HTTP-EQUIV='Refresh'; URL=$_SERVER[PHP_SELF]'>
</HEAD></HTML>";
} else exit("Ошибка при добавлении данных - ".mysql_error());
}
echo "<pre>";
print_r ($today) ;
echo "to dayZ</pre>";
echo "<pre>";
print_r ($query_rez);
echo "</pre>";
echo "<br>";
Спасибо. | |
|
|
|
|
|
|
|
для: bill
(03.02.2008 в 11:54)
| |
$sql = "SELECT (MAX(data) = curdate()) as up_to_date FROM informer3";
if(!mysql_result(mysql_query($sql), 0, 'up_to_date'))
mysql_query("INSERT INTO informer3 (raion,price,data)
VALUES ($raion, $price, curdate())");
|
| |
|
|
|
|
|
|
|
для: Trianon
(03.02.2008 в 13:48)
| | хммм... Это конечно Круто готовый код! =) спасибо.
сейчас буду "анализировать ЭТО"! =)
по поводу вывода и отладки я использую. PRINT_R. но иногда высвечиваеться в браузере Resource id #6. я так понял это говарит о то что запрос выполнен положительно но я вывожу на Принт дискриптор а не Переменную которой присвоен результат запроса.
Логика Правильная???
PS/ Trianon мой вечный Респект и Уважение!
Спасибо. | |
|
|
|
|
|
|
|
для: bill
(03.02.2008 в 14:04)
| | >по поводу вывода и отладки я использую. PRINT_R. но иногда высвечиваеться в браузере Resource id #6. я так понял это говарит о то что запрос выполнен положительно но я вывожу на Принт дискриптор а не Переменную которой присвоен результат запроса.
>
>Логика Правильная???
Абсолютно правильная.
к этому моменту результат запроса переменной Вы не присвоили.
Смотрите назначение функций mysql_num_rows(), mysql_fetch_assoc() и возможно mysql_result() .
Хотя без последней можно обойтись. | |
|
|
|
|
|
|
|
для: Trianon
(03.02.2008 в 15:18)
| | Супер! Исчерпывающий и полезный совет! Это мне сейчас и нужно!. Уже читаю.... Спасибо.
(с сайта неухожу, постоянно посты проверяю, =) ) | |
|
|
|
|
|
|
|
для: Trianon
(03.02.2008 в 13:48)
| | вставил код на место своего :
$today=date("Y",time()) ."-".date("m",time()) ."-".date("d",time());
$pr= "SELECT DATE_FORMAT(data,'%Y-%m-%d') AS out_data FROM informer3 ORDER BY out_data DESC LIMIT 1 " ;
$rez=mysql_query($pr);
$query_rez = mysql_fetch_assoc($rez)
echo "<pre>";
print_r ($query_rez);
echo "</pre>";
//$wer=mysql_query("SELECT DATE_FORMAT(data,'%Y-%m-%d') FROM informer3 WHERE max(data) > NOW() - INTERVAL 1 DAY");
if ($pr) { $query4=mysql_query("INSERT INTO informer3 VALUES ( NULL,'$row[raion]', '$rew',now())");
}
else
{ }
Пишет что "Ошибка в добавлении данных".
И если мне нужна информация из базы 30-ти дневной давности то мне 30 прописывать суда: ), 0, 'up_to_date')) ???????
Одним слово я в ШОКЕ от того что вижу. =) даже незнаю с чего и начать понимание увидинного. =) | |
|
|
|
|
|
|
|
для: bill
(03.02.2008 в 14:32)
| | Я тоже в шоке от того, что вижу. | |
|
|
|
|
|
|
|
для: Trianon
(03.02.2008 в 15:15)
| | =) Trianon Вы уж простите меня ламера недоучку. я понимаю что Вам со мной очень тяжко разговаривать. Но я рад что Вы меня понимаете и пытаетесь помочь.
Ещё раз извините. | |
|
|
|
|
|
|
|
для: bill
(03.02.2008 в 14:32)
| | предположу что я некорректно описал то как должен работать скрипт и пояэтому получил несовсем тот ответ.
Выладываю весь скрипт может это внесёт ясность:
$query = "SELECT raion, AVG(price) FROM basa WHERE basa.kom = '3' GROUP BY id_type";
$result = mysql_query($query) or die(mysql_error());
$query2 = "SELECT raion, price FROM informer3 WHERE TO_DAYS(NOW()) - TO_DAYS(data) = 1";
$result2 = mysql_query($query2) or die(mysql_error());
// Print out result (Oбъединил два цыкла с помощью конструкции ЭНД. работает while($ro = mysql_fetch_array($result2) and $row = mysql_fetch_array($result)){ //
while($ro = mysql_fetch_array($result2) and $row = mysql_fetch_array($result)){
// заносим результат в базу
$rew=(int)$row['AVG(price)'];
$ris=(int)$ro['price'];
//условие внесения записи в базу. Если в базе есть запись за ТЕкущее число но новая запись незаписываеться.
//таким образом получаем 1 запись в 1 день.
$raznica = $rew - $ris;
$proc1 = $rew / 100;
$itog = $raznica / $proc1;
$itog = round($itog, 1);
// Print out result
echo "<table width='270' border='0' class='style96'><tr><td width='10' ></td><td width='50' background='images/nav/hik_z1.gif'>
". $row['raion']. "</td><td width='10'></td><td width='10' align='center' background='images/nav/hik_z1.gif'>
".(int)$row['AVG(price)']." p.</td><td width='10' ></td><td width='50' >".$itog." % </td><td width='20' ></td></tr></table> ";
$today=date("Y",time()) ."-".date("m",time()) ."-".date("d",time());
$sql = "SELECT (MAX(data) = curdate()) as up_to_date FROM informer3";
if(!mysql_result(mysql_query($sql), 0, 'up_to_date'))
mysql_query("INSERT INTO informer3 ('raion','price','data')
VALUES ($raion, $price, curdate())");
if(mysql_query($result))
{
// Осуществляем перезагрузку страницы,
// чтобы сбросить POST-данные
echo "<HTML><HEAD>
<META HTTP-EQUIV='Refresh'; URL=$_SERVER[PHP_SELF]'>
</HEAD></HTML>";
} else exit("Ошибка при добавлении данных - ".mysql_error());
}
echo "<pre>";
print_r ($today) ;
echo "to dayZ</pre>";
echo "<pre>";
print_r ($sql);
echo "хз</pre>";
echo "<br>";
После его выполнения в браузере пишет -"Ошибка при добавлении данных" -неправельный синтаксис.... бла бла бла...
Уважаемые ГУГУ, неподскажите что умное, или тыкните носов где куда что и как почитать и сделать??? Очень нужно..
Спасибо. | |
|
|
|
|
|
|
|
для: bill
(03.02.2008 в 15:18)
| | В голову пришла Идея.
А что если для упрощения разбить задачу выбоки из базы, показ Средней цены и %, и запись 1 раз в день этих средниц цен в базу НА ДВЕ ЧАСТИ.
Сделать ДВА скрипта.
1-й будет выбирать и отображать цены и %.
2-й будет выбирать и записывать в базу Один раз в день эти значения.
Возникает вопрос:
1. как сделать запись по времени (всё также актуален для меня). =(
2. как можно добиться какого эффекта когда ПОльзователь зайдя на страницу незаставляет скрипт каждый раз обращаться к базе и делать расчёт цен и %, а просто брал и подставлял готовый ХТМЛ документ (собственно сам информер размером 200*300) и ставил его в нужное место страницы.
Какими средствами это лучше реализовать??? Есть мысли??? | |
|
|
|
|
|
|
|
для: bill
(03.02.2008 в 16:59)
| | Человеки.. ХЭЛП... помогите мне всётаки это добро победить!
Дело в самом деле в
$sql = "SELECT (MAX(data) = curdate()) as up_to_date FROM informer3";
if(!mysql_result(mysql_query($sql), 0, 'up_to_date'))
mysql_query("INSERT INTO informer3 (raion,price,data)
VALUES ($raion, $price, curdate())");
$db = mysql_fetch_assoc($result);
{
у меня после этого начал в браузере отображаться результат хоть....
НО непойму как теперь добиться запись в базу Средних цен по каждому району города . у меня пишет тольок по ОДНИМУ району. =*( | |
|
|
|
|
|
|
|
для: bill
(03.02.2008 в 17:58)
| | Парни поправте меня если я Неправ:
Правильно ли я понимаю лигику кучка кода.
$sql = "SELECT (MAX(data) = curdate()) as up_to_date FROM informer3"; ----// скрипт берёт максимальное значение из поля ДАТА и придаёт ему формат вида 2008.02.03.
if(!mysql_result(mysql_query($sql), 0, 'up_to_date')) ----// (самое сложное) если запрос выполнен, тоесть $sql существует тооооо...... ничё непонятно......
mysql_query("INSERT INTO informer3 (raion,price,data) ----// выполняем запись в базу по полям, в поле raion пишем переменную район $raion, в поле price переменную $price и тд.
VALUES ($raion, $price, curdate())");
И Ещё вот что странно при print_r () у меня в браузере выдаёт массив [raion] => ТЗР
[AVG(price)] => 1696.7925
непойму почему, веть у меня Не т такого Поля в базе с именем [AVG(price)] , это параметры моему переменной... $rew=(int)$row['AVG(price)']; как онни в массив попали с помощью выше приведённого кода ума неприложу...
Помогите......, внесите ясность Пожалусто.... | |
|
|
|
|
|
|
|
для: bill
(03.02.2008 в 18:17)
| | НЕУЖЕЛИ НИКТО НЕПОМОЖЕТ? 8**( | |
|
|
|
|
|
|
|
для: bill
(03.02.2008 в 18:17)
| | >$sql = "SELECT (MAX(data) = curdate()) as up_to_date FROM informer3"; ----// скрипт берёт максимальное значение из поля ДАТА и придаёт ему формат вида 2008.02.03.
2008-02-03
>if(!mysql_result(mysql_query($sql), 0, 'up_to_date')) ----// (самое сложное) если запрос выполнен, тоесть $sql существует тооооо...... ничё непонятно......
Если функция mysql_result ничего не вернула, то...
> mysql_query("INSERT INTO informer3 (raion,price,data) ----// выполняем запись в базу по полям, в поле raion пишем переменную район $raion, в поле price переменную $price и тд.
> VALUES ($raion, $price, curdate())");
Да
>
>И Ещё вот что странно при print_r () у меня в браузере выдаёт массив [raion] => ТЗР
> [AVG(price)] => 1696.7925
>непойму почему, веть у меня Не т такого Поля в базе с именем [AVG(price)] , это параметры моему переменной... $rew=(int)$row['AVG(price)']; как онни в массив попали с помощью выше приведённого кода ума неприложу...
>
Что пытаетесь вывести с помощью print_r() ?
>Помогите......, внесите ясность Пожалусто.... | |
|
|
|
|
|
|
|
для: bill
(03.02.2008 в 18:17)
| | $sql = "SELECT (MAX(data) = curdate()) as up_to_date FROM informer3"
формируем в переменной $sql исходный SQL-код запроса.
Запрос вычисляет max(data) [т.е.максимальное значение поля data ] и сравнивает его со значением curdate() [т.е. функцией, которая возвращает дату текущего дня.] Запрос возвращает логическое значение (0 либо 1) в виде результата из одной строки (номер 0) с одним полем (по имени up_to_date )
if(!mysql_result(mysql_query($sql), 0, 'up_to_date'))
выполняем запрос, и тут же (полагая, что ошибок в запросе нет) берем ячейку из нулевой строки и поля up_to_date. Там будет 1 (если последняя дата - сегодняшняя) либо 0 (если дата не совпадает с сегодняшней) либо null (если строк вообще не было ни одной) либо false (если таки были ошибки в запросе).
Во всех случаях кроме 1 исполняется оператор добавления строки.
mysql_query("INSERT INTO informer3 (raion,price,data) VALUES ($raion, $price, curdate())");
> выполняем запись в базу по полям, в поле raion пишем переменную район $raion, в поле price переменную $price и тд.
здесь всё верно.
>И Ещё вот что странно при print_r () у меня в браузере выдаёт массив [raion] => ТЗР
[AVG(price)] => 1696.7925
>непойму почему, веть у меня Не т такого Поля в базе с именем [AVG(price)] , это параметры моему
>переменной... $rew=(int)$row['AVG(price)']; как онни в массив попали с помощью выше
>приведённого кода ума неприложу...
Здесь нужно смотреть, что вы присваивали переменной $row. | |
|
|
|
|
|
|
|
для: Trianon
(03.02.2008 в 21:42)
| | спасибо, ответ подробный (то что нужно!).
Сейчас немного времени нужно чтобы всё переварить, и наверняка новые вопросы будут. =) | |
|
|
|
|
|
|
|
для: Trianon
(03.02.2008 в 21:42)
| | делаю запрос к базе SELECT (MAX(data) = curdate()) as up_to_date FROM informer3
в результате получаю "0" (НОЛЬ).
Дамп базы.
-- Table structure for informer3
-- ----------------------------
CREATE TABLE `informer3` (
`id` int(4) NOT NULL auto_increment,
`raion` varchar(11) character set utf8 default NULL,
`price` varchar(11) default NULL,
`data` date default NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=cp1251;
-- ----------------------------
-- Records
-- ----------------------------
INSERT INTO `informer3` VALUES ('45', 'Ворош', '1800', '2008-02-02');
INSERT INTO `informer3` VALUES ('46', 'Дзерж', '1850', '2008-02-02');
INSERT INTO `informer3` VALUES ('136', 'Центр', '1490', '2008-02-02');
INSERT INTO `informer3` VALUES ('151', 'Центр', '2713', '2008-02-02');
INSERT INTO `informer3` VALUES ('152', 'Дзерж', '2107', '2008-02-02');
INSERT INTO `informer3` VALUES ('153', 'Ворош', '2332', '2008-02-02');
INSERT INTO `informer3` VALUES ('154', 'КрОкт', '1863', '2008-02-02');
Что делаю не так?
P/S/ Вопрос снимаеться.. Разобрался..
НО возник другой:....... | |
|
|
|
|
|
|
|
для: bill
(07.02.2008 в 11:02)
| | СКРИПТ заносит в базу только ОДНИ строчку. а должен заносить 7 строк.
(массив).
Конкретно заноситься строка ('206, 'Центр', '1800', '2008-02-07');
А мне нужно чтобы заносились ВСЕ районы (7 штук) и соответственно все цены.
Я так предполагаю что у меня какието проблемы в ЦЫКЛЕ.
ГУРУ подскажите на что обратить внимание.
Привожу весь код:
$query = "SELECT raion, AVG(price) FROM basa WHERE basa.kom = '3' GROUP BY id_type";
$result = mysql_query($query) or die(mysql_error());
$query2 = "SELECT raion, price FROM informer3 WHERE TO_DAYS(NOW()) - TO_DAYS(data) = 5";
$result2 = mysql_query($query2) or die(mysql_error());
while($ro = mysql_fetch_array($result2) and $row = mysql_fetch_array($result))
{
$rew=(int)$row['AVG(price)']; // средняя цена иза ОБЩЕЙ базы по 3-х комн. квартирам.
$ris=(int)$ro['price']; // берёт цены из базы ИНФОРМЕРА_3
$raznica = $rew - $ris; // сред.Цена - цена ИНФОРМЕРА_3
$proc1 = $rew / 100; //
$itogi = $raznica / $proc1;
$itog = round($itogi, 1);
$raion = $row['raion'];
echo "<table width='270' border='0' class='style96'><tr><td width='10' ></td><td width='50' background='images/nav/hik_z1.gif'>
". $row['raion']. "</td><td width='10'></td><td width='10' align='center' background='images/nav/hik_z1.gif'>
".(int)$row['AVG(price)']." p.</td><td width='10' ></td><td width='50' >".$itog." % </td><td width='20' ></td></tr></table> ";
$sql = "SELECT (MAX(data) = curdate() ) as up_to_date FROM informer3";
if(!mysql_result(mysql_query($sql), 0, 'up_to_date'))
mysql_query("INSERT INTO informer3 (raion,price,data)
VALUES ('$raion', '$ris', curdate())");
}
П,С, таблица с результатами должна быть видна на Странице ВСЕГДА а в бузу писаться результат РАЙОН + СредниеЦЕНЫ долен ОДИН раз в СУТКИ.
ХЭЛП.. помогите Понять в чём проблема... | |
|
|
|
|
|
|
|
для: bill
(07.02.2008 в 14:16)
| | ЛЮДИиии Помогите... чуть чуть осталось скрипт подправить и у меня будет всё готово. САм немогу понять где ошибка. Помощи прошу...
Не оставляйте пожалусто мою просьбу без внимания.
Спасибо. | |
|
|
|
|
|
|
|
для: bill
(07.02.2008 в 15:12)
| | поставьте проверку условия перед циклом.
Хотя это Вас не спасет. Выборка из верхних двух селектов у Вас не синхронна, а случайна.
Вы считаете ерунду. | |
|
|
|
|
|
|
|
для: Trianon
(07.02.2008 в 21:00)
| | >поставьте проверку условия перед циклом.
А не подскажите как это сделать??
>Хотя это Вас не спасет. Выборка из верхних двух селектов у Вас не синхронна, а случайна.
не понял не про селекторы не про синхронность... Если можно более развёрнуто было бы классно....
>Вы считаете ерунду.
Trianon спасибо за Вашу помощь которая мне сильно помогает в освоении дисциплины.
П.С. я добился нужного результат но чую что способ не оптимален.. Завтра выложу свой скрипт сюда, для критики и замечаний. =) | |
|
|
|
|
|
|
|
для: bill
(07.02.2008 в 22:50)
| | Сразу скажу, СПАСИБО всем тем кто имел терпение выслушать мой ламерский бред и попытался помочь.
Выкладываю скрипт который вывод нужную мне информацию по средним ценам и записывает эти средние цены ОДИН раз в сутки в базу.
$query = "SELECT raion, AVG(price) FROM basa WHERE basa.kom = '3' and basa.price > '0' GROUP BY id_type";
$result = mysql_query($query) or die(mysql_error());
$query2 = "SELECT raion, price FROM informer3 WHERE TO_DAYS(NOW()) - TO_DAYS(data) = 7";
$result2 = mysql_query($query2) or die(mysql_error());
while($ro = mysql_fetch_array($result2) and $row = mysql_fetch_array($result))
{
$rew=(int)$row['AVG(price)']; // средняя цена иза ОБЩЕЙ базы по 3-х комн. квартирам.
$ris=(int)$ro['price']; // берёт цены из базы ИНФОРМЕРА_3
$raznica = $rew - $ris; // сред.Цена - цена ИНФОРМЕРА_3
$proc1 = $rew / 100; //
$itogi = $raznica / $proc1;
$itog = round($itogi, 1);
$raion = $row['raion'];
echo "<table width='270' border='0' class='style96'><tr><td width='10' ></td><td width='50' background='images/nav/hik_z1.gif'>
". $row['raion']. "</td><td width='10'></td><td width='10' align='center' background='images/nav/hik_z1.gif'>
".(int)$row['AVG(price)']." p.</td><td width='10' ></td><td width='50' >".$itog." % </td><td width='20' ></td></tr></table> ";
}
$query4 = "SELECT raion, AVG(price) FROM basa WHERE basa.kom = '3' and basa.price > '0' GROUP BY id_type";
$result4 = mysql_query($query4) or die(mysql_error());
$query5 = "SELECT raion, price FROM informer3 WHERE TO_DAYS(NOW()) - TO_DAYS(data) = 7";
$result5 = mysql_query($query5) or die(mysql_error());
$sql = "SELECT (MAX(data) = curdate() ) as up_to_date FROM informer3";
if(!mysql_result(mysql_query($sql), 0, 'up_to_date'))
while($ro2= mysql_fetch_array($result5) and $row2 = mysql_fetch_array($result4)) {
$ris=(int)$ro2['price'];
$raion = $row2['raion'];
$rew=(int)$row2['AVG(price)'];
mysql_query("INSERT INTO informer3 (raion,price,data)
VALUES ('$raion', '$rew', curdate())"); }
// Осуществляем перезагрузку страницы,
// чтобы сбросить POST-данные
echo "<HTML><HEAD>
<META HTTP-EQUIV='Refresh'; URL=$_SERVER[PHP_SELF]'>
</HEAD></HTML>";
Надеюсь и я чем то смогу помочь начинающим. (хотябы тем что покажу как Делать НЕнужно!) +)
От ГУРУ жду критики и замечаний по скрипту, ОЧЕНЬ буду за это благодарен.
ВСем большое Респект!. особенно Trianon | |
|
|
|
|