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 delFORM, 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;
}
}
?>
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: 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
