Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Problema lógico en SELECT vía Consulta

Estas en el tema de Problema lógico en SELECT vía Consulta en el foro de PHP en Foros del Web. Hola gente, tengo un problema, la idea es modificar un alumno de un instituto, trayendo sus datos y cargándolos para a la vista para su ...
  #1 (permalink)  
Antiguo 19/11/2013, 15:15
 
Fecha de Ingreso: noviembre-2013
Mensajes: 12
Antigüedad: 11 años
Puntos: 0
Pregunta Problema lógico en SELECT vía Consulta

Hola gente, tengo un problema, la idea es modificar un alumno de un instituto, trayendo sus datos y cargándolos para a la vista para su modificación, el problema que tengo es que al traer datos de las carreras disponibles, siempre selecciona el ID mayor(el ultimo que trae de la consulta), sea cual sea la carrera elegida que se muestra en el SELECT producido.

ya probe si los traia bien a los datos poniendo en $fila[1], el ID $fila[0] y si los enumera.



Código PHP:
Carrera :

                
";

                $resultado = mysql_query("
SELECT id_CarreraNombre_Carrera FROM carrera", $link);

                echo "
<select name='carrera'n";

                while ($fila = mysql_fetch_row($resultado)){
              
                echo "
<option value='$fila[0]'>".$fila[1]."</option>";

                }

                echo "
</select

alguna ayuda?
  #2 (permalink)  
Antiguo 19/11/2013, 15:51
Avatar de temaqueja  
Fecha de Ingreso: agosto-2002
Ubicación: /dev/null/
Mensajes: 399
Antigüedad: 22 años, 3 meses
Puntos: 4
Respuesta: Problema lógico en SELECT vía Consulta

cual es el problema? quieres decir que el código php está bien pero el combo se queda mostrando el ultimo item de la lista?
__________________
_________________________
La computadora nació para resolver problemas que antes no existían
  #3 (permalink)  
Antiguo 19/11/2013, 15:57
 
Fecha de Ingreso: noviembre-2013
Mensajes: 12
Antigüedad: 11 años
Puntos: 0
Respuesta: Problema lógico en SELECT vía Consulta

muestra bien las opciones de las carreras, pero elijas cual elijas en la base de datos siempre guarda el id del ultimo del listado
  #4 (permalink)  
Antiguo 19/11/2013, 15:59
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 13 años, 4 meses
Puntos: 793
Respuesta: Problema lógico en SELECT vía Consulta

¿Puedes mostrar como guardas en la base de datos?
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP

Última edición por andresdzphp; 19/11/2013 a las 16:21
  #5 (permalink)  
Antiguo 19/11/2013, 16:02
 
Fecha de Ingreso: abril-2010
Ubicación: Cancun
Mensajes: 88
Antigüedad: 14 años, 7 meses
Puntos: 2
Respuesta: Problema lógico en SELECT vía Consulta

Usa el firebug para ver que valores imprimes en tus option y ver que valores mandas en tu POST
  #6 (permalink)  
Antiguo 19/11/2013, 16:05
 
Fecha de Ingreso: noviembre-2013
Mensajes: 12
Antigüedad: 11 años
Puntos: 0
Exclamación Respuesta: Problema lógico en SELECT vía Consulta

ahi mire y envia bien el dato de el id, el problema esta en el update este:


Código PHP:

<body>

<?php
$nombre
=$_POST["nombre"];
$apellido=$_POST["apellido"];
$dni=$_POST["dni"];
$estado_c=$_POST["estado_c"];
$domicilio=$_POST["domicilio"];
$localidad=$_POST["localidad"];
$cod_postal=$_POST["cod_postal"];
$dia=$_POST["dia"];
$mes=$_POST["mes"];
$anio=$_POST["anio"];
$lug_nac=$_POST["lug_nac"];
$telefono=$_POST["telefono"];
$celular=$_POST["celular"];
$carrera=$_POST["carrera"];
$titulo=$_POST["titulo"];
$r_pago=$_POST["r_pago"];
$ficha_s=$_POST["ficha_s"];
$activo=$_POST["activo"];
$fecha=$anio."-".$mes."-".$dia;
strval($dni);
echo 
$carrera;



$link mysql_connect("localhost""root");

mysql_select_db("base",$link);

$sql "UPDATE alumno SET Nombre='$nombre',
      Apellido='$apellido',
      Estado_Civil='$estado_c', Domicilio='$domicilio',
      Localidad='$localidad', Cod_Postal='$cod_postal',
      Fecha_de_Nacimiento='$fecha', Lugar_de_Nacimiento='$lug_nac',
      Telefono='$telefono', Celular='$celular', id_carrera='$carrera',
      where DNI='$dni'"
;

mysql_query($sql);


echo 
"Alumno modificado";
ob_start();
  
header("refresh: 1000; url ='index.php");
ob_end_flush();
?>

</body>

</html>


Guarda cambios como el nombre apellido, pero el id sigue igual, hice un ECHO de carrera para asegurarme de que pase correctamente y asi es, pasa correcto.



YA ENCONTRE EL ERROR, Cuando agregue el " id_carrera='$carrera', " puse esa coma de mas, por eso dejaba de guardar los datos. maldita coma jaja, gracias por su ayuda! n.n

Última edición por juan_f_amaral; 19/11/2013 a las 16:13 Razón: resuelto.
  #7 (permalink)  
Antiguo 19/11/2013, 16:13
 
Fecha de Ingreso: abril-2010
Ubicación: Cancun
Mensajes: 88
Antigüedad: 14 años, 7 meses
Puntos: 2
Respuesta: Problema lógico en SELECT vía Consulta

Cita:
Iniciado por juan_f_amaral Ver Mensaje
ahi mire y envia bien el dato de el id, el problema esta en el update este:


Código PHP:

<body>

<?php
$nombre
=$_POST["nombre"];
$apellido=$_POST["apellido"];
$dni=$_POST["dni"];
$estado_c=$_POST["estado_c"];
$domicilio=$_POST["domicilio"];
$localidad=$_POST["localidad"];
$cod_postal=$_POST["cod_postal"];
$dia=$_POST["dia"];
$mes=$_POST["mes"];
$anio=$_POST["anio"];
$lug_nac=$_POST["lug_nac"];
$telefono=$_POST["telefono"];
$celular=$_POST["celular"];
$carrera=$_POST["carrera"];
$titulo=$_POST["titulo"];
$r_pago=$_POST["r_pago"];
$ficha_s=$_POST["ficha_s"];
$activo=$_POST["activo"];
$fecha=$anio."-".$mes."-".$dia;
strval($dni);
echo 
$carrera;



$link mysql_connect("localhost""root");

mysql_select_db("base",$link);

$sql "UPDATE alumno SET Nombre='$nombre',
      Apellido='$apellido',
      Estado_Civil='$estado_c', Domicilio='$domicilio',
      Localidad='$localidad', Cod_Postal='$cod_postal',
      Fecha_de_Nacimiento='$fecha', Lugar_de_Nacimiento='$lug_nac',
      Telefono='$telefono', Celular='$celular', id_carrera='$carrera',
      where DNI='$dni'"
;

mysql_query($sql);


echo 
"Alumno modificado";
ob_start();
  
header("refresh: 1000; url ='index.php");
ob_end_flush();
?>

</body>

</html>


Guarda cambios como el nombre apellido, pero el id sigue igual, hice un ECHO de carrera para asegurarme de que pase correctamente y asi es, pasa correcto.
id_carrera='$carrera' ,
where DNI='$dni'"

//No va la ultima coma o tenias algo mas
  #8 (permalink)  
Antiguo 19/11/2013, 16:20
 
Fecha de Ingreso: abril-2010
Ubicación: Cancun
Mensajes: 88
Antigüedad: 14 años, 7 meses
Puntos: 2
Respuesta: Problema lógico en SELECT vía Consulta

imprime tu $sql y manda el resultado

echo $sql;

Etiquetas: formularios, html, select
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 08:50.