|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2013-06-15 04:52 UTC] rasmus@php.net
-Status: Open
+Status: Not a bug
[2013-06-15 04:52 UTC] rasmus@php.net
|
|||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sat Oct 25 22:00:01 2025 UTC |
Description: ------------ <?php error_reporting( E_ALL ); $link = ""; $result = ""; // test01-php CARGA DE DATOS A LA BASE // Listo los campos a cargar transferidos con el método POST del formulario y a través de $_POST. // echo "Apellido: " , $_POST['apellido'], "<br>"; echo "Nombres: " , $_POST['nombre'], "<br>"; echo "Nro. Doc: " , $_POST['ndoc'] ,"<br>"; echo "Calle : " , $_POST['calle'], "<br>"; echo "Numero: " , $_POST['numcalle'], "<br>"; echo "Importe: " , $_POST['importe'], "<br>"; echo "Telefono: " , $_POST['telefono'], "<br>"; echo "Fecha: " , $_POST['fecha'], "<br>"; // // Verifico los campos antes de cargarlos a la base. // if(isset($_POST['apellido']) && !empty($_POST['apellido']) && isset($_POST['nombre']) && !empty($_POST['nombre']) && isset($_POST['ndoc']) && !empty($_POST['ndoc']) && isset($_POST['calle']) && !empty($_POST['calle']) && isset($_POST['numcalle']) && !empty($_POST['numcalle']) && isset($_POST['importe']) && !empty($_POST['importe']) && isset($_POST['telefono']) && !empty($_POST['telefono'])) { $link = mysqli_connect('localhost', '', '','bd_clientes'); if (!$link) { die('Error de Conexión (' . mysqli_connect_errno() . ') ' . mysqli_connect_error()); exit(); } else { echo 'Éxito ... se accedió a la BD !!' . mysqli_get_host_info($link), "<br>"; } } else { echo 'Faltan completar campos obligatorios, se anula la carga !!'; exit(); echo "<br>"; } // Desactivo autocommit mysqli_autocommit($link, FALSE); // $result = mysqli_query($link,"INSERT INTO tb_cliente (id,apellido,nombres,numdoc,calle,numcalle,telefono,importe) VALUES (''','{$_POST['apellido']}','{$_POST['nombre']}',' {$_POST['ndoc']}','{$_POST['calle']}',' {$_POST['numcalle']}','{$_POST['telefono']}',' {$_POST['importe']}"); if (!$result) { echo ("Mensaje de error: " . mysqli_error($link)), "<br>"; echo ("Código de error: " . mysqli_errno($link)), "<br>"; echo ("Error - SQLSTATE " . mysqli_sqlstate($link)), "<br>"; } // Activo la transacción mysqli_commit($link); // Cierro la base mysqli_close($link); ?> Test script: --------------- Respuesta del pgm.: Apellido: Gomez Pereda Nombres: Miguel Horacio Nro. Doc: 8103661 Calle : De la Rosa Numero: 1595 Importe: 738500.75 Telefono: 4701-3394 Éxito ... se accedió a la BD !!localhost via TCP/IP Mensaje de error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Gomez Pereda','Miguel Horacio',' 8103661','De la Rosa',' 159' at line 2 Código de error: 1064 Error - SQLSTATE 42000 Expected result: ---------------- La idea es la de cargar una tabla con datos transferidos desde un formulario HTML con el método POST a través de $_POST. El pgm. los lista previamente para comprobar que fueron transferidos, pero al momento de ejecutar la instrucción mysqli_query para hacer el INSERT INTO, da el error indicado (1064 - SQLSTATE 42000), que, como principiante que soy, no interpreto, a pesar de agotar las posibilidades de solución por medio de pruebas y búsqueda de la documentación sobre el tema; si bien es un procedimiento común y frecuente, no dispongo a quien recurrir y quedo estancado. Solicito me oriente y me diga en donde me equivoqué a fin de subsanar el error. Desde ya mi agradecimiento tanto por su gestión como por la deferencia del tiempo dedicado. Muchas gracias PD. Ejecutado en Windows XP Bajo: I Explorer y Mozilla Firefox 21.0 Versiones: PHP : 5.3.5; Apache: 2.2.17; MySQL: 5.5.8 Actual result: -------------- Estructura de la tabla destino de los datos: Campo Tipo Cotejamiento Atributos Nulo Predeterminado Extra Acción id int(11) No None AUTO_INCREMENT apellido varchar(25) latin1_swedish_ci No None nombres varchar(30) latin1_swedish_ci No None numdoc int(10) No None calle varchar(25) latin1_swedish_ci No None numcalle varchar(5) latin1_swedish_ci No None telefono varchar(10) latin1_swedish_ci No None importe decimal(8,0) No None Marcar todos/as / Desmarcar todos Para los elementos que están marcados: ________________________________________ Vista de impresión Vista de relaciones Planteamiento de la estructura de tabla Añadir campo(s) Al final de la tabla Al comienzo de la tabla Después de ________________________________________ Índices: Acción Nombre de la clave Tipo Único Empacado Campo Cardinalidad Cotejamiento Nulo Comentario PRIMARY BTREE Sí No id 0 A index BTREE Sí No telefono 0 A