Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Porblema con 2 tipos de submit en un form

Estas en el tema de Porblema con 2 tipos de submit en un form en el foro de PHP en Foros del Web. ¡Hola que tal, buenas tardes;noches;dias, tengo un pequeño problema con un formulario espero me puedan ayudar! Aqui la explicación: Tengo un archivo en el cual ...
  #1 (permalink)  
Antiguo 08/12/2014, 19:18
Avatar de Rauliito  
Fecha de Ingreso: mayo-2014
Mensajes: 10
Antigüedad: 9 años, 10 meses
Puntos: 0
Porblema con 2 tipos de submit en un form

¡Hola que tal, buenas tardes;noches;dias, tengo un pequeño problema con un formulario espero me puedan ayudar!

Aqui la explicación:

Tengo un archivo en el cual creo 1 formulario, este formulario contiene 2 submit, pero obviamente quiero que hagan 2 cosas diferentes por ejemplo:

Tengo un input asi:

Código HTML:
<input type="button" name="nuevo" class="btn btn-default" onclick = "this.form.action = 'Funciones/AltaCliente.php'; this.form.submit()" value="Agregar Usuario" /> 
Obviamente este boton quiero que de de alta a un usuario en la BD, obteniendo datos que se agregan previamente aqui:

Código HTML:
 <div class="control-group">
          
            <label class="control-label">Cliente</label>
            <div class="controls">
              <input type="text" class="input" name="atencion" title="Ingresa el nombre" required placeholder="Nombre" id="atencion">
              <input type="text" class="input" name="apellido" title="Ingresa el apellido" required placeholder="Apellido" id="aten-apelli">
			  <input type="text" class="input-small" name="telefono" title="Ingresa el un numero telefonico." required placeholder="Teléfono" id="telefono"><br />
			  <input type="text" class="input" name="correo" title="Ingresa el correo"  required placeholder="Correo" id="correo">
			  <input type="text" class="input" name="rfc" title="Ingresa el RFC" required placeholder="RFC" id="RFC">
			  <input type="button" name="nuevo" class="btn btn-default" onclick = "this.form.action = 'Funciones/AltaCliente.php'; this.form.submit()" value="Agregar Usuario" /> 
            </div>
          </div> 
Ahora, cuando le doy click, hago que se envie a este AltaCliente.php:

Código PHP:
<?php

require ('../../mysqli_connect.php');

    
$nombre $_POST['atencion'];
    
$apllido $_GET['apellido'];
    
$telefono $_GET['telefono'];
    
$RFC $_GET['RFC'];
    
$email $_GET['correo'];

    
/* Verificamos si este cliente ya esta en la BD */
    
$q "SELECT nombre_cli FROM clientes WHERE nombre_cli = '$nombre' ";
    
$r mysqli_query($dbc$q);
    
$num mysqli_num_rows($r);

    if (
$num 0) {
        echo 
'<script> alert("!! Ya existe un cliente con este nombre, no se puede duplicar los nombres !!");
         window.location="../cotizador.php?update=true";</script>'
;
    }

    
/* Si el usuario no esta Registrado, procede a guardarlo en la BD*/
    
else {
        
$inserta "INSERT INTO clientes(nombre_cli,apellido_cli,telefono_cli,RFC_cli,email_cli) VALUES('$nombre','$apllido','$telefono','$RFC','$email')";
        
        
/* Confirmamos que los datos fueron ingresados correctamente*/
        
echo '<script> alert("!!!Datos fueron registrados satisfactoriamente en la Base de Datos!!!");
     window.location="../cotizador.php?update=true";</script>'
;
    }
    
$resultado mysqli_query($dbc$inserta);
    
?>
Y dice que guarda el cliente, pero todos los datos que se guardan en la BD estan vacios :s, no toma los datos :/, y obviamente al darle de nuevo Agregar Usuario me dice que ese usuario ya esta dado de alta en el sistem :(

P.D. El otro submit que les comentaba, hace otra funcion muy independiente a eso, pero eso si lo hace bien.

No se si me habré explicado bien :)
  #2 (permalink)  
Antiguo 08/12/2014, 19:43
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Porblema con 2 tipos de submit en un form

