Ir al contenido


Foto

AYUDA CON SELECTS DEPENDIENTES


  • Por favor identifícate para responder
3 respuestas en este tema

#1 raul_mx

raul_mx

    Newbie

  • Miembros
  • Pip
  • 2 mensajes

Escrito 29 mayo 2013 - 02:49

Hola a todos, ojala alguien pueda ayudarme... apenas incio mi viaje en php y javascript y me esta costando mucho trabajo aprenderlo... segui el video 25 de César Cancino, los selects funcionan correctamente, pero ahora quiero tomar el valor seleccionado y guardarlo en una base de datos que tengo en mysql....lo normal sería así no?....

Número de oficio: <input type="text" name="n_oficio" size="20"></p><hr />
<input type="submit" value="Guardar datos" name="B1"></p> <br>


ahi defino que es entrada de texto y que lo almacene en el campo n_oficio... pero no se como hacerle en el que hice siguiendo el video de selects... estoy atorado en esta parte... donde defino a que campo dirijo ese valor?....

<select name="ramo" onchange="from(document.form.ramo.value,'ur','ur.php')">
<option value="0">Seleccione el Ramo</option>
<?php
while ($ramo = mysql_fetch_array($ram))
{
?>
<option value="<?php echo $ramo["ramo"];?>"><?php echo $ramo["descripcion"];?></option>;


Muchas gracias de antemano por sus respuestas.
  • 0

#2 JRichard

JRichard

    Advanced Member

  • Miembros
  • PipPipPip
  • 67 mensajes

Escrito 01 junio 2013 - 09:27

Saludos raul_mx, según lo que entendí necesitas tomar el valor que lleva  la caja de texto "n_oficio" y el combobox "ramo", y almacenarlo en la Base de Datos, Ok?

1.- En el código que muestras no veo que método estas utilizando para el envío de datos, o sea, $_POST o $_GET. Solo veo que mediante el evento onchange en el combo a través de la jerarquía de objetos llegas al valor que tiene el combobox. Te aconsejo que si estas comenzando a programar en php trata de no usar estas cosas ya que te van a confundir más, a medida que vayas avanzando y entendiendo las iras usando, pero no php y javascript de golpe porque es mucha información y si quieres ser un buen programador web lo ideal es ir por partes, muchas personas colocan curso de programación en php y javascript pero no explican lo básico.

2.- Yo lo haría así, voy asumir que estas utlizando un objeto Form, o etiqueta como la llaman en Html:

Todo los objetos que vayas a utilizar para enviar o mostrar datos deben estar dentro de este form.

Así está estructurado el Form, lo que no entiendas lo puedes investigar, sobre todo los método de envío y captura
$_POST, $_GET.

<form id="formulario" name="formulario" method="post" action="">

  Número de oficio: <input type="text" name="n_oficio" size="20"></p><hr />
  <input type="submit" value="Guardar datos" name="B1"></p> <br>

  <select name="ramo">
  <option value="0">Seleccione el Ramo</option>
  <?php
  while ($ramo = mysql_fetch_array($ram))
  {
    ?>
  <option value="<?php echo $ramo["ramo"];?>"><?php echo $ramo["descripcion"];?></option>;
  <?php
  }      >>SUPONGO QUE AQUÍ CIERRA EL CICLO WHILE
  ?>
</form> >>FIN DEL FORM

Como verás todos los objetos de los cuales vas a obtener los datos se encuentran dentro de esta etiqueta u objeto. También le quite
el evento onchange al botón, ahora dentro de un bloque de código php vas hacer lo siguiente:

<?php

if(isset($_POST['B1'])) >>Compruebas si estas presionando el botón B1
{
  >>CREAS LAS VARIABLES QUE ALMACENARAN LOS VALORES
 
  $oficio = $_POST['n_oficio'];
  $ramo = $_POST['ramo']    >> OJO, AQUÍ LE PASAMOS EL NOMBRE DEL COMBO, O SEA, EL QUE TIENE LA ETIQUETA <SELECT>

  >> SI QUIERES PUEDES VALIDAR QUE ESTAS VARIABLES NO SE ENCUENTRAN VACÍAS PARA NO TENER PROBLEMAS AL ENVIAR DATOS A LA BASE DE DATOS

  if($oficio != "" && $ramo!= "")
  {

      >>INSERTAMOS EN LA BASE DE DATOS

    mysql_query("insert into nombre_tabla (nombre_campos) values ('$oficio','$ramo')");

      >>CON ESTO YA INSERTAS

    }else    >>EN CASO DE QUE ALGUNA VARIABLE ESTE VACÍA MANDAMOS UN MENSAJE SENCILLO CON JAVASCRIPT
    {
      echo "<script>alert('Llene todos lo campos')</script>";
    }
                                           
}

>?

Espero te sirva.!
  • 0

#3 raul_mx

raul_mx

    Newbie

  • Miembros
  • Pip
  • 2 mensajes

Escrito 05 junio 2013 - 08:17

Funcionooooooo !!!!! ... muchas gracias por tu ayuda !!!!.... Saludos......
  • 0

#4 JRichard

JRichard

    Advanced Member

  • Miembros
  • PipPipPip
  • 67 mensajes

Escrito 05 junio 2013 - 08:28

De nada, me alegro que te haya servido.! (y)
  • 0




IP.Board spam blocked by CleanTalk.