Ver Mensaje Individual
  #2 (permalink)  
Antiguo 04/06/2008, 15:29
zazo
 
Fecha de Ingreso: abril-2008
Ubicación: Goppingen
Mensajes: 17
Antigüedad: 16 años
Puntos: 0
Respuesta: un combobox se me carguen valores de una tabla

Hola,

Yo le hice asi :

tengo una tabla llamada clientes con los siguientes campos

id_cliente
nombre

y el codigo es el siguiente :

<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Traer Cliente</title>
</head>

<body>

<?
// datos de conexion a la BD.
$servidor ="localhost"; // host
$usuario ="root";
$clave ="";
$basedatos ="proforma"; // Indicar una Base de datos.

// si se ha pulsado el boton enviar ($enviado) se procesa el formulario ..
// Sino, se continua con el formulario y los nuevos valores de los Select ..
// OJO si se tienen mas variables (mas <input> ) se van a perder sus valores a no ser
// que los obtengamos y se les de como valor inicial en el value= de cada uno segun corresponda.

if (!empty($_POST['enviado'])){

// Procesar el formulario ...
echo "Procesando formulario:<br>";
echo "Recibido ID de la tabla Clientes: ".$_POST['id_cliente']."<br>";


} else {

// Conexión a la BD
$conexion = mysql_connect($servidor, $usuario, $clave) or die(mysql_error());
mysql_select_db($basedatos, $conexion) or die(mysql_error());

// Obtener el $id_cliente del envio a si mismo del formulario ..
$id_cliente=$_POST['id_cliente'];

// Inicio Formulario .. PHP_SELF enviamos a si mismo (a este script).
echo "<form action=\"".$_SERVER['PHP_SELF']."\" method=\"POST\">\n\n";

// Formar Selec "de la tabla de los clientes".

echo " <b> Selecione Cliente </b> <br>";
echo "<select name=\"id_cliente\" onChange=\"this.form.submit()\">\n";
echo "<option value=\"\"> Seleccione un Item </option>\n";

$SQLconsulta="SELECT * FROM clientes";
$consulta_tabla = mysql_query($SQLconsulta,$conexion) or die(mysql_error());

While ($registro=mysql_fetch_assoc($consulta_tabla)){
// Se mira si el ID del registro es el mismo que el $id_cliente q recibimos si hemos cambiado el select hijo.
// Se selecciona en consecuencia (selected) la opción elegida.
if ($id_cliente == $registro['id_cliente']){
echo "<option value=\"".$registro['id_cliente']."\" selected>".$registro['nombre']."</option>\n";
} else {
echo "<option value=\"".$registro['id_cliente']."\">".$registro['nombre']."</option>\n";
}
}
echo "</select>\n\n";

mysql_free_result($consulta_tabla); // Liberar memoria usada por consulta.



echo "</select>\n\n";
echo "<input type=\"submit\" name=\"enviado\" value=\" Enviar \" >\n\n";
echo "</form>\n";
}

?>
</body>
</html>


Espero y te sirva...

saludos