Ver Mensaje Individual
  #6 (permalink)  
Antiguo 25/05/2012, 09:33
fanta_1988
 
Fecha de Ingreso: mayo-2012
Mensajes: 3
Antigüedad: 12 años, 6 meses
Puntos: 0
Busqueda Respuesta: como guardar los datos extraidos de combox dependientes de una base de da

mira aki les muestro los codigos uno es php: proyectos.php
Código PHP:
Ver original
  1. <?php
  2. function generaCliente()
  3. {
  4.     include 'conexion.php';
  5.     conectar();
  6.     $consulta=mysql_query("SELECT id, opcion FROM lista_cliente");
  7.     desconectar();
  8.    
  9.     // Voy imprimiendo el primer select
  10.     echo "<select name='cliente' id='cliente' onChange='cargaContenido(this.id)'>";
  11.     echo "<option value='convert.tostring(combo_box.SelectedValue)'>***********Select**********</option>";
  12.     /*echo "string nombre=convert.tostring(combo_box.SelectedValue)";*/
  13.     while($registro=mysql_fetch_row($consulta))
  14.     {
  15.         echo "<option value='".$registro[0]."'>".$registro[1]."</option>";
  16.     }
  17.     echo "</select>";
  18. }
  19. include("../conect.php");
  20. $link=conectarse();
  21. $sql="select id_software,nombre from job_type order by nombre asc";
  22. $result=mysql_query($sql);
  23. ?>
  24.  
  25.  
  26. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
  27. <html lang="es">
  28. <head>
  29. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  30. <title>BUILDING PROJECTS</title>
  31. <link rel="stylesheet" type="text/css" href="">
  32. <script type="text/javascript" src="select_proyectos.js"></script>
  33. <style type="text/css">
  34. <!--
  35. .Estilo1 {font-size: 24}
  36. -->
  37. </style>
  38. </head>
  39. <script language="javascript">
  40.     function validar()
  41.     {
  42.         if (document.proyectos.nombre_proyecto.value=="")
  43.         {
  44.         alert ("Need to fill Project Name");
  45.         return false;
  46.         }
  47.             if (document.proyectos.tipo_proyecto.value=="0")
  48.             {
  49.             alert ("Need to fill Type of Proyect");
  50.             return false;
  51.             }
  52.                 if (document.proyectos.demo.value=="nulo")
  53.                 {
  54.                 alert ("Need to fill customers");
  55.                 return false;
  56.                 }
  57.                     if (document.proyectos.empresa.value=="")
  58.                     {
  59.                     alert ("Need to fill Company");
  60.                     return false;
  61.                     }
  62.                         if (document.proyectos.total_horas.value=="")
  63.                         {
  64.                         alert ("Need to fill Total of hours");
  65.                         return false;
  66.                         }
  67.                             if (document.proyectos.costo_proyecto.value=="")
  68.                             {
  69.                             alert ("Need to fill Project cost");
  70.                             return false;
  71.                             }
  72.                                 if (document.proyectos.fecha_inicio.value=="")
  73.                                 {
  74.                                 alert ("Need to fill Start date");
  75.                                 return false;
  76.                                 }
  77.                                     if (document.proyecto.fecha_final.value=="")
  78.                                     {
  79.                                     alert ("Need to fill Date completion");
  80.                                     return false;
  81.                                     }
  82.                                         if (document.proyecto.nota.value=="")
  83.                                         {
  84.                                         alert ("Need to fill Note")
  85.                                         return false;
  86.                                         }
  87. }
  88. </script>                          
  89. <body>
  90. <form action="proyectos_insert.php" method="POST" name="proyectos" onSubmit="return validar()">
  91. <p align="center"><strong>BUILDING PROJECTS</strong></p>
  92. <table width="527" border="0" align="center">
  93.   <tr>
  94.     <td width="244"><strong>PROJECT NAME: </strong></td>
  95.     <td width="300"><input name="nombre_proyecto" type="text" size="48"></td>
  96.   </tr>
  97.   <tr>
  98.     <td><strong>TYPE OF PROJECT: </strong></td>
  99.     <td><select name="tipo_proyecto">
  100. <option value="0">***********Select**********</option>
  101. <?
  102. while($fila=mysql_fetch_row($result)){
  103.     echo"<option value='".$fila['0']."'>".$fila['1']."</option>";
  104. }
  105. ?>
  106. </select></td>
  107.   </tr>
  108.   <tr>
  109.     <td height="23"><strong>CUSTOMERS:</strong></td>
  110.     <td><div id="demo" style="width:300px;">
  111.       <div id="demoDer"><?php generaCliente(); ?>
  112.       </div>
  113.      
  114.       </div></td>
  115.   </tr>
  116.   <tr>
  117.     <td><p><strong>COMPANY:</strong></p></td>
  118.     <td><div id="demoIzq"><select disabled="disabled" name="empresa" id="empresa">
  119.       <option value="0">**********Select***********</option>
  120.     </select>
  121.     </div></td>
  122.   </tr>
  123.   <tr>
  124.     <td><strong>TOTAL OF HOURS: </strong></td>
  125.     <td><input name="total_horas" type="text" size="48"></td>
  126.   </tr>
  127.   <tr>
  128.     <td><strong>PROJECT COST: </strong></td>
  129.     <td><input name="costo_proyecto" type="text" size="48"></td>
  130.   </tr>
  131.   <tr>
  132.     <td><span class="Estilo1"></span><strong>START  DATE: </strong></td>
  133.     <td><input name="fecha_inicio" type="text" size="48"></td>
  134.   </tr>
  135.   <tr>
  136.     <td><strong>DATE  COMPLETION: </strong></td>
  137.     <td><input name="fecha_final" type="text" size="48"></td>
  138.   </tr>
  139.   <tr>
  140.     <td><strong>NOTE:</strong></td>
  141.     <td>
  142.       <label>
  143.         <textarea name="nota" cols="37"></textarea>
  144.       </label>    </td>
  145.   </tr>
  146.   <tr>
  147.     <td colspan="2"><div align="center">
  148.       <input name="Submit" type="Submit" value="Save">
  149.     </div></td>
  150.   </tr>
  151. </table>
  152. <p>
  153. <input name="button" type="button" onClick="window.location.href='modulo_ventas.php'" value="go to module sales"/>
  154. </p>
  155. </body>
  156. </html>

