Las ideas empiezan por separado, y asi estas no dan problema, el problema bien cuando intentamos usar las juntas.
1. Pues Primero creamos un formulario que sirve para crear alabaranes, funciona correcto y es la ostia, no es que lo haya hecho yo, es que funciona bien
![Afirmando](http://static.forosdelweb.com/fdwtheme/images/smilies/afirmar.gif)
2. Tenemos un listado en el que tras selecionar algo nos deja una nueva selecion, cosa que usa un formulario con self. (aqui os dejo el codigo para curiosos, y porque es bastante util para estas cosillas).
Bien el problema es que cuando quiero usar los dos a la vez, el segundo llama al primer formulario, y la pregunta es sencilla, hay algun a forma de evitar que auto envie el primer formulario en vez de el segundo y que solo envie el primero cuando yo clikeo en enviar ?
Código PHP:
<?php
$servidor ="localhost";
$usuario ="root";
$clave ="123456";
$basedatos ="erp";
if (!empty($_POST['enviado'])){
echo "Procesando formulario:<br>";
echo "Recibido id_departamentos: ".$_POST['id_padre']."<br>";
echo "Recibido id_areas: ".$_POST['id_hija']."<br>";
echo "Recibido id_profesores: ".$_POST['id_hija2'];
} else {
$conexion = mysql_connect($servidor, $usuario, $clave) or die(mysql_error());
mysql_select_db($basedatos, $conexion) or die(mysql_error());
$id_padre=$_POST['id_padre'];
$id_hija=$_POST['id_hija'];
echo "<form name=\"self\" action=\"".$_SERVER['PHP_SELF']."\" method=\"POST\">\n\n";
echo "<select name=\"id_padre\" onChange=\"this.form.submit()\">\n";
echo "<option value=\"\"> Seleccione un Item </option>\n";
$SQLconsulta_padre="SELECT * FROM departamentos";
$consulta_padre = mysql_query($SQLconsulta_padre,$conexion) or die(mysql_error());
While ($registro_padre=mysql_fetch_assoc($consulta_padre)){
if ($id_padre == $registro_padre['id']){
echo "<option value=\"".$registro_padre['id']."\" selected>".$registro_padre['nombre']."</option>\n";
} else {
echo "<option value=\"".$registro_padre['id']."\">".$registro_padre['nombre']."</option>\n";}
}
echo "</select>\n\n";
mysql_free_result($consulta_padre);
echo "<select name=\"id_hija\" onChange=\"this.form.submit()\">\n";
echo "<option value=\"\"> Seleccione un Item </option>\n";
if (!empty($id_padre)){
$SQLconsulta_hija="SELECT * FROM areas WHERE dependencia='$id_padre'";
$consulta_hija = mysql_query($SQLconsulta_hija,$conexion) or die(mysql_error());
While ($registro_hija=mysql_fetch_assoc($consulta_hija)){
if ($id_hija == $registro_hija['id']){
echo "<option value=\"".$registro_hija['id']."\" selected>".$registro_hija['nombre']."</option>\n";
} else {
echo "<option value=\"".$registro_hija['id']."\">".$registro_hija['nombre']."</option>\n";}
}
echo "</select>\n\n";}
mysql_free_result($consulta_hija);
echo "<select name=\"id_hija2\">\n";
echo "<option value=\"\"> Seleccione un Item </option>\n";
if (!empty($id_hija)){
$SQLconsulta_hija2="SELECT * FROM profesores WHERE dependencia='$id_hija'";
$consulta_hija2 = mysql_query($SQLconsulta_hija2,$conexion) or die(mysql_error());
if (mysql_num_rows($consulta_hija2) != 0){
While ($registro_hija2=mysql_fetch_assoc($consulta_hija2)){
echo "<option value=\"".$registro_hija2['id']."\">".$registro_hija2['nombre']."</option>\n";
}
} else {
echo "<option value=\"\"> No hay registros para este Item </option>";
}
}
mysql_free_result($consulta_hija2); // Liberar memoria usada por consulta.
echo "</select>\n\n";
echo "<input type=\"submit\" name=\"enviado\" value=\" Enviar \" >\n\n";
echo "</form>\n";
}
?>