Foros del Web » Programando para Internet » PHP »

UPDATE con PostgreSQL ???

Estas en el tema de UPDATE con PostgreSQL ??? en el foro de PHP en Foros del Web. Buenas a todos... Tengo un script en mi PC que trabaja con bases de datos MySQL y funciona perfecto. Consiste en unas simples lineas que ...
  #1 (permalink)  
Antiguo 19/02/2004, 15:33
Avatar de drcyber  
Fecha de Ingreso: julio-2002
Mensajes: 826
Antigüedad: 22 años, 3 meses
Puntos: 2
Pregunta UPDATE con PostgreSQL ???

Buenas a todos...

Tengo un script en mi PC que trabaja con bases de datos MySQL y funciona perfecto. Consiste en unas simples lineas que actualizan un registro de la base de datos.

Cuando llevo el script a PostgreSQL, los datos no se actualizan mediante el UPDATE convencional. A continuación les dejo las lineas de code:

Código PHP:
$ssql "SELECT * FROM jurado WHERE username='$_SESSION[username]'";
$rs pg_query($ssql);
if(
$row pg_fetch_array($rs)){
 
$ssql "UPDATE jurado SET voto1='$_POST[voto1]', voto2='$_POST[voto2]', voto3='$_POST[voto3]' WHERE username='$_SESSION[username]'";
 
$rs pg_query($ssql);
 
session_destroy();

No entiendo por qué no actualiza los datos en la BD. Y lo peor es que no me devuelve ningún error. En MySQL ese query funciona perfecto.

¿Qué será?

Gracias y saludos.
PD: El server donde hospedo PostgreSQL es remoto.
__________________
Dr. Cyber
Ingeniarte.com
(soy el mismo Takitei)

Última edición por drcyber; 19/02/2004 a las 15:37
  #2 (permalink)  
Antiguo 19/02/2004, 16:29
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
Bueno ..en principio deberías asegurarte que la sintax SQL sea exactamente igual en PostgreSQL.

Ambas base de datos no comparten el mismo SQL aunque en la base es el mismo ...

Y .. si en Mysql supongo que conoceras la función msyql_error() ... PostgreSQL tiene la equivalente:

pg_last_error() (si no me equivoco) .. Así que puedes usarla en:

Código PHP:
$rs pg_query($ssql) or die (pg_last_error()); 
(en todas las funciones pg_query() .. y las de conexión que uses) .. Así veras los errores arrojados por PostgreSQL .. sean de SQL o de conexión ..

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 19/02/2004, 18:07
Avatar de drcyber  
Fecha de Ingreso: julio-2002
Mensajes: 826
Antigüedad: 22 años, 3 meses
Puntos: 2
Coloqué el die() pero no me arroja ningún error.

Yo verifiqué en Internet que la sintaxis fuese correcta y efectivamente lo es. ¿Será que los administradores del server deben habilitarme un permiso para hacer UPDATEs?
__________________
Dr. Cyber
Ingeniarte.com
(soy el mismo Takitei)
  #4 (permalink)  
Antiguo 19/02/2004, 21:00
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
En principio no .. el UPDATE y algunas actividades básicas como el SELECT y el DELETE deberías poder ejecutarlas sin problemas ..

El problema podría ser sobre el usuario que usas para conectarte de forma remota .. No todo servicio de hosting (si es que lo usas o es própio) configura usuarios para acceso remoto (alegando problemas de seguridad) .. Por eso mismo te decía que usases la función pg_last_error() para "intentar" ver algún error de ese tipo sobre el usuario que conecta .. o la sintax SQL de la sentencia empleada ..

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #5 (permalink)  
Antiguo 19/02/2004, 21:26
Avatar de drcyber  
Fecha de Ingreso: julio-2002
Mensajes: 826
Antigüedad: 22 años, 3 meses
Puntos: 2
Usé pg_last_error() pero sin embargo no devuelve ningún error. Todo corre como si la data se hubiese actualizado. Pero cuando reviso la BD, resulta que está intacta.

Amazing!
__________________
Dr. Cyber
Ingeniarte.com
(soy el mismo Takitei)
  #6 (permalink)  
Antiguo 18/11/2007, 14:50
 
Fecha de Ingreso: noviembre-2007
Mensajes: 2
Antigüedad: 17 años
Puntos: 0
Re: UPDATE con PostgreSQL ???

oye lo mismo me pasa ami pues la verdad no se que sea carnal yo me a postgres por mysql no genera muchas peticiones por eso cambie mi manejador de base de datos


pues la neta quien sabe si tedan respuesta de como manda un mail


MI CORREO es ;

[email protected]
[email protected]
[email protected]
  #7 (permalink)  
Antiguo 18/11/2007, 14:52
 
Fecha de Ingreso: noviembre-2007
Mensajes: 2
Antigüedad: 17 años
Puntos: 0
Re: UPDATE con PostgreSQL ???

esta es parte de mi codigo que tengo u la neta pues yo asigno a variables los valores enviados pero realmente es lo mismo...


$a=$_POST['producto'];
$b=$_POST['rfc'];
$c=$_POST['descripcion'];
$d=$_POST['minimo'];
$e=$_POST['maximo'];
$f=$_POST['costo'];
$g=$_POST['Precioventa'];
$h=$_POST['cantidad'];
$i=$_POST['marca'];
$j=$_POST['fechita'];




$sql="update producto set rfc='".$b."',descripcion='".$c."',stock_minimo=".$ d.",stock_maximo=".$e.",costo=".$f.",precio_venta= ".$g.",
cantidad_existente=".$h.",marca='".$i."' where producto.clave_producto=' ".$a." ' ";

$consulta =pg_query($sql);
$rs1=pg_num_rows($consulta);

echo"$a\n";
echo"$rs1";

if ($rs1 >0)
{
?><script language="javascript">
alert("SE ACTUALIZADO EXITOSAMENTE LA FICHA DE REGISTRO");
</script><?
include("actualizaproducto.php");
}
else
{
?><script language="javascript">
alert("SE GENERO UN ERROR DEL SISTEMA,NO PUEDO ACTUALIZAR REGISTRO");
</script><?
die (pg_last_error());
include("actualizaproducto.php");
}

}


checalo..........
  #8 (permalink)  
Antiguo 18/11/2007, 15:11
 
Fecha de Ingreso: diciembre-2003
Mensajes: 1.583
Antigüedad: 20 años, 10 meses
Puntos: 13
Re: UPDATE con PostgreSQL ???

¿Has intentado así?:

Código PHP:
$ssql "SELECT * FROM jurado WHERE username='".$_SESSION['username']."'";
$rs pg_query($ssql);
if(
$row pg_fetch_array($rs)){
 
$ssql "UPDATE jurado SET voto1='".$_POST['voto1']."', voto2='".$_POST['voto2']."', voto3='".$_POST['voto3']."' WHERE username='".$_SESSION['username']."'";
 
$rs pg_query($ssql);
 
session_destroy();

Me da la sensación de que $rs no te está devolviendo ningún resultado, por eso el UPDATE no llega a ejecutarse.
__________________
El conocimiento es libre: Movimiento por la Devolución
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:56.