Mysqli. Подготовленные выражения

Печать RSS
640

K
Автор
Транклюкаторщик
0
Салют.
В общем хочу освоить все это дело, но после прочтения мануалов все равно остались некоторые вопросы.
1) Их нужно использовать только при записи в БД, или при select запросах тоже?
2) Будет ли работать эта штука, если я пользуюсь таким синтаксисом insert запросов:
$db->query("insert into `table` set `field`='value',`field2`='value2';")
Заранее спасибо, по ходу появятся еще вопросы, пока что прошу вашей помощи с этими
Изменил: KOZZ (01.08.2011 / 07:52)
K
Автор
Транклюкаторщик
0
Чего - то вообще глухо

Чатланин
0
попал в нужную тему )) именно подготовленные выражения ))
возник вопрос.
		function query( $sql )
		{
				$rez = $this->prepare( $sql );
				if ( $this->error )
						error( 'Ошибка: ' . $this->error );
				$rez->execute();
				return $stmt;
		}

эта функция не выполняется и я не могу понять почему.
сразу скажу что это паблик функция расширенного класса mysqli
в pdo это работает а тут почемуто не выполняется

Чатланин
0
3. rastoman,
<?php
function query( $sql ) 
        { 
                $stmt = $this->prepare( $sql ); 
                if ( $this->error ) 
                        error( 'Ошибка: ' . $this->error ); 
                $stmt->execute(); 
                return $stmt; 
        }
?>

Чатланин
0
у меня так
В

Чатланин
0
1. Подготовительные запросы лучше везде использовать, где в строку запроса переменные вставляются.

Единственное где у меня почему то не работают они это после слова LIMIT в запросе..
Т.е. не могу написать так
... LIMIT ?,?;
Фиг знает почему.. Поэтому вставляю переменные в запрос по старинке.. Использую pdo
Кто знает в чем касяк ответьте.
Изменил: Валерий (03.08.2011 / 21:16)
K
Автор
Транклюкаторщик
0
6. valerik, я просто не дорубаю немного эти подг.выражения, это типа фильтр чтоли такой новый от inj изобрели, или что?
что сделает с кавычками например эта фишка, заслэшит чтоли?

Чатланин
0
6. valerik, у всех так. И в роторе тоже.
D

Малиновые штаны
0
7. eGo Отвертка в ухе, фишка не только в безопасности, а еще в том что можно проводить операции на уровне сервера. Ну собственно эт я сужу по аналогии с pdo

Добавлено через 01:51 сек.
а безопасно ибо ты прописуешь строгий сценарий, и вставить в запрос например левый скул запрос уже нельзя, ты изначально скомпилировал весь sql сценарий.

2000 лет д.н.э.
0
eGo Отвертка в ухе (3 Августа 2011 / 21:22)
6. valerik, я просто не дорубаю немного эти подг.выражения, это типа фильтр чтоли такой новый от inj изобрели, или что?
что сделает с кавычками например эта фишка, заслэшит чтоли?
сначала уходит запрос, анализируется и сохраняется, потом данные к нему, выполнение.
повторная отправка уже идет без запроса, только данные, экономия времени и трафика мускул, снижение нагрузки, (при неверном подходе можно добиться обратного эффекта), а фильтрация это только дополнительная плюшка
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск