Параметры в MySQL или Postgres для запросов [дубликат]Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Параметры в MySQL или Postgres для запросов [дубликат]

Сообщение Anonymous »

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

Код: Выделить всё

function prmstr($v){
switch(gettype($v)){
case 'integer':case 'double': return (string)$v;
case 'NULL': return 'NULL';
case 'boolean':return $v?'true':'false';
default: $v=pg_escape_string($v);return "'{$v}'";// may be redundant to use pg_escape_string
}
}
идея в том, что я могу использовать его следующим образом:

Код: Выделить всё

$p1=456;p2='A9XXP';
$qs="select * from tb where c1=$1 and c2=$2"
$qr=pg_query_params('select * from tb where c1=$1 and c2=$2',[prmstr($p1),prmstr($2)]);
или даже

Код: Выделить всё

$qr=pg_query_params('select * from tb where c1=$1 and c2=$2',prmstrA([$p1,$p2]));
определяя соответствующим образом prmstrA
Насколько я понимаю, пример тот же и для mysql.
Интересно, существует ли другой стандартный способ сделать это, или если есть встречные указания, так как много pg_escape_* .

Подробнее здесь: https://stackoverflow.com/questions/785 ... or-queries
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»