ahora el codigo cuando inserto datos en php: proyectos_insert.php
Código PHP:
Ver original
  1. <?php
  2. include("../conect.php");
  3. $link=conectarse();
  4.  
  5. $nombre_proyecto=$_POST['nombre_proyecto'];
  6. $tipo_proyecto=$_POST['tipo_proyecto'];
  7. $cliente= $_POST['cliente'];
  8. $empresa=$_POST['empresa'];
  9. $total_horas=$_POST['total_horas'];
  10. $costo_proyecto=$_POST['costo_proyecto'];
  11. $fecha_inicio=$_POST['fecha_inicio'];
  12. $fecha_final=$_POST['fecha_final'];
  13. $nota=$_POST['nota'];
  14.  
  15.  
  16.  
  17. $sql="insert into proyectos
  18. (nombre_proyecto,tipo_proyecto,cliente,empresa,total_horas,costo_proyecto,fecha_inicio,fecha_final,nota)
  19. values ('$nombre_proyecto','$tipo_proyecto','$cliente','$empresa','$total_horas','$costo_proyecto','$fecha_inicio','$fecha_final','$nota')";
  20.  
  21. mysql_query($sql,$link);
  22.  
  23. //echo $sql;
  24. echo "<script>alert('The data has been saved')</script>";
  25. echo "<script>window.location.href='proyectos.php'</script>";
  26. ?>

en procesos:
<?php
// Array que vincula los IDs de los selects declarados en el HTML con el nombre de la tabla donde se encuentra su contenido
$listadoSelects=array(
"cliente"=>"lista_cliente",
"empresa"=>"lista_empresa"
);

function validaSelect($selectDestino)
{
// Se valida que el select enviado via GET exista
global $listadoSelects;
if(isset($listadoSelects[$selectDestino])) return true;
else return false;
}

function validaOpcion($opcionSeleccionada)
{
// Se valida que la opcion seleccionada por el usuario en el select tenga un valor numerico
/*cambie is_numeric por is_object*/if(is_numeric($opcionSeleccionada)) return true;
else return false;
}
$selectDestino=$_GET["select"]; $opcionSeleccionada=$_GET["opcion"];

if(validaSelect($selectDestino) && validaOpcion($opcionSeleccionada))
{
$tabla=$listadoSelects[$selectDestino];
include 'conexion.php';
conectar();
$consulta=mysql_query("SELECT id, opcion FROM $tabla WHERE relacion='$opcionSeleccionada'") or die(mysql_error());
desconectar();

// Comienzo a imprimir el select
echo "<select name='".$selectDestino."' id='".$selectDestino."' onChange='cargaContenido(this.id)'>";
echo "<option value='0'>Elige</option>";
while($registro=mysql_fetch_row($consulta))
{
// Convierto los caracteres conflictivos a sus entidades HTML correspondientes para su correcta visualizacion
$registro[1]=htmlentities($registro[1]);
// Imprimo las opciones del select
echo "<option value='".$registro[0]."'>".$registro[1]."</option>";
}
echo "</select>";
}
?>