Ya lo he solucionado, el siguiente código consulta la base de datos y en un combo extrae el nombre, de acuerdo al nombre seleccionado en el combo extrae un id en un campo texto, el código es el siguiente:
</html>
<head>
<title>Ingreso tablas</title>
<META name='robot' content='noindex, nofollow'>
<link href="/parqueo/favicon.ico" type="image/x-icon" rel="shortcut icon" />
<link rel="stylesheet" href="css/style.css" type="text/css" media="screen"/>
<link rel="stylesheet" href="css/body.css" type="text/css" media="screen"/>
</head>
<script src="js/scripts.js" type="text/javascript"> </script>
<body>
<a class="titu3">Ingreso Tablas</a>
<style>
body{
/*background:#333 url(bg2.jpg) repeat top left;*/
background:#333 url(bg3.jpg) repeat top left;
font-family:Arial;
}
</style>
<?php
include("seguridad.php");
// datos de conexión a la BD.
$servidor ="localhost"; // host
$usuario ="root";
$clave ="admin123";
$basedatos ="parqueadero"; // Indicar una Base de datos.
// si se ha pulsado el botón enviar ($enviado) se procesa el formulario ...
// Sino, se continua con el formulario y los nuevos valores de los Select ...
// OJO si se tienen más varibles (más <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 según corresponda.
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
$conexion = mysql_connect($servidor, $usuario, $clave) or die(mysql_error());
mysql_select_db($basedatos, $conexion) or die(mysql_error());
if (isset($_POST['id_padre'])){
// Obtener el $id_padre del envío a sí mismo del formulario cuando selccionamos el nombre la variable id_padre secrea por lo cual se evalúa
$id_padre=$_POST['id_padre'];
}
// Inicio Formulario .. PHP_SELF enviamos a sí mismo (a este script).
echo "<form method=\"POST\">\n\n";
// Formar Selec "Padre".
echo "<a class='texto2' >Nombre: </a>";
echo "<select name=\"id_padre\" onChange=\"this.form.submit()\" class='combo2' >\n";
echo "<option value=\"\"> Seleccione Nombre </option>\n";
$SQLconsulta_padre="SELECT * FROM clientes where estadocl = 2 and contrato = 2";
$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 que el $id_padre que recibimos si hemos cambiado el select hijo.
// Se selecciona en consecuencia (selected) la opción elegida.
if ($id_padre == $registro_padre['nombre']){
echo "<option value=\"".$registro_padre['nombre']."\" selected>".$registro_padre['nombre']."</option>\n";
} else {
echo "<option value=\"".$registro_padre['nombre']."\">".$registro_padre['nombre']."</option>\n";
}
}
echo "</select>\n\n";
mysql_free_result($consulta_padre); // Liberar memoria usada por consulta.
// Formar Select "Hijo"
/* original echo "<select name=\"id_hija\">\n";*/
// Si $id_padre no tiene valor (caso de que no se ha seleccionado ninguna opción del select hijo
// se muestra el mensaje de "seleccine un item" (del select padre).
if (!empty($id_padre)){
$SQLconsulta_hija="SELECT * FROM clientes WHERE nombre='$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)){
/*original echo "<option value=\"".$registro_hija['ident']."\" class='combo2'>".$registro_hija['ident']."</option>\n";*/
echo "<a class='texto2' >Identificador: </a>";
echo "<input type='text' class='caja2' id='id_hija' name=\"id_hija\" size='40' value='".$registro_hija['ident']."' onfocus='this.blur()'> ";
}
} else {
echo "<option value=\"\"> No hay registros para este Item </option>";
}
} /*else {
/* original echo "<option value=\"\"> <-- Seleccione un Item </option>";*/
/* original }*/
// libera memoria cuando la varibale id_padre ha sido creada
/* original mysql_free_result($consulta_hija); // Liberar memoria usada por consulta.*/
/* original echo "</select>\n\n";*/
echo "<br><input type=\"submit\" name=\"enviado\" value=\"Generar \" class='btn2'>\n\n";
echo "</form>\n";
}
?>
</body>
</html>