¿El formulario es POST o GET?

¿Estás 100% seguro de lo que estás haciendo?

Porque en tu código parece ser que tomas los datos de ambos lados.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 09/12/2014, 10:33
 
Fecha de Ingreso: agosto-2008
Ubicación: Miami, FL
Mensajes: 210
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: Porblema con 2 tipos de submit en un form

Mira, yo para ejecutar dos submit en un mismo form pero con distintos archivos a ejecutar utilizo este codigo:

Código Javascript:
Ver original
  1. <script languaje="javascript">
  2.  
  3. function valida1(){
  4. document.forma.action= "archivo.php";
  5. document.forma.method= 'POST';
  6. document.forma.submit();
  7. }
  8.  
  9. function valida2(){
  10. document.forma.action= "archivo2.php";
  11. document.forma.method= 'POST';
  12. document.forma.submit();
  13. }
  14. </script>

este script en el head de tu web

y dentro del form los dos submit:
Código HTML:
Ver original
  1. <form name="forma" id="forma" method="post" action="">
  2.  
  3.  
  4. <input name='enviar1' type='button' class='button' id='enviar1' value='Accion 1' onclick='valida1()' >
  5.  
  6. <input name="enviar2" type="submit" class="button" id="enviar2" value="Accion 2" onclick='valida2()' ></td>
  7.  
  8. </form>

Espero que te sirva.

Saludos
__________________
Se invierte mas dinero en cirugía de pechos y viagra que en la cura del Alzheimer. En unos años tendremos viejas con grandes tetas y viejos con erecciones pero que no recordarán para que sirven..

Última edición por desoler; 09/12/2014 a las 10:34 Razón: mas agregado
  #4 (permalink)  
Antiguo 09/12/2014, 17:14
Avatar de Rauliito  
Fecha de Ingreso: mayo-2014
Mensajes: 10
Antigüedad: 9 años, 10 meses
Puntos: 0
Respuesta: Porblema con 2 tipos de submit en un form

Cita:
Iniciado por pateketrueke Ver Mensaje
¿El formulario es POST o GET?

¿Estás 100% seguro de lo que estás haciendo?

Porque en tu código parece ser que tomas los datos de ambos lados.
Jajaja lo siento, fue un error que se me fue el POST y el GET lo que pasa es que lo estaba editando y no lo deje todos en POST!
  #5 (permalink)  
Antiguo 09/12/2014, 17:15
Avatar de Rauliito  
Fecha de Ingreso: mayo-2014
Mensajes: 10
Antigüedad: 9 años, 10 meses
Puntos: 0
Respuesta: Porblema con 2 tipos de submit en un form

Cita:
Iniciado por pateketrueke Ver Mensaje
¿El formulario es POST o GET?

¿Estás 100% seguro de lo que estás haciendo?

Porque en tu código parece ser que tomas los datos de ambos lados.
Cita:
Iniciado por desoler Ver Mensaje
Mira, yo para ejecutar dos submit en un mismo form pero con distintos archivos a ejecutar utilizo este codigo:

Código Javascript:
Ver original
  1. <script languaje="javascript">
  2.  
  3. function valida1(){
  4. document.forma.action= "archivo.php";
  5. document.forma.method= 'POST';
  6. document.forma.submit();
  7. }
  8.  
  9. function valida2(){
  10. document.forma.action= "archivo2.php";
  11. document.forma.method= 'POST';
  12. document.forma.submit();
  13. }
  14. </script>

este script en el head de tu web

y dentro del form los dos submit:
Código HTML:
Ver original
  1. <form name="forma" id="forma" method="post" action="">
  2.  
  3.  
  4. <input name='enviar1' type='button' class='button' id='enviar1' value='Accion 1' onclick='valida1()' >
  5.  
  6. <input name="enviar2" type="submit" class="button" id="enviar2" value="Accion 2" onclick='valida2()' ></td>
  7.  
  8. </form>

Espero que te sirva.

Saludos
¡Muchas gracias men!

Me sirvio tu comentario, tube que poner mis 2 formularios en funciones diferentes :)

Etiquetas: form, formulario, mysql, select, submit
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:47.