Foros del Web » Programando para Internet » Javascript »

Mandar un form en un alert.

Estas en el tema de Mandar un form en un alert. en el foro de Javascript en Foros del Web. Hola, tengo este php que es la respuesta de otro código y lo que quiero es cuando confirme el alert mandar un formulario. @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); ...
  #1 (permalink)  
Antiguo 17/03/2014, 17:06
Avatar de satjaen  
Fecha de Ingreso: septiembre-2012
Ubicación: Jaén (Andalucía)
Mensajes: 893
Antigüedad: 11 años, 7 meses
Puntos: 10
Mandar un form en un alert.

Hola, tengo este php que es la respuesta de otro código y lo que quiero es cuando confirme el alert mandar un formulario.

Código Javascript:
Ver original
  1. mysql_select_db($database_conexion, $conexion);
  2. $query_Recordset2 = "SELECT * FROM almacen000 WHERE recambio='$recambio'";
  3. $Recordset2= mysql_query($query_Recordset2, $conexion) or die(mysql_error());
  4. $row_Recordset2 = mysql_fetch_assoc($Recordset2);
  5. $totalRows_Recordset2 = mysql_num_rows($Recordset2);
  6. $minimos = $row_Recordset2['minimos'];
  7. $existencias = $row_Recordset2['existencias'];
  8.  
  9. if($minimos == '1' and $existencias == '0') {
  10.  
  11.  
  12. echo "<script language='JavaScript'>
  13.  
  14. confirm('¿Atención, articulo en mínimos desea pedirlo?', '¡Atención!', function(r) {
  15.    
  16.                if(r) {
  17.              
  18.              /////////// Aqui mandaria un form //////////
  19.    
  20.                 }else{
  21.                      
  22.                      
  23.                 return false;
  24.                
  25.                
  26.         }
  27.          
  28.              
  29.  
  30.     });
  31. </script>";
  32.  
  33.  
  34. }else{
  35.    
  36.    
  37.    
  38.     return false;
  39.    
  40.    
  41.        }


Gracias y un saludo
  #2 (permalink)  
Antiguo 17/03/2014, 18:15
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Mandar un form en un alert.

Hola:

Sabes que en este foro no tenemos la obligación de saber php (aunque algunos sepamos algo...)
Es mejor ver solo el código que recibe el navegador (ver código fuente)

Sobre la parte javascript, he visto 3 parámetros en un confirm, al que solo sabía de uno.
Resumiendo una respuesta sobre la pregunta (sin considerar tu código), sería:

<form onsubmit="return confirm('¿Enviar el formulario...?')"...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 17/03/2014, 18:19
Avatar de satjaen  
Fecha de Ingreso: septiembre-2012
Ubicación: Jaén (Andalucía)
Mensajes: 893
Antigüedad: 11 años, 7 meses
Puntos: 10
Respuesta: Mandar un form en un alert.

Cita:
Iniciado por caricatos Ver Mensaje
Hola:

Sabes que en este foro no tenemos la obligación de saber php (aunque algunos sepamos algo...)
Es mejor ver solo el código que recibe el navegador (ver código fuente)

Sobre la parte javascript, he visto 3 parámetros en un confirm, al que solo sabía de uno.
Resumiendo una respuesta sobre la pregunta (sin considerar tu código), sería:

<form onsubmit="return confirm('¿Enviar el formulario...?')"...

Saludos
Gracias Caricatos, perdona pero he puesto la consulta porque el código contiene javascript.




Lo he intentado así pero no me sale:

Código Javascript:
Ver original
  1. mysql_select_db($database_conexion, $conexion);
  2. $query_Recordset2 = "SELECT * FROM almacen000 WHERE recambio='$recambio'";
  3. $Recordset2= mysql_query($query_Recordset2, $conexion) or die(mysql_error());
  4. $row_Recordset2 = mysql_fetch_assoc($Recordset2);
  5. $totalRows_Recordset2 = mysql_num_rows($Recordset2);
  6. $minimos = $row_Recordset2['minimos'];
  7. $existencias = $row_Recordset2['existencias'];
  8.  
  9. if($minimos == '1' and $existencias == '0') {
  10.  
  11.  
  12. echo "<script language='JavaScript'>
  13.  
  14. confirm('¿Atención, articulo en mínimos desea pedirlo?', '¡Atención!', function(r) {
  15.    
  16.                if(r) {
  17.              
  18.            
  19.            
  20.               document.forms['form4'].submit();
  21.                
  22.            
  23.    
  24.                 }else{
  25.                      
  26.                      
  27.                 return false;
  28.                
  29.                
  30.         }
  31.          
  32.              
  33.  
  34.     });
  35. </script>";
  36.  
  37.  
  38. }else{
  39.    
  40.    
  41.    
  42.     return false;
  43.    
  44.    
  45. }


