Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/10/2004, 18:09
Avatar de fmmeson
fmmeson
 
Fecha de Ingreso: enero-2002
Ubicación: Tucuman
Mensajes: 401
Antigüedad: 22 años, 3 meses
Puntos: 2
problema con combos relacionados

hola amigos......paso a contarles el problema q tengo:
tengo una BD en mysql q contiene 2 tablas:
tabla_padre q tiene los siguientes campos:
-id
-marca
-tipo
tabla_hija tiene los siguientes campos:
-id
-id_padre
-modelo

resulta q tengo el siguiente scripts:

combos.php
Código PHP:
<?php
if (!empty($_POST['enviado'])) {
    
// Procesar el formulario ...
    
echo "Procesando formulario:<br>";
    echo 
"Recibido id_tabla_padre: " $_POST['id_padre'] . "<br>";
    echo 
"Recibido id_tabla_hija: " $_POST['id_hija'];
} else {
    
// Conexión a la BD
    
include("conexion_bd.php");
    
// Obtener el $id_padre del envio a si mismo del formulario ..
    
$id_padre $_POST['id_padre']; 
    
// Inicio Formulario .. PHP_SELF enviamos a si mismo (a este script).
    
echo "<form action=\"" $_SERVER['PHP_SELF'] . "\" method=\"POST\">\n\n"
    
// Formar Selec "Padre".
    
echo "<select name=\"id_padre\" onChange=\"this.form.submit()\">\n";
    echo 
"<option value=\"\"> Seleccione una Marca </option>\n";
    
$SQLconsulta_padre "SELECT * FROM tabla_padre WHERE tipo='Motherboard'";
    
$consulta_padre mysql_query($SQLconsulta_padre$conexion) or die(mysql_error());
    While (
$registro_padre mysql_fetch_assoc($consulta_padre)) {
        
// Se mira si el ID del registro es el mismo q el $id_padre q recibimos si hemos cambiado el select hijo.
        // Se selecciona en consecuencia (selected) la opción elegida.
        
if ($id_padre == $registro_padre['id']) {
            echo 
"<option value=\"" $registro_padre['id'] . "\" selected>" $registro_padre['marca'] . "</option>\n";
        } else {
            echo 
"<option value=\"" $registro_padre['id'] . "\">" $registro_padre['marca'] . "</option>\n";
        } 
    } 
    echo 
"</select>\n\n";
    
mysql_free_result($consulta_padre); // Liberar memoria usada por consulta.  
    // Formar Select "Hijo"
    
echo "<select name=\"id_hija\">\n"
    
// Si $id_padre no tiene valor (caso de que no se ha seleccionado ningua opcion del select hijo
    // se muestra el mensaje de "seleccine un item" (del select padre).
    
if (!empty($id_padre)) {
        
$SQLconsulta_hija "SELECT * FROM tabla_hija WHERE id_padre='$id_padre'";
        
$consulta_hija mysql_query($SQLconsulta_hija$conexion) or die(mysql_error()); 
        
// se mira el total de registros de la consulta .. si es 0 se muestra mensaje en el select ..
        
if (mysql_num_rows($consulta_hija) != 0) {
            While (
$registro_hija mysql_fetch_assoc($consulta_hija)) {
                echo 
"<option value=\"" $registro_hija['id'] . "\">" $registro_hija['modelo'] . "</option>\n";
            } 
        } else {
            echo 
"<option value=\"\"> No hay modelos para esta marca </option>";
        } 
    } else {
        echo 
"<option value=\"\"> <-- Seleccione un Modelo  </option>";
    } 
    
mysql_free_result($consulta_hija); // Liberar memoria usada por consulta.
    
echo "</select>\n\n";
    echo 
"<input type=\"submit\" name=\"enviado\" value=\" Enviar \" >\n\n";
    echo 
"</form>\n";

?>
conexion.php
Código PHP:
<?php
$dbhost 
'localhost';
$dbusuario '';
$dbpasswd '';
$database_name 'inticomp';
$connection mysql_pconnect("$dbhost","$dbusuario","$dbpasswd") or die ("No se puede conectar al Servidor.");
$db mysql_select_db("$database_name"$connection) or die("No se puede seleccionar la base de datos.");
?>
el problema en si es q no me genera los 2 combos con los datos correspodientes
probe con la conexion todo pero no consigo q se armen automaticamente......si alguien sabe cual es el error se lo agradeceria enormemente
__________________
Lo que se hace por AMOR esta mas allá del BIEN y del MAL - Friedrich Nietzsche
http://www.hispanogeek.com.ar
Desarrollador IT -