Foros del Web » Programando para Internet » PHP »

mysql error en error_log, aunque funciona

Estas en el tema de mysql error en error_log, aunque funciona en el foro de PHP en Foros del Web. Hola, Tengo un error_log de paypal para el ipn.php y cada vez que se hace una transacción y mi archivo ipn.php es llamado me sale ...
  #1 (permalink)  
Antiguo 30/01/2013, 03:13
 
Fecha de Ingreso: mayo-2009
Mensajes: 382
Antigüedad: 10 años, 6 meses
Puntos: 6
mysql error en error_log, aunque funciona

Hola,
Tengo un error_log de paypal para el ipn.php
y cada vez que se hace una transacción y mi archivo ipn.php es llamado me sale este error en el error_log file:
[29-Jan-2013 16:50:30] 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 '1' at line 1
Todo funciona, pero es irritante que siempre salga ese error, y por algo será

Si el error se refiere a un query los he probado todos en phpmyadmin y no da error.

El error debe de estar en uno de estos y puede ser otra cosa?
$sql = "SELECT COUNT(*) FROM orders WHERE txn_id = '$txn_id'";

$sql = mysql_query("UPDATE orders SET txn_id='$txn_id', mc_gross='$mc_gross', statement='paid', payer_email='$payer_email' WHERE id = '$custom'");

$query1= "SELECT * FROM orders WHERE id = '$custom'";
$result = mysql_query ($query1);
$query2= "SELECT email, id_propiedad FROM usuarios WHERE id_propiedad = '$item_name'";
$result2 = mysql_query ($query2);
while ($row = mysql_fetch_object($result)) {
while ($row2 = mysql_fetch_array($result2)) {
  #2 (permalink)  
Antiguo 30/01/2013, 06:47
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.321
Antigüedad: 12 años
Puntos: 2653
Respuesta: mysql error en error_log, aunque funciona

Las sentencias están sintácticamente bien:
Código MySQL:
Ver original
  1. UPDATE orders
  2.    SET txn_id = '$txn_id',
  3.        mc_gross = '$mc_gross',
  4.        STATEMENT = 'paid',
  5.        payer_email = '$payer_email'
  6.  WHERE ID = '$custom'
Código MySQL:
Ver original
  1.   FROM orders
  2.  WHERE ID = '$custom'
Código MySQL:
Ver original
  1. SELECT email, id_propiedad
  2.   FROM usuarios
  3.  WHERE id_propiedad = '$item_name'
Si hay algún error es producto del contenido de las variables, o bien si estás usando alguna palabra reservada.
STATEMENT, por ejemplo, en algunos DBMS puede generar un error sintáctico porque es un comando propio de ellos, pero no tengo a mano el MYSQL para verificarlo.

SI el tema se produce por la lógica programada de PHP, te paso el post para el foro correspondiente (acá no se tratan temas de programación).
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 30/01/2013, 07:44
 
Fecha de Ingreso: mayo-2009
Mensajes: 382
Antigüedad: 10 años, 6 meses
Puntos: 6
Respuesta: mysql error en error_log, aunque funciona

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Las sentencias están sintácticamente bien:
Si hay algún error es producto del contenido de las variables, o bien si estás usando alguna palabra reservada.
STATEMENT, por ejemplo, en algunos DBMS puede generar un error sintáctico porque es un comando propio de ellos, pero no tengo a mano el MYSQL para verificarlo.

SI el tema se produce por la lógica programada de PHP, te paso el post para el foro correspondiente (acá no se tratan temas de programación).
Gracias,
según esto no es una palabra reservada:
http://dev.mysql.com/doc/refman/5.0/es/reserved-words.html
  #4 (permalink)  
Antiguo 30/01/2013, 07:56
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.321
Antigüedad: 12 años
Puntos: 2653
Respuesta: mysql error en error_log, aunque funciona

Entonces es problema de programación.
Te paso el POST a PHP para que lo sigan viendo allá.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 30/01/2013, 08:58
 
Fecha de Ingreso: mayo-2009
Mensajes: 382
Antigüedad: 10 años, 6 meses
Puntos: 6
Respuesta: mysql error en error_log, aunque funciona

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Entonces es problema de programación.
Te paso el POST a PHP para que lo sigan viendo allá.
Gracias,
esto es el php que tiene que ver con los queries:
Código PHP:
 $txn_id mysql_real_escape_string($_POST['txn_id']);
    
$sql "SELECT COUNT(*) FROM orders WHERE txn_id = '$txn_id'";
    
$r mysql_query($sql);
    
    if (!
$r) {
        
error_log(mysql_error());
        exit(
0);
    }
    
    
$exists mysql_result($r0);
    
mysql_free_result($r);
    
    if (
$exists) {
        
$errmsg .= "'txn_id' has already been processed: ".$_POST['txn_id']."\n";
    }
    
    if (!empty(
$errmsg)) {
  
$body "IPN failed fraud checks: \n$errmsg\n\n";
        
$body .= $listener->getTextReport();
        
mail('[email protected]''IPN Fraud Warning'$body); 
        
    } else {
    
        
// TODO: process order here

        
mail('[email protected]''Verified IPN'
 
$sql mysql_query("UPDATE orders SET txn_id='$txn_id', mc_gross='$mc_gross', statement='paid', payer_email='$payer_email' WHERE id = '$custom'");
 

$query1"SELECT * FROM orders WHERE id = '$custom'";
$result mysql_query ($query1);
$query2"SELECT email, id_propiedad FROM usuarios WHERE id_propiedad = '$item_name'";
$result2 mysql_query ($query2);
while (
$row mysql_fetch_object($result)) {
    while (
$row2 mysql_fetch_array($result2)) {

etc aqui 

Etiquetas: aunque, mysql, select, sql
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 22:31.