Можно ли запретить update на странице?

Статус
Закрыто для дальнейших ответов.

FiRеFоX

V.I.P.
Регистрация
07.08.2010
Сообщения
744
Можно ли как то для страницы запретить запросы вида update при определенном условии?
Объясняю, допустим в шапке мы делаем проверку на определенное условие и если оно выполняет, то разрешаем update, иначе запрещаем...
Код:
if(){
//Разрешаем update
}
else{
//Запрещаем update
}
select*from `tbl` where `id_login`=$_SESSION['id'];
//Здесь будет много много условий в зависмости от содержимого таблицы..
Конечно, можно делать по одиночке, но у меня на странице около 100 локаций сейчас и каждая(!) выводится в зависмости от содержимого столбца в таблице.. И для каждой свой(!) update...
вобще динамическая страница...
И вот для всей ней надо запретить update.. Это возможно?
Или придется ручками вручную?
 

Serg@NT

Well-Known Member
Регистрация
20.02.2010
Сообщения
506
Можно в качестве ликбеза узнать, что такое "запросы вида update"?
 

Serg@NT

Well-Known Member
Регистрация
20.02.2010
Сообщения
506
что, типа, все запросы можно, а update нельзя? Но тогда ведь надо также запрещать то действие, которое приводит к запросам update (ну, типа, кнопка "Редактировать"). А то пользователь будет жать, а ничего не происходит - это не дело.
А вообще, ну как вариант, запихнуть mysql_query в функцию типа ExecuteDB и там проверять запрос на наличие ключевого слова "update".
 

FiRеFоX

V.I.P.
Регистрация
07.08.2010
Сообщения
744
что, типа, все запросы можно, а update нельзя? Но тогда ведь надо также запрещать то действие, которое приводит к запросам update (ну, типа, кнопка "Редактировать"). А то пользователь будет жать, а ничего не происходит - это не дело.
А вообще, ну как вариант, запихнуть mysql_query в функцию типа ExecuteDB и там проверять запрос на наличие ключевого слова "update".
Вот вот! Мне и надо, что бы пользователь жал - а ничего не происходило)
Что такое ExecuteDB?
 

Serg@NT

Well-Known Member
Регистрация
20.02.2010
Сообщения
506
Что такое ExecuteDB?
Да просто ваша функция, которая будет проверять. Я для примера её так назвал. Просто я использую такую в самописном сайте для запросов к базе. Она в случае ошибки в запросе отправляет мне на мыло сообщение. А у вас можно сделать, чтоб проверяла условие и наличие update
Код:
function ExecuteDB ($sql, $allow) {
 if(!$allow && instr($sql, 'update') > 0) exit();
 mysql_query($sql); 
}
...

ExecuteDB("update `tbl` set `stolbec`='текст' where ... ", false);
ЗЫ: код на правильность не проверял
 

FiRеFоX

V.I.P.
Регистрация
07.08.2010
Сообщения
744
Что такое ExecuteDB?
Да просто ваша функция, которая будет проверять. Я для примера её так назвал. Просто я использую такую в самописном сайте для запросов к базе. Она в случае ошибки в запросе отправляет мне на мыло сообщение. А у вас можно сделать, чтоб проверяла условие и наличие update
Код:
function ExecuteDB ($sql, $allow) {
 if(!$allow && instr($sql, 'update') > 0) exit();
 mysql_query($sql); 
}
...

ExecuteDB("update `tbl` set `stolbec`='текст' where ... ", false);
ЗЫ: код на правильность не проверял
аа, понял) Спасибо! Попробую так сделать! :)
 
Статус
Закрыто для дальнейших ответов.
Верх Низ