El form y el insert los tengo en esa misma página del alert:

Código Javascript:
Ver original
  1. if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form4")) {
  2.   $insertSQL = sprintf("INSERT INTO material_pendiente (id_aviso,recambio, denominacion, cantidad, pvp,fecha_pedido) VALUES (%s, %s, %s, %s, %s,now())",
  3.  
  4.                        GetSQLValueString($_POST['id_aviso'], "text"),
  5.                        GetSQLValueString($_POST['recambio'], "text"),
  6.                        GetSQLValueString($_POST['denominacion'], "text"),
  7.                        GetSQLValueString($_POST['cantidad'], "int"),
  8.                        GetSQLValueString($_POST['pvp'], "text"),
  9.                        GetSQLValueString($_POST['fecha_pedido'], "date"));
  10.                      
  11.   mysql_select_db($database_conexion, $conexion);
  12.   $Result1 = mysql_query($insertSQL, $conexion) or die(mysql_error());
  13. }
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.      <form action="<?php echo $editFormAction; ?>" method="post" name="form4" id="form4">
  22.                
  23.                <input type="hidden" name="id_aviso" id="id_aviso" value="STOCK EN MINIMOS" />
  24.                                
  25.                            <input type="hidden" name="recambio" value="<?php echo $row_Recordset2['recambio']; ?>" />
  26.                            
  27.                            
  28.                <input name="denominacion" id="denominacion" type="hidden" style="text-transform:uppercase;width:92%"
  29.                                  value="<?php echo $row_Recordset2['denominacion']; ?>" maxlength="40"/>
  30.                                  
  31.              <input name="cantidad" id="cantidad" type="hidden" value="<?php echo $row_Recordset2['minimos']; ?>" style="width:60px"/>        
  32.              <input name="pvp"   id="pvp" type="hidden" value="<?php echo $row_Recordset2['pvp']; ?>" style="width:60px"/>
  33.              
  34.                         <input type="hidden" name="MM_insert" value="form4" />
  35.                  
  36.               </form>

Gracias por contestar y un saludo

Última edición por satjaen; 17/03/2014 a las 18:33
  #4 (permalink)  
Antiguo 17/03/2014, 18:41
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Mandar un form en un alert.

Hola:

Veo que "r que r" con php... ¡Ja, ja!

Verás, los confirm llevan solo un parámetro y es el texto de la pregunta, y lo que pones de tercer parámetro (parece que te lías con otro lenguaje), lleva un parámetro del que esperas un valor booleano... (¡vaya lío!)

supongo que en tú código bastaría con algo así:

r = confirm("...");

Vuelvo a insistir que es más simple entender el código javascript si no está mezclado con otro lenguaje.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #5 (permalink)  
Antiguo 17/03/2014, 18:46
Avatar de satjaen  
Fecha de Ingreso: septiembre-2012
Ubicación: Jaén (Andalucía)
Mensajes: 893
Antigüedad: 11 años, 7 meses
Puntos: 10
Respuesta: Mandar un form en un alert.

Cita:
Iniciado por caricatos Ver Mensaje
Hola:

Veo que "r que r" con php... ¡Ja, ja!

Verás, los confirm llevan solo un parámetro y es el texto de la pregunta, y lo que pones de tercer parámetro (parece que te lías con otro lenguaje), lleva un parámetro del que esperas un valor booleano... (¡vaya lío!)

supongo que en tú código bastaría con algo así:

r = confirm("...");

Vuelvo a insistir que es más simple entender el código javascript si no está mezclado con otro lenguaje.

Saludos
Gracias, la verdad es que estoy bastante liado porque no se como puedo hacerlo. Podrías ponerme un ejemplo por favor ?




Lo he puesto así y me hace el insert pero me cierra la página en la que estoy haciendo la llamada del php.


