Excerpts from Alfredo Zea García Calderón's message of vie may 14 01:48:59
-0400 2010:
> *$file = "C:\Users\Alfredo\Desktop\imagen.jpg";*
>
> *$data = file_get_contents($file);
>
> $escaped = pg_escape_bytea($data);*
> **
> *$t='"';*
> *$cod = "0";*
> **
> *$consulta = "UPDATE preguntas SET ".$t."bArchiv".$t."=E'$escaped'::bytea
> WHERE ".$t."cCodPre".$t."='$cod'";*
Es bastante horrible esto. Es más fácil escapar las comillas dobles
así:
$consulta = "UPDATE preguntas SET \"bArchiv\"=E'$escaped'::bytea WHERE
\"cCodPre\"='$cod'";
Me imagino que nunca has oído hablar de "inyección de SQL", ¿cierto? Te
recomiendo que estudies qué significa. Te aconsejo usar algo como esto:
$result = pg_prepare($conexion_bd, "update_del_bytea",
"UPDATE preguntas SET \"bArchiv\" = $1 WHERE \"cCodPre\" = $2");
$result = pg_execute($conexion_bd, "update_del_bytea",
array(file_get_contents($file), $cod));
--
-
Enviado a la lista de correo pgsql-es-ayuda ([email protected])
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda