DriverCat

DriverCat
Рейтинг
116
Регистрация
10.04.2008
root:
DriverCat, зачем запросы? передавайте в hidden или в сессиях просто параметры и значения,
если уж совсем невмоготу, а потом формируйте запрос в базу.

ОК , уже так и переделал.

prog_monster:
Простите, либо вы знаете толк в извращениях, либо вы толстый тролль 🚬

SQL запросы нормальные люди не хранят ни в hidden, ни в сессиях.

Попрошу без оскорблений. Форум на то и форум, чтобы задавать вопросы. Хочется узнать мнение людей. Даже если для вас вопрос кажется абсурдным.

DyaDya:
Да это ерунда всё, скорее всего. Проверьте скорость выполнения кода, формирующего ваш запрос в скрипте...

Если так уж хочется где-то хранить готовый запрос, то может в сессию его запихивать или подключить кеширование? Но всё равно, лучше нормально обрабатывать поступающие данные и формировать соответствующие SQL-запросы.

А в сессии хранить насколько опасно?

DyaDya:
А зачем вам так сильно потребовалось хранить запрос в хиддене?

экономия ресурсов при повторном обращении к скрипту, там просто много параметров и запрос сложно формируется... но безопасность естественно важнее!

Понял, спасибо!

Alexius:
Ну если вникнуть в запросы, то естественно так:
SELECT * FROM objects AS a LEFT JOIN regions AS r ON r.id = a.metro LEFT JOIN highways AS h ON h.id = a.street WHERE type='Земля' AND oper='Аренда' AND ((area_min>='0.2' AND area_max<='2.5') OR (area_max<='2.5' AND area_min>='2.5') OR (area_min<='0.2' AND area_max>='2.5')) AND highway!='Новорязанское'


Спасибо, туплю!!!
Alexius:
Хотел предложить использовать оператор EXCEPT не вникая в запросы, оказалось что mysql до сих пор не поддерживает его😒 Предлагается использовать извращения вроде этих..

Это мне тогда проще просто перечислить id которые уже нашлись - рабоать будет быстрее. Думал как-то более гибко это можно решить... Но все равно спасибо!

dk547:
Попробуйте так:
SELECT DISTINCT * FROM objects AS ...

Вы немного не поняли - у меня два разных запроса. Если первый не дал мне 3 строчек, я использую второй.

t0os:
Вполне может и из-за этого.

Снес эту прогу, переставил новый IE 8 со всеми обновлениями (у меня лицензия XP), в IE этот код, который в мануале

session_start();
if (!isset($_SESSION['counter'])) $_SESSION['counter']=0;
echo "Вы обновили эту страницу ".$_SESSION['counter']++." раз. ";
echo "<br><a href=".$_SERVER['PHP_SELF'].">обновить";

не работает.

Не приложу ума что может быть. Помогите, пожалуйста.

Разобрался: где то вычитал, что если в имени тестового домена есть нижнее подчеркивание, сессии в IE не работают. Помогло. IE - зло!

Nunan:
Попробуйте перед циклом сделать так:

$_SESSION['print']=array();

В таком случае получается, что я как бы заново объявляю переменную и данные все пропадают, хотя и ошибка тоже. Вот в чем и вопрос - как "напомнить" IE что это массив, не потерев данные???

DriverCat добавил 10.09.2010 в 13:40

Сейчас создал тестовый файл с кодом:

<?php

session_start();
if (!isset($_SESSION['counter'])) $_SESSION['counter']=0;
echo "Вы обновили эту страницу ".$_SESSION['counter']++." раз. ";
echo "<br><a href=".$_SERVER['PHP_SELF'].">обновить";

?>

чтобы проверить вообще как сессии работают, оказывается вообще в IE сессии не работают. Использую IE из набора multiple IE . Может это из-за этого???

Всего: 246