Código Javascript:
Ver original
  1. mysql_select_db($database_conexion, $conexion);
  2. $query_Recordset2 = "SELECT * FROM almacen000 WHERE recambio='$recambio'";
  3. $Recordset2= mysql_query($query_Recordset2, $conexion) or die(mysql_error());
  4. $row_Recordset2 = mysql_fetch_assoc($Recordset2);
  5. $totalRows_Recordset2 = mysql_num_rows($Recordset2);
  6. $minimos = $row_Recordset2['minimos'];
  7. $existencias = $row_Recordset2['existencias'];
  8.  
  9. if($minimos == '1' and $existencias == '0') {
  10.  
  11.  
  12. echo "<script language='JavaScript'>
  13.  
  14.  
  15. respuesta =confirm('¿Atención, articulo en mínimos desea pedirlo?');
  16.    
  17.                    if (respuesta){
  18.                        
  19.                
  20.             document.forms['form4'].submit();
  21.            
  22.    
  23.                 }else{
  24.                      
  25.            
  26.                
  27.         }
  28.          
  29. </script>";
  30.  
  31.  
  32. }else{
  33.    
  34.    
  35.    
  36.     return false;
  37.    
  38.    
  39. }

Última edición por satjaen; 17/03/2014 a las 19:10
  #6 (permalink)  
Antiguo 18/03/2014, 02:34
Avatar de satjaen  
Fecha de Ingreso: septiembre-2012
Ubicación: Jaén (Andalucía)
Mensajes: 893
Antigüedad: 11 años, 7 meses
Puntos: 10
Respuesta: Mandar un form en un alert.

He pensado hacerlo con Jquery pero claro ya me tendría que cambiar de foro verdad ? Si alguien es tan amable de cambiarme a jQuery se lo agradecería.

Código Javascript:
Ver original
  1. mysql_select_db($database_conexion, $conexion);
  2. $query_Recordset2 = "SELECT * FROM almacen000 WHERE recambio='$recambio'";
  3. $Recordset2= mysql_query($query_Recordset2, $conexion) or die(mysql_error());
  4. $row_Recordset2 = mysql_fetch_assoc($Recordset2);
  5. $totalRows_Recordset2 = mysql_num_rows($Recordset2);
  6. $minimos = $row_Recordset2['minimos'];
  7. $existencias = $row_Recordset2['existencias'];
  8.  
  9. if($minimos == '1' and $existencias == '0') {
  10.  
  11.  
  12. echo "<script language='JavaScript'>
  13.  
  14.  
  15. respuesta =confirm('¿Atención, articulo en mínimos desea pedirlo?');
  16.    
  17.                    if (respuesta){
  18.                        
  19.                
  20.         $(document).ready(function() {
  21.    
  22.      $('#form4').trigger('submit');
  23.    
  24.    $('#form4').submit(function(event) {
  25.     var datos = $(this).serialize();  
  26.      event.preventDefault()
  27.      $.ajax(
  28.        {
  29.            url:'ins_minimos.php',
  30.            type:'POST',
  31.            data:datos,
  32.            beforeSend:function(objeto){
  33.                $('#carga').css({display:'block'});
  34.            },
  35.            complete:function(){
  36.                 $('#carga').css('display','none');
  37.                 },
  38.             success: function(data) {
  39.                $('#result').html(data);
  40.  
  41.            }
  42.        });
  43.    });
  44. });
  45.  
  46.            
  47.    
  48.                 }else{
  49.                      
  50.            
  51.                
  52.         }
  53.          
  54. </script>";
  55.  
  56.  
  57. }else{
  58.    
  59.    
  60.    
  61.     return false;
  62.    
  63.    
  64. }
  65. }
  66.  
  67.   }
  68. }
  69.  
  70. ?>
  71.  
  72.      <form action="<?php echo $editFormAction; ?>" method="post" name="form4" id="form4">
  73.                
  74.                <input type="hidden" name="id_aviso" id="id_aviso" value="STOCK EN MINIMOS" />
  75.                                
  76.                            <input type="hidden" name="recambio" value="<?php echo $row_Recordset2['recambio']; ?>" />
  77.                            
  78.                            
  79.                <input name="denominacion" id="denominacion" type="hidden" style="text-transform:uppercase;width:92%"
  80.                                  value="<?php echo $row_Recordset2['denominacion']; ?>" maxlength="40"/>
  81.                                  
  82.              <input name="cantidad" id="cantidad" type="hidden" value="<?php echo $row_Recordset2['minimos']; ?>" style="width:60px"/>        
  83.              <input name="pvp"   id="pvp" type="hidden" value="<?php echo $row_Recordset2['pvp']; ?>" style="width:60px"/>
  84.              
  85.                         <input type="hidden" name="MM_insert" value="form4" />
  86.                  
  87.               </form>

Etiquetas: form, formulario, php
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 15:57.