Foros del Web » Programando para Internet » PHP »

ERROR de sintaxis dolor de cabeza

Estas en el tema de ERROR de sintaxis dolor de cabeza en el foro de PHP en Foros del Web. Código PHP: mysql_query ( "UPDATE tabla_online SET on='" . $on . "'  WHERE ip=" . $_SERVER [ 'REMOTE_ADDR' ]. " " ) or die( mysql_error ());  probe : Código PHP: mysql_query ( "UPDATE tabla_online SET on='" ...
  #1 (permalink)  
Antiguo 08/04/2011, 16:03
(Desactivado)
 
Fecha de Ingreso: enero-2011
Mensajes: 293
Antigüedad: 13 años, 2 meses
Puntos: 4
ERROR de sintaxis dolor de cabeza

Código PHP:
mysql_query("UPDATE tabla_online SET on='".$on."'  WHERE ip=".$_SERVER['REMOTE_ADDR']." ") or die(mysql_error()); 

probe :

Código PHP:
mysql_query("UPDATE tabla_online SET on='".$on."'  WHERE ip='".$_SERVER['REMOTE_ADDR']."' ") or die(mysql_error()); 

Que ocurre me tiene arto
  #2 (permalink)  
Antiguo 08/04/2011, 16:04
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: ERROR de sintaxis dolor de cabeza

aja.... y.... hmmmm, dejame adivinar, ehhh.... siii.... ¿cual es el error que recibes?

digo, ¿si hay algo mas útil o hay que leer tu mente?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 08/04/2011, 16:22
(Desactivado)
 
Fecha de Ingreso: enero-2011
Mensajes: 293
Antigüedad: 13 años, 2 meses
Puntos: 4
Respuesta: ERROR de sintaxis dolor de cabeza

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 'on='on' WHERE ip=88.12.180.26' at line 1
  #4 (permalink)  
Antiguo 08/04/2011, 16:27
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: ERROR de sintaxis dolor de cabeza

¿ves como resulta útil proporcionar mas información?

es muy sencillo, la palabra ON es reservada de SQL, así que no deberías usarla como nombre de columna en un principio...

sin embargo se puede hacer uso de dicha palabra si "escapamos" dicha palabra con backticks...
Cita:
SET `on` = '$on'
PDTA: tu problema jamás fue de PHP, así que te sugiero estudiar algo de SQL antes de seguir practicando...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 08/04/2011, 16:30
(Desactivado)
 
Fecha de Ingreso: enero-2011
Mensajes: 293
Antigüedad: 13 años, 2 meses
Puntos: 4
Respuesta: ERROR de sintaxis dolor de cabeza

Wao me as dejado impactado ,este sql que bárbaro no me lo esperaba on <- quien lo iba a decir O_O
  #6 (permalink)  
Antiguo 08/04/2011, 16:49
(Desactivado)
 
Fecha de Ingreso: enero-2011
Mensajes: 293
Antigüedad: 13 años, 2 meses
Puntos: 4
Respuesta: ERROR de sintaxis dolor de cabeza

Olle otra cosa perdona que te moleste Maestro pero creees que esto me funcione o si no lo habro en otro tema :

es para ver los usuarios online esta es la tecnica que estoy probando,


Código PHP:


//conectados

if(!empty($_SERVER['REMOTE_ADDR'])){

$tabla_online=mysql_query("SELECT * FROM tabla_online WHERE ip LIKE '".$_SERVER['REMOTE_ADDR']."'  ")or die("1 -".mysql_error());

if(
mysql_num_rows($tabla_online) > 0){



mysql_query("UPDATE tabla_online SET `on` = 'on'  WHERE ip='".$_SERVER['REMOTE_ADDR']."' ")or die("2 -".mysql_error());

  
setcookie("ip_save""".$_SERVER['REMOTE_ADDR'].""time()+(3600 24), "/"".dominio.es");


}else{
mysql_query("INSERT INTO tabla_online SET ip='".$_SERVER['REMOTE_ADDR']."',on='on'   ")or die("3 -".mysql_error());

setcookie("ip_save""".$_SERVER['REMOTE_ADDR'].""time()+(3600 24), "/"".dominio.es");

}






 }
//no empty server 
else{


mysql_query("UPDATE tabla_online SET `on` = ''  WHERE ip LIKE '".$_COOKIE['ip_save']."'  ")or die("4 -".mysql_error());


}






$q_online=mysql_query("SELECT * FROM tabla_online WHERE `on`='on'  ")or die (mysql_error());
$num_users_online=mysql_num_rows($q_online);

echo 
"Users ON : ".$num_users_online
  #7 (permalink)  
Antiguo 08/04/2011, 16:55
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: ERROR de sintaxis dolor de cabeza

bien, no abras otro tema... pero intenta explicarnos con palabras lo que hace tu script, a veces leer código no sirve de nada si no se tiene clara la idea... (:
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #8 (permalink)  
Antiguo 08/04/2011, 17:08
Avatar de Aaronus23  
Fecha de Ingreso: diciembre-2010
Ubicación: https://home
Mensajes: 81
Antigüedad: 13 años, 4 meses
Puntos: 4
Respuesta: ERROR de sintaxis dolor de cabeza

esa tecnica de ver si estan loggeados por la ip, no se si sea la mejor, pero yo opino que seria mejor crear un campo que cuando esten "logged in", el campo marque 2 y cuando no lo esten que sea 1...

asi un update cuando se loggeen y otro cuando hagan log out... o la cookie se destruya para poner 2 o 1

bueno... eso digo yo... aca el señor pateke me corregira
  #9 (permalink)  
Antiguo 08/04/2011, 17:14
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: ERROR de sintaxis dolor de cabeza

jeje, puras correcciones con ustedes!!

ciertamente es posible registrar los usuarios activos por medio de su propio registro en la BD, sin embargo es impreciso conocer quien ha cerrado sesión de acuerdo a si cerro el navegador, o solo cerró sesión en el sitio...

y al parecer solo es necesario conocer los usuario online, no estoy seguro si tiene relación directa con los usuarios registrados, para lo cual la técnica mostrada es realmente eficiente:

- se registra una hora de ingreso por IP
- se verifica cada tiempo, eliminando los IPs viejos
- finalmente se devuelve el total de IPs que constantemente se actualizan por "actividad"

es mas, si solo se trata de conocer los IPs (usuarios) on-line, indiferentemente de si están registrados o no, yo uso esto:
Código PHP:
/**
 * Conexiones activas
 *
 * @param  integer $time Duracion en segundos
 * @return integer
 */
function actives($time 300)
{
  
$remote $_SERVER['REMOTE_ADDR'];
  
$tmp    md5($_SERVER['REQUEST_URI']);

  if ( ! 
is_file($tmp)) touch($tmp0666);

  
$max 0;
  
$out '';
  
$cur FALSE;
  
$old file_get_contents($tmp);
  
$new sprintf(';%s,%d'$remotetime());

  foreach (
explode(';'$old) as $val)
  {
    if ( ! 
strstr($val',')) continue;

    
$test explode(','$val);
    
$addr $test[0];
    
    
$past = (int) $test[1];

    if ((
time() - $past) > $time) continue;
    elseif (
$addr === $remote)
    {
      
$cur  TRUE;
      continue;
    }

    
$out .= $val;
    
$max += 1;
  }
  if (
$cur === FALSE$out .= $new;

  
file_put_contents($tmp$out);
  return 
$max;

Edito: creo que el script anda mal, pero bueno, la idea es esa....
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Última edición por pateketrueke; 08/04/2011 a las 17:23 Razón: anexé script...
  #10 (permalink)  
Antiguo 08/04/2011, 17:24
(Desactivado)
 
Fecha de Ingreso: enero-2011
Mensajes: 293
Antigüedad: 13 años, 2 meses
Puntos: 4
Respuesta: ERROR de sintaxis dolor de cabeza

Que gracia me hace esa caricatura de policia , jaja es decir que lo que ise funciona es bueno o que no me quedo muy asertado cuando lo termine , al final dije bueno lo dejare y si veo que falla a romperme la cabeza con la pared otra vez jajaja.
  #11 (permalink)  
Antiguo 08/04/2011, 17:41
(Desactivado)
 
Fecha de Ingreso: enero-2011
Mensajes: 293
Antigüedad: 13 años, 2 meses
Puntos: 4
Respuesta: ERROR de sintaxis dolor de cabeza

Madre mia acabo de ver tu script , alucinante pero dices que anda mal jaja que cosas contestame a lo de arriba as sobre scrito no me contestate XD.
  #12 (permalink)  
Antiguo 08/04/2011, 20:20
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: ERROR de sintaxis dolor de cabeza

contestar que, jeje... ya me perdí, ¿que me habías preguntado?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #13 (permalink)  
Antiguo 08/04/2011, 21:09
(Desactivado)
 
Fecha de Ingreso: enero-2011
Mensajes: 293
Antigüedad: 13 años, 2 meses
Puntos: 4
Respuesta: ERROR de sintaxis dolor de cabeza

haha pos no se que decir crei haberlo dicho todo si no sabes no pasa nada.
  #14 (permalink)  
Antiguo 08/04/2011, 21:31
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: ERROR de sintaxis dolor de cabeza

es en serio, la verdad es que si leí todo lo que dijiste... pero, ¿donde están los signos de interrogación o el tono de pregunta?

ahí es donde me pierdo, jeje... (:
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #15 (permalink)  
Antiguo 10/04/2011, 13:47
(Desactivado)
 
Fecha de Ingreso: enero-2011
Mensajes: 293
Antigüedad: 13 años, 2 meses
Puntos: 4
Respuesta: ERROR de sintaxis dolor de cabeza

Mi sensei pateketrueke ,Maestro La tecnica que utilo no quiere eliminar el on , Pienso que es culpa de que si el navegador se sierra la cookie no hace ningun caso ¿Que puedo hacer maestro?

Etiquetas: sintaxis
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 03:10.