elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Security Series.XSS. [Cross Site Scripting]


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Problema actualizando un registro en MySQL
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema actualizando un registro en MySQL  (Leído 2,831 veces)
camdark

Desconectado Desconectado

Mensajes: 63



Ver Perfil
Problema actualizando un registro en MySQL
« en: 13 Diciembre 2006, 05:51 am »

Hola amigos,

Tengo un problemon, tengo el siguiente codigo:

Código:
<?php
require("admin/config.php");
@mysql_connect("$host", "$user", "$pass") or die ("Imposible conectar al servidor MySQL.");
@mysql_select_db("$db");

$query1 = mysql_query("SELECT * FROM trucos WHERE id='$_GET[id]'");
$truco = mysql_fetch_array($query1);
++$truco[lecturas];
mysql_query("update trucos set lecturas='$truco[lecturas]' where id='$_GET[id]'");
mysql_close();
?>

Se supone que cada vez que ingreso a esa pagina se deberia actualizar el registro lecturas de la base de datos sumandose 1 al valor actual, pero resulta que aveces se suman 2 o 3 y no tengo idea porque, lo pruebo en localhost y todo PERFECTO, pero luego lo subo a un servidor linux mandrake y me da el error de que le suma 2 o 3 en vez de 1, el error esta muy raro, ojala puedan ayudarme.

Nota del moderador: USAR LAS ETIQUETAS CODE!!


« Última modificación: 13 Diciembre 2006, 18:41 pm por Ertai » En línea

dominioswww

Desconectado Desconectado

Mensajes: 163



Ver Perfil WWW
Re: Problema actualizando un registro en MySQL
« Respuesta #1 en: 13 Diciembre 2006, 07:12 am »

tienes adsense?? porq suele pasar q navegas or tu sitio e igusal akgun bot entra a esa pagina q tu entraste


En línea

Dominios al mejor precio desde 2.00 USD solo en
http://dpanel.dominioswww.net
http://www.dominioswww.net
camdark

Desconectado Desconectado

Mensajes: 63



Ver Perfil
Re: Problema actualizando un registro en MySQL
« Respuesta #2 en: 13 Diciembre 2006, 14:11 pm »

Hola amigo, tengo puesto tres adsense en la pagina, quizas sea por eso, espero escuchar mas opiniones, pero el problema lo tengo cuando pasa de una lectura a 3 lectura, porque depsues no tengo mas problema, y en localhost no tengo el problema.
En línea

Ertai
Colaborador
***
Desconectado Desconectado

Mensajes: 2.025


Ralph Wiggum


Ver Perfil
Re: Problema actualizando un registro en MySQL
« Respuesta #3 en: 13 Diciembre 2006, 18:43 pm »

Prueba esto:

Código:
<?php
require("admin/config.php");
@mysql_connect("$host", "$user", "$pass") or die ("Imposible conectar al servidor MySQL.");
@mysql_select_db("$db");

$query1 = mysql_query("SELECT * FROM trucos WHERE id='$_GET[id]'");
$truco = mysql_fetch_array($query1);
++$truco[lecturas];
echo $truco[lecturas];
mysql_query("update trucos set lecturas='$truco[lecturas]' where id='$_GET[id]'");
mysql_close();
?>

Simplemente hay un echo de las lecturas antes de insertarlas en la base de datos, así puedes "debuggear" y ver que pasa.

Saludos.
En línea

Si la felicidad se comprara, entonces el dinero sería noble.

Código:
void rotar_by_ref(int& a, int& b) {
   /* Quien dijo que no se podia sin una variable temporal? */
   *a = *a ^ *b;
   *b = *a ^ *b;
   *a = *a ^ *b;
}
Hans el Topo


Desconectado Desconectado

Mensajes: 1.754


"Estoy cansado de no hacer nada"


Ver Perfil WWW
Re: Problema actualizando un registro en MySQL
« Respuesta #4 en: 13 Diciembre 2006, 18:45 pm »

Código:
¿Y eso te funciona?

Prueba con ésto...


[code]require("admin/config.php");
$conec=@mysql_connect($host, $user, $pass) or die ("Imposible conectar al servidor MySQL.");
@mysql_select_db($db);

$query1 = mysql_query("SELECT * FROM trucos WHERE id='".$_GET['id']."'",$conec);
$truco = mysql_fetch_array($query1);
$truco['lecturas']++;
mysql_query("update trucos set lecturas='".$truco['lecturas']."' where id='".$_GET['id']."'",$conec);
mysql_close();

por cierto yo lo haría asi...xD
Código:

if($id=$_GET['id']){
    $conec=@mysql_connect($host, $user, $pass) or die ("Imposible conectar al servidor MySQL.");
@mysql_select_db($db);

  mysql_query("update trucos set lecturas=lecturas+1  where id='$id'",$conec);
  mysql_close();}


espero te sirva de ayuda, las arrays suelen ser bastante quisquillosas con eso de implementarlas dentro de cadenas a pelo...por eso me extraño que no te diese error

P.D que rápido es Ertai xD[/code]
En línea

camdark

Desconectado Desconectado

Mensajes: 63



Ver Perfil
Re: Problema actualizando un registro en MySQL
« Respuesta #5 en: 13 Diciembre 2006, 20:06 pm »

hola amigos, no me funciono el codigo de hans, y ya habia intentado lo que decia ertai, puse un echo antes y desdes de incrementar el valor y todo se veia bien, pero le daba actualizar y pasaba de 1 a 4 y no pude concluir nada haciendo los echo....
En línea

camdark

Desconectado Desconectado

Mensajes: 63



Ver Perfil
Re: Problema actualizando un registro en MySQL
« Respuesta #6 en: 13 Diciembre 2006, 20:14 pm »

Hola amigos,

Quite el codigo de todos los adsense google, y subi el sitio y que creen..., problema solucionado, los registros se actualizaban bien, seguramente el robot de adsense tambien ingresa a la pagina y por eso me contabiliza como lecturas, ya tengo reconocido el problema, ahora que puedo hacer?
En línea

alone-in-the-chat


Desconectado Desconectado

Mensajes: 587


Ver Perfil
Re: Problema actualizando un registro en MySQL
« Respuesta #7 en: 13 Diciembre 2006, 20:25 pm »

verificar que no es el bot :P
Código:
function GetBotInfo()
   {
      global $IS_GOOGLE, $IS_MSN, $IS_YAHOO, $IS_OTHER_SE, $IS_ASK;
     
      if (strpos($_SERVER["HTTP_USER_AGENT"],"Googlebot") === false)
         if (strpos($_SERVER["HTTP_USER_AGENT"],"Slurp") === false)
            if (strpos($_SERVER["HTTP_USER_AGENT"],"msnbot") === false)
               if (strpos($_SERVER["HTTP_USER_AGENT"],"Teoma") === false)
                  if (strpos($_SERVER["HTTP_USER_AGENT"],"bot") === false) {}
                  else {
                     $IS_OTHER_SE = true;
                  }
               else {
                  $IS_ASK = true;
            }
            else {
               $IS_MSN = true;
            }
         else {
            $IS_YAHOO = true;
         }
      else {
         $IS_GOOGLE = true;
      }
   }
   
     function IsBot()
   {
      global $IS_GOOGLE, $IS_MSN, $IS_YAHOO, $IS_OTHER_SE, $IS_ASK;

      return $IS_GOOGLE || $IS_MSN || $IS_YAHOO || $IS_OTHER_SE || $IS_ASK;
   }
GetBotInfo();
crea un archivo bot.php has un include y luego llama a isBot() si te devuelve 1 es un Bot si te da 0 no es un bot ;) prueba con eso

has un include
En línea

Because maybe
You're gonna be the one that saves me
And after all
You're my wonderwall
d[n_n]b
camdark

Desconectado Desconectado

Mensajes: 63



Ver Perfil
Re: Problema actualizando un registro en MySQL
« Respuesta #8 en: 14 Diciembre 2006, 21:58 pm »

Hola amigos, me di cuenta que cada vez que me metia a la pagina que contaba y actualizaba el registro lecturas tambien se metia dos veces el robot de google, revise los Logs de accceso y me di cuenta del nombre del bot y escribi la siguiente proteccion y mi vida cambio xD

<?
if (eregi("Mediapartners-Google/2.1", $_SERVER['HTTP_USER_AGENT'])) {}
else {++$truco[lecturas]; mysql_query("update trucos set lecturas='$truco[lecturas]' where id='$_GET[id]'");}
mysql_close();
?>

Si ven alguna posible mejora en el codigo avisenme, saludosssss
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
No puedo encontrar el error alguien lo ve? (actualizando registro en db con php)
PHP
jdc 6 2,954 Último mensaje 10 Diciembre 2011, 14:00 pm
por WHK
Problema actualizando Ubuntu de 11.04 a 11.10 por el gestor de actualizaciones
GNU/Linux
chelo87_ec 1 2,682 Último mensaje 23 Junio 2013, 19:05 pm
por dato000
Problema actualizando Bios MSI z68
Hardware
Makoto 0 1,682 Último mensaje 22 Junio 2013, 23:47 pm
por Makoto
Restar dos registro en MYSQL
Bases de Datos
yoelrodguez 5 7,293 Último mensaje 8 Octubre 2014, 18:03 pm
por MinusFour
Problema con la creacion de un registro de usuario en PHP y MYSQL
Dudas Generales
veloso97 0 2,393 Último mensaje 5 Noviembre 2017, 04:45 am
por veloso97
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines