Foros del Web » Programando para Internet » PHP »

Ayuda porfavor PHP Xajax y PostgreSQL

Estas en el tema de Ayuda porfavor PHP Xajax y PostgreSQL en el foro de PHP en Foros del Web. Hola, necesito ayuda con una web que estoy desarrollando. Estoy trabajando con PHP, Xajax y PostgreSQL. Mi problema es que al tratar de hacer un ...
  #1 (permalink)  
Antiguo 11/05/2010, 16:50
 
Fecha de Ingreso: septiembre-2007
Mensajes: 9
Antigüedad: 12 años, 4 meses
Puntos: 0
Ayuda porfavor PHP Xajax y PostgreSQL

Hola, necesito ayuda con una web que estoy desarrollando. Estoy trabajando con PHP, Xajax y PostgreSQL. Mi problema es que al tratar de hacer un UPDATE a la BD no sucede nada. Tengo un Boton "Guardar" que al hacer click debe de actualizar los datos y redirigirme a otra pagina. Este es mi codigo:

<?php

include('xajax_core/xajax.inc.php');
$xajax = new xajax();
$xajax->setCharEncoding('ISO-8859-1');
$xajax->configure('decodeUTF8Input',true);

$conexion_bd = pg_connect("host=localhost dbname=ISO17799 user=postgres password=postgres")
or die('No pudo conectarse: ' . pg_last_error());


function guardar() {

$respuesta = new xajaxResponse();

$rpta = "No";

$pregunta = "00001";

$t='"';

$consulta = "UPDATE preguntas SET ".$t."cResPre".$t."='$rpta' WHERE ".$t."cCodRes".$t."='$pregunta'";

$resultado = pg_query($consulta) or die('Consulta fallida: ' . pg_last_error());


if($resultado)
{
$respuesta->assign("mensaje","innerHTML","ok");
$respuesta->redirect('pruebaaa.php');

return $respuesta;
}

else
{
$respuesta->assign("mensaje","innerHTML","algo salio mal");
return $respuesta;
}
}

$xajax->registerFunction("guardar");
$xajax->processRequest();
?>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<?php $xajax->printJavascript("xajax/");

?>

</head>

<body>

<div id="mensaje">
<div align="center">Mensajeeeee</div>
</div>

<form name="formulario">

<input type="button" name="Submit" value="Guardar" onclick="javascript:xajax_guardar()" >

</form>

</body>


</html>


El problema es que al hacer click en Guardar no sucede absolutamente nada, en cambio si en ves de hacer un UPDATE hago un simple SELECT como por ejemplo:

$consulta = "SELECT * FROM preguntas WHERE ".$t."cCodPre".$t."='$pregunta'";

Todo funciona correcto. Alguien podria ayudarme porfavor?.


Gracias,

Saludos.
  #2 (permalink)  
Antiguo 11/05/2010, 17:33
Avatar de webness  
Fecha de Ingreso: enero-2009
Ubicación: BOGOTA
Mensajes: 312
Antigüedad: 11 años
Puntos: 5
Respuesta: Ayuda porfavor PHP Xajax y PostgreSQL

Cita:
Iniciado por alfredo22r Ver Mensaje
$t='"';
$consulta = "UPDATE preguntas SET ".$t."cResPre".$t."='$rpta' WHERE ".$t."cCodRes".$t."='$pregunta'";
como puedo observar creo que te sobre primero que todo el uso de $t, puesto que su valor es nulo pero este no es el error, si miras bien me inclinaria a decir que no estas concatenando correctamente los valores de $rpta y $pregunta, haste un hecho del $consulta y ejecutas su resultado directamente en la base de datos haber que pasa

Última edición por webness; 11/05/2010 a las 17:34 Razón: SUBSCRIPCION AL BOLETIN
  #3 (permalink)  
Antiguo 11/05/2010, 22:04
 
Fecha de Ingreso: septiembre-2007
Mensajes: 9
Antigüedad: 12 años, 4 meses
Puntos: 0
Respuesta: Ayuda porfavor PHP Xajax y PostgreSQL

Hola, en primer lugar muchas gracias por responder.

El $t lo utilizo para las comillas, cuando lo pegue aqui no aparecio correctamente. Realmente es asi: $t = ' " ', solo q sin espacios.

Hice lo q me dijiste y el echo me voto esto:

UPDATE preguntas SET "cResPre"='No' WHERE "cCodRes"='00001'

Ejecute ese resultado en pgAdminIII y me sale esto:

ERROR: no existe la columna «cCodRes»
LINE 1: UPDATE preguntas SET "cResPre"='No' WHERE "cCodRes"='00001'

Mi error fue en "cCodRes", eso estaba mal debia de ser "cCodPre", Muchas gracias ahora si me funciono, ahora se abre la pagina siguiente.

Muchas Gracias por la ayuda este problema me tuvo todo un dia pensando como resolverlo.

Última edición por alfredo22r; 11/05/2010 a las 22:10

Etiquetas: postgresql, xajax
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 13:22.