php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #65041 PHP : 5.3.5; Apache: 2.2.17; MySQL: 5.5.8
Submitted: 2013-06-14 22:16 UTC Modified: 2013-06-15 04:52 UTC
Votes:1
Avg. Score:4.0 ± 0.0
Reproduced:0 of 1 (0.0%)
From: cac3882000 at yahoo dot com dot ar Assigned:
Status: Not a bug Package: MySQLi related
PHP Version: 5.3Git de 2013-06-14 (Git) OS: Windows XP
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: cac3882000 at yahoo dot com dot ar
New email:
PHP Version: OS:

 

 [2013-06-14 22:16 UTC] cac3882000 at yahoo dot com dot ar
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		


Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2013-06-15 04:52 UTC] rasmus@php.net
-Status: Open +Status: Not a bug
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sun Dec 22 10:01:28 2024 UTC