Ver Mensaje Individual
  #6 (permalink)  
Antiguo 21/07/2014, 11:43
xerifandtomas
 
Fecha de Ingreso: octubre-2010
Ubicación: España
Mensajes: 1.007
Antigüedad: 13 años, 6 meses
Puntos: 123
Respuesta: Formulario Condicional (como lo guardo)?

Cita:
Iniciado por davidparlow Ver Mensaje
No se si sea fundamental, pero se me olvido colocar el codigo de cada combo

Combo1:

Código PHP:
Ver original
  1. <?php
  2. $rpta="";
  3. if ($_POST["elegido"]=="op1_1") {
  4.     $rpta= '
  5.    <option value="op2_1">Software</option>
  6.    <option value="op2_2">Hardware</option>
  7.    <option value="op2_3">Internet</option>
  8.    ';    
  9. }
  10. if ($_POST["elegido"]=="op1_2") {
  11.     $rpta= '
  12.    <option value="op4_1">Instalacion</option>
  13.    <option value="op4_2">Reubicacion</option>
  14.    <option value="op4_3">Cambio</option>
  15.    ';    
  16. }
  17. if ($_POST["elegido"]=="op1_3") {
  18.     $rpta= '
  19.    <option value="op2_1">Option</option>
  20.    <option value="op2_2">Option</option>
  21.    ';    
  22. }
  23. echo $rpta;    
  24. ?>

Combo 2:

Código PHP:
Ver original
  1. <?php
  2. $rpta="";
  3. if ($_POST["elegido"]=="op2_1") {
  4.     $rpta= '
  5.    <option value="op3_1">Office</option>
  6.    <option value="op3_2">Adobe</option>
  7.    <option value="op3_3">Windows</option>
  8.    <option value="op3_4">Virus</option>
  9.    ';    
  10. }
  11. if ($_POST["elegido"]=="op2_2") {
  12.     $rpta= '
  13.    <option value="op3_1">Laptop</option>
  14.    <option value="op3_2">Monitor</option>
  15.    <option value="op3_3">Mouse</option>
  16.    <option value="op3_3">Teclado</option>
  17.    <option value="op3_3">Impresora</option>
  18.    <option value="op3_3">CPU</option>
  19.    ';    
  20. }
  21.  
  22. if ($_POST["elegido"]=="op2_3"){
  23.     $rpta= '
  24.    <option value="op3_1">Internet</option>
  25.    ';
  26. }
  27.  
  28. if ($_POST["elegido"]=="op4_1"){
  29.     $rpta= '
  30.    <option value="op3_1">Antivirus</option>
  31.    <option value="op3_1">Office</option>
  32.    <option value="op3_1">Adobe</option>
  33.    <option value="op3_1">Windows</option>
  34.    ';
  35. }
  36.  
  37. if ($_POST["elegido"]=="op4_2"){
  38.     $rpta= '
  39.    <option value="op3_1">Equipo</option>
  40.    <option value="op3_1">Impresora</option>
  41.    <option value="op3_1">Nodo</option>
  42.    
  43.    ';
  44. }
  45.  
  46. if ($_POST["elegido"]=="op4_3"){
  47.     $rpta= '
  48.    <option value="op3_1">Equipo de computo</option>
  49.    ';
  50. }
  51. echo $rpta;    
  52. ?>

aparte, mencionabas que como esta estructurada mi base de datos, debo de decir que antes mi base de datos en esa parte del multiselect, era solo un select donde habia cuatro opciones "red, hardware, software y otra que no recuerdo", entonces se iban a la base de datos como la de "empresa" y la de "ubicacion" es decir se pasaban mediante "int" a la base y esta los asignaba a cada tabla

adjunto tambien mi archivo donde tomaba las bases "el de antes"

Código PHP:
Ver original
  1. <?php
  2. include("./Funciones/Funciones.php");
  3. $con = conecta ();
  4.  
  5. $empresa=$_POST['empresa'];
  6. $nombre=$_POST['nombre'];
  7. $correo=$_POST['correo'];
  8. $ubicacion=$_POST['ubicacion'];
  9. $tipo_fallo=$_POST['tipo_fallo'];
  10. $observaciones=$_POST['observaciones'];
  11.  
  12. $sql="INSERT INTO fallos VALUES (0,'$empresa','$nombre','$correo',$ubicacion,'$tipo_fallo','$observaciones',1)";
  13. mysql_query($sql,$con);
  14.  
  15.  
  16. $header = 'From: ' . $correo ."\r\n";
  17. $header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
  18. $header .= "Mime-Version: 1.0 \r\n";
  19. $header .= "Content-Type: text/plain";
  20.  
  21. $mensaje = "Este mensaje fue enviado por " . $nombre . " \r\n";
  22. $mensaje .= "Su e-mail es: " . $correo . " \r\n";
  23. $mensaje .="estas son las observaciones".$_POST['observaciones'] . " \r\n";
  24. $mensaje .= "Enviado el " . date('d/m/Y', time());
  25.  
  26. $para = '[email protected]';
  27. $asunto = '-';
  28.  
  29. mail($para, $asunto, utf8_decode($mensaje), $header);
  30.  
  31.  
  32.  
  33. header("Location: reporte_fallos.php");
  34.  
  35. ?>

entonces... ya no se como enviar a la base el codigo que me pasaste

Código PHP:
Ver original
  1. $NombreCampo = (isset($_POST['combo1']) &&($_POST['combo1'] != ''))?$_POST['combo1']:NULL;
  2. $NombreCampo = ($NombreCampo!= NULL)?$_POST['combo2']:NULL;
  3.  
  4. $Consulta = 'INSERT INTO NombreTabla (Nombrecampo1) VALUES ('$NombreCampo')':

por que ya no se si funciona con mi archivo de la base anterior donde ("tipo_fallo") era un entero, adjunto las fotos de como estaba estructurado antes



con esta nueva implementacion del select condicional, modifique la tabla de "tipo_fallo" donde antes estaban los campos de "id" y "nombre" donde recibia la "id" que se habia mandado en el formulario segun el "nombre" de fallo.

Ahora no se si este bien lo que hice de mi tabla tener los campos de "id", "select1", "select2", y "select3", espero y puedan ayudarme
creo que el compañero ya te resolvio el problema, solo decir que aun que tus images a modo de ilustracion estan muy bien, seria recomendable que evites mostrar datos sensibles o de terceros, como nombre, apellidos, email etc...
esto es un lugar publico, tenlo encuenta.