Nueva pregunta

Pregunta:

Fecha: 14-09-2017 05:47:06 (En Español)

No puedo insertar datos a MYSQL si utilizo el action en HTML para ir a pagina[No resuelta]

Quiero aclarar que el codigo funciona bien si NO utilizo el action del
FORM
, es decir, inserta bien los formularios pero obviamente no puedo redireccionar hacia una pagina nueva, y cuando lo utilizo, tal como dice el titulo, no me deja insertar los datos en la DB. el código que estoy utilizando es el siguiente. de antemano muchas gracias.

<form method="post" action="ingre_acta_exi.php">
<table class="table bg-info" id="tabla">
class="fila-fija">
<td><input type="number" name="IDE[]" id="IDE" value=""/></td>
<td><input type="text" name="PLANILLA[]" id="PLANILLA" 
pattern="[0-9]{6}" value=""/></td>
<td><input value="" type="text" name="N_PEDIDO[]" 
id="N_PEDIDO"/></td>
</tr>
</table>
class="btn-der">
<button id="adicional" name="adicional" type="button" class="btn btn-
warning">Agregar</button>
<input type="submit" name="insertar" id="insertar" value="Insertar" 
class="btn btn-info"/>
</div>
</form>


<?php

if(isset($_POST['insertar']))
{
$items2 = ($_POST['IDE']);
$items3 = ($_POST['PLANILLA']);
$items4 = ($_POST['N_PEDIDO']);

while(true){

//Recuperar los valores de los arreglos
$item2 = current($items2);
$item3 = current($items3);
$item4 = current($items4);

 $valores ='('.$ide.',"'.$planilla.'","'.$n_pedido.'"),';

 $valoresQ = substr($valores, 0, -1);

 $sql = "INSERT INTO huawei_acta_entrega (IDE, PLANILLA, N_PEDIDO) 
 VALUES $valoresQ";

 $sqlRes = mysql_query($sql, $conexion) or mysql_error();

 $item2 = next($items2);
 $item3 = next($items3);
 $item4 = next($items4);

 if($item2 === false && $item3 === false && $item4 === false && $item5 === 
 false && $item6 === false && $item7 === false && $item8 === false && $item9 
 === false && $item10 === false && $item11 === false) break;
   }
 }

 ?>
Etiquetas: HTML - MySQL - PHP Votos: 0 - Respuestas: 5 - Vistas: 18 Compartir en: Google Facebook Twitter LinkedIn Link
 

Respuestas:

  • Fecha: 14-09-2017 08:25:39 Andersson,
    Veo muchos problemas en tu código:
    1. Es obsoleto
    2. No sigues las mejores prácticas
    3. Es vulnerable a diferentes ataques
    4. Parece una tarea de programación
    5. Quisiera creer que no es un desarrollo para ser liberado a producción pero en una de tus tablas mecionas a Huawei...

    En fin, dado que no proporcionas más datos para ayudarte (un mensaje de error estaría bien) no queda más que suponer qué puede ser.

    En base a la lista anterior supongo que el problema radica en que estás utilizando una extensión obsoleta.

    No uses la extensión mysql, actualiza a mysqli o PDO.

    Si compartes un mensaje de error podremos ayudarte mejor.

    Saludos
      Votos: 0 - Link respuesta
     
  • Fecha: 14-09-2017 08:28:32 Volví a leer tu pregunta...

    Si no utilizas el action significa que los datos se envían a la misma página, es decir que es como si en el action el valor fuera: $_SERVER['PHP_SELF']

    Cuando proporcionas el valor de action, si la página no es la misma que procesa los datos pues te encontrarás en la situación que mencionas.
      Votos: 1 - Link respuesta
     
  • Fecha: 15-09-2017 06:55:24 podrias hacer una redireccion a la pagina que quieres luego de procesar la solicitud. Te recomiendo que leas este articulo e investigues un poco mas sobre header (location) en php:

    http://es.ccm.net/faq/537-php-redireccionar-a-otra-pagina-web
      Votos: 1 - Link respuesta
     
  • Fecha: 17-09-2017 13:04:03 esta usando jquery   Votos: 0 - Link respuesta
     
  • Fecha: 18-09-2017 13:07:22 Para evitar errores es correcto que se te sugiera actualizar a MYSQLI O PDO , que son API REGENTENTES PARA CONEXION A LAS BD.

    Te dejo un link del uso de estos con ejemplos:

    http://www.hermosaprogramacion.com/2014/07/php-mysql-conectar-como/


    Ami parecer si solo recibes una sola operacion en tu archivo ""

    
    //deberias cambiar esta linea 
    
    if(isset($_POST['insertar']))
    
    
    //por esta linea 
    
    if($_REQUEST)   
    
    
    


    Y listo .
      Votos: 0 - Link respuesta
     
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
 
frjcbbae garagebible.com