Foros del Web » Programando para Internet » PHP »

Fallo en consulta

Estas en el tema de Fallo en consulta en el foro de PHP en Foros del Web. Hola a todos. Estoy intentando de hacer con PHP y SQL una función que recoja un dato de un BD en ORACLE, y no me ...
  #1 (permalink)  
Antiguo 15/08/2012, 06:43
 
Fecha de Ingreso: junio-2012
Mensajes: 13
Antigüedad: 11 años, 10 meses
Puntos: 0
Exclamación Fallo en consulta

Hola a todos.

Estoy intentando de hacer con PHP y SQL una función que recoja un dato de un BD en ORACLE, y no me muestra el resultado, me muestra vacío, y en la BD tengo datos.

Este es mi código, creo que el error se encuentra aquí(escrito en rojo):
Haber si alguien me puede echar una mano,me tiene este código frito!!
Muchas gracias!


/////////////FUNCIÓN sacarMaxID //////////////////
$_SESSION['UsuarioMaxPed'] =$_SESSION['nombre'];
echo "<br>Cambio de variables de sessiones: ".$_SESSION['UsuarioMaxPed'];


function sacarMaxPed($Usuario, $conexion){
$stmt = $conexion->prepare("SELECT MAX(ID_PED) AS MaxPed FROM PEDIDO WHERE COD_PER = :usuario");
$stmt->bindParam(':usuario', $Usuario);
$stmt->execute();


$UsuarioMaxPed=0;

while($reg = $stmt->fetch()){
echo "<br>Parametro 2: ". $Usuario;

$UsuarioMaxPed = $reg['MaxPed'];
echo "<hr>";
echo "Función sacarMaxPed";
echo "<br>Maxped: ". $UsuarioMaxPed;
}
$reg = $stmt->fetch();
}


echo sacarMaxPed($_SESSION['UsuarioMaxPed'],$conexion);

///////////////////////////////////////////////////////////////////
  #2 (permalink)  
Antiguo 15/08/2012, 06:53
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Fallo en consulta

Pues depura la variable completa y observa que hay dentro.
Código PHP:
var_dump($reg); 
Obvio, debes hacerlo dentro del bucle para que surta efecto, lo que muestre nos dices.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 15/08/2012, 13:39
 
Fecha de Ingreso: junio-2012
Mensajes: 13
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: Fallo en consulta

Muchas gracias !!
Ahora mismo lo pruebo ;)
  #4 (permalink)  
Antiguo 15/08/2012, 16:43
 
Fecha de Ingreso: junio-2012
Mensajes: 13
Antigüedad: 11 años, 10 meses
Puntos: 0
Exclamación Respuesta: Fallo en consulta

Cita:
Iniciado por pateketrueke Ver Mensaje
Pues depura la variable completa y observa que hay dentro.
Código PHP:
var_dump($reg); 
Obvio, debes hacerlo dentro del bucle para que surta efecto, lo que muestre nos dices.
- Pero lo que yo quiero es, almacenar ese dato en una variable, así sólo me muestra el dato :S

Este es mi código:

function sacarMaxPed($Usuario, $conexion){
$stmt1 = $conexion->prepare("SELECT MAX(ID_PED) AS MaxPed FROM PEDIDO WHERE COD_PER = :usuario");
$stmt1->bindParam(':usuario', $Usuario);
$stmt1->execute();


$maxped=0;

while($reg1 = $stmt1->fetch()){
echo "<br>Parametro 2: ". $Usuario;
var_dump($reg1);
$maxped = $reg1['MaxPed'];
echo "<hr>";
echo "<br>Maxped: ". $maxped;
echo "<br>";
$reg1 = $stmt1->fetch();
}

}


echo sacarMaxPed($_SESSION['usuarioLogueado'],$conexion);
  #5 (permalink)  
Antiguo 15/08/2012, 16:47
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Fallo en consulta

Entiendo perfectamente, ahora solo debes fijarte cual es el índice correcto de la variable $reg1 que buscas.

La función era para que observes los índices que contiene dicha variable, eso es todo.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #6 (permalink)  
Antiguo 15/08/2012, 16:59
 
Fecha de Ingreso: junio-2012
Mensajes: 13
Antigüedad: 11 años, 10 meses
Puntos: 0
Exclamación Respuesta: Fallo en consulta

Cita:
Iniciado por pateketrueke Ver Mensaje
Pues depura la variable completa y observa que hay dentro.
Código PHP:
var_dump($reg); 
Obvio, debes hacerlo dentro del bucle para que surta efecto, lo que muestre nos dices.
Cita:
Iniciado por pateketrueke Ver Mensaje
Entiendo perfectamente, ahora solo debes fijarte cual es el índice correcto de la variable $reg1 que buscas.

La función era para que observes los índices que contiene dicha variable, eso es todo.


Esto es lo que me muestra:
array(2) { ["MAXPED"]=> string(2) "51" [0]=> string(2) "51" }

Ese dato, el "51", sería el identificador de pedido(ID_PED), es el mayor de mis pedidos, ese es el que quiero almacenar en una variable.

$maxped = $reg1['MaxPed']; --> De esta manera lo he echo, pero luego no me la pinta.

¿Como consigo almacenarla?
No entiendo muy bien como dice usted, podría escribirme el código por favor.
  #7 (permalink)  
Antiguo 15/08/2012, 19:49
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Fallo en consulta

Una cosa importante es saber que PHP es sensible a mayúsculas y minúsculas, el var_dump() te dice que el índice es MAXPED (todo en mayúsculas) y tu, no entiendo el motivo, lo estás escribiendo como MaxPed (capitalizado).

No me digas que necesitas código, si no lo ves es porque no quieres.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: falloayuda, falloconsulta, oracle, sql
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 01:30.