Foros del Web » Programando para Internet » PHP »

AYUDA UPDATE enlaces SET visitas=visitas+1 WHERE link='".$ref."' AND activo='1'"

Estas en el tema de AYUDA UPDATE enlaces SET visitas=visitas+1 WHERE link='".$ref."' AND activo='1'" en el foro de PHP en Foros del Web. Hola tengo este codigo y al ponerle que me active el enlace en 1 no me lo activa ni me suma una visita no se ...
  #1 (permalink)  
Antiguo 02/03/2008, 23:57
Avatar de hawaiian050  
Fecha de Ingreso: junio-2007
Mensajes: 285
Antigüedad: 16 años, 10 meses
Puntos: 2
Exclamación AYUDA UPDATE enlaces SET visitas=visitas+1 WHERE link='".$ref."' AND activo='1'"

Hola tengo este codigo y al ponerle que me active el enlace en 1 no me lo activa ni me suma una visita no se que error tengo probe con un SET y me dice error de MYSQL alguien podria decirme que estoy haciendo mal ?
o la mysql esta mal?

Quiero que me active el enlace en 1 y le sume una visita al hacerle el UPDATE pero no me funciona, suma una vista si esta ya activado pero si no nada no se como lograr que me lo active cuando el enlace esta insertado en la db y envia otra visita.
Código PHP:


               
if(!mysql_num_rows(mysql_query("SELECT * FROM enlaces WHERE link like '".$ref."'"))) {
                                  
mysql_query("INSERT INTO enlaces (fecha, link, buscar, nombre, descripcion) values ('".$time."', '".$ref."', '".line($_GET['buscar'],4)."', '".$Nombre."', '".$_POST[descripcion]."')") or die(mysql_error());
}
            else{
                                  
mysql_query("UPDATE enlaces SET visitas=visitas+1 WHERE link='".$ref."' AND activo='1'" ) or die(mysql_error());

Código PHP:
CREATE TABLE `enlaces` (
  `
idsmallint(255NOT NULL auto_increment,
  `
nombrevarchar(200NOT NULL default '',
  `
buscarvarchar(200NOT NULL default '',
  `
descripciontext NOT NULL,
  `
linkvarchar(200NOT NULL default '',
  `
visitassmallint(255NOT NULL default '0',
  `
activosmallint(1NOT NULL default '0',
  `
cat_idvarchar(200NOT NULL default '',
  `
passvarchar(200NOT NULL default '',
  `
editadosmallint(1NOT NULL default '0',
  `
emailvarchar(200NOT NULL default '',
  `
fechavarchar(30NOT NULL default '',
  
PRIMARY KEY  (`id`)
ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=34 

Buen espero me puedan ayuda muchas gracias

saludos

Última edición por hawaiian050; 03/03/2008 a las 00:42 Razón: UPDATE enlaces SET visitas=visitas+1 WHERE link='".$ref."' AND activo='1'" no me activa ? solo activados actualiza
  #2 (permalink)  
Antiguo 03/03/2008, 00:35
Avatar de hawaiian050  
Fecha de Ingreso: junio-2007
Mensajes: 285
Antigüedad: 16 años, 10 meses
Puntos: 2
Ayuda

alguien me daria un mano es importate gracias
  #3 (permalink)  
Antiguo 03/03/2008, 04:53
 
Fecha de Ingreso: julio-2007
Mensajes: 30
Antigüedad: 16 años, 9 meses
Puntos: 1
Re: AYUDA UPDATE enlaces SET visitas=visitas+1 WHERE link='".$ref."' AND activo='1'"

Creo entender que el fallo lo tienes aquí:

Código PHP:
mysql_query("UPDATE enlaces SET visitas=visitas+1 WHERE link='".$ref."' AND activo='1'" ) or die(mysql_error()); 
si "activo" es un campo "int" me parece que no te reconoce el "1" entrecomillado. Prueba esto (aunque supongo que ya le habrás dado mil vueltas):

Código PHP:
mysql_query("UPDATE enlaces SET visitas=visitas+1 WHERE link='".$ref."' AND activo=1" ) or die(mysql_error()); 
Un saludo!
  #4 (permalink)  
Antiguo 03/03/2008, 07:23
Avatar de hawaiian050  
Fecha de Ingreso: junio-2007
Mensajes: 285
Antigüedad: 16 años, 10 meses
Puntos: 2
Re: AYUDA UPDATE enlaces SET visitas=visitas+1 WHERE link='".$ref."' AND activo='1'"

Cita:
Iniciado por Bolaextra Ver Mensaje
Creo entender que el fallo lo tienes aquí:

Código PHP:
mysql_query("UPDATE enlaces SET visitas=visitas+1 WHERE link='".$ref."' AND activo='1'" ) or die(mysql_error()); 
si "activo" es un campo "int" me parece que no te reconoce el "1" entrecomillado. Prueba esto (aunque supongo que ya le habrás dado mil vueltas):

Código PHP:
mysql_query("UPDATE enlaces SET visitas=visitas+1 WHERE link='".$ref."' AND activo=1" ) or die(mysql_error()); 
Un saludo!
me da igual el resultado osea no hace nada un salu2 gracias de todas formas
  #5 (permalink)  
Antiguo 03/03/2008, 09:15
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Re: AYUDA UPDATE enlaces SET visitas=visitas+1 WHERE link='".$ref."' AND activo='1'"

Tu problema es que no estas haciendo bien las referencias de tu query:
Código PHP:
$rst mysql_query("SELECT * FROM enlaces WHERE link like '".$ref."'") or die( mysql_error() );
$rows mysql_num_rows$rst );
if(
$rows == 0) {
                
mysql_query("INSERT INTO enlaces (fecha, link, buscar, nombre, descripcion) values ('".$time."', '".$ref."', '".line($_GET['buscar'],4)."', '".$Nombre."', '".$_POST[descripcion]."')") or die(mysql_error());
} else{
               
mysql_query("UPDATE enlaces SET visitas=visitas+1 WHERE link='".$ref."' AND activo='1'" ) or die(mysql_error());

Saludos.
  #6 (permalink)  
Antiguo 03/03/2008, 16:19
Avatar de hawaiian050  
Fecha de Ingreso: junio-2007
Mensajes: 285
Antigüedad: 16 años, 10 meses
Puntos: 2
Re: AYUDA UPDATE enlaces SET visitas=visitas+1 WHERE link='".$ref."' AND activo='1'"

Cita:
Iniciado por GatorV Ver Mensaje
Tu problema es que no estas haciendo bien las referencias de tu query:
Código PHP:
$rst mysql_query("SELECT * FROM enlaces WHERE link like '".$ref."'") or die( mysql_error() );
$rows mysql_num_rows$rst );
if(
$rows == 0) {
                
mysql_query("INSERT INTO enlaces (fecha, link, buscar, nombre, descripcion) values ('".$time."', '".$ref."', '".line($_GET['buscar'],4)."', '".$Nombre."', '".$_POST[descripcion]."')") or die(mysql_error());
} else{
               
mysql_query("UPDATE enlaces SET visitas=visitas+1 WHERE link='".$ref."' AND activo='1'" ) or die(mysql_error());

Saludos.
Si asi es muchas gracias por tu ayuda

Salu2

Última edición por hawaiian050; 03/03/2008 a las 16:23 Razón: letra XD
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 06:04.