Foros del Web » Programando para Internet » PHP »

Ayuda.. me supera..

Estas en el tema de Ayuda.. me supera.. en el foro de PHP en Foros del Web. Buenas.. miren, lo que queria hacer es esto simple.. tengo una tabla bloquea que almacena ips.. entonces en el "archivo.php" quiero hacer lo siguiente.. Código ...
  #1 (permalink)  
Antiguo 13/04/2007, 19:54
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Ayuda.. me supera..

Buenas..
miren, lo que queria hacer es esto simple..
tengo una tabla bloquea que almacena ips..
entonces en el "archivo.php" quiero hacer lo siguiente..

Código PHP:
<?

include('config.php');

$ips   $_SERVER["REMOTE_ADDR"]; //traigo el IP del user


$sql "UPDATE user SET clicks=clicks+1 WHERE id_imagen=$id_usuario";
mysql_query($sql);
  
echo 
'<meta http-equiv="Refresh" content="10;URL=index.php">'

?>

y lo que quiero hacer es que si el IP = a un IP que se encuentra en la tabla..
Código PHP:
else{

echo 
'<meta http-equiv="Refresh" content="10;URL=pagina.php">'//que me redircione a una pagina


y que si el UP, no esta en la Base de Datos, me ejecute el Update de arriba..


saludos y gracias de antemano!!
MC
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #2 (permalink)  
Antiguo 13/04/2007, 20:30
 
Fecha de Ingreso: junio-2006
Mensajes: 37
Antigüedad: 17 años, 10 meses
Puntos: 0
Re: Comprobar dato.. con else...

Hola!

Mira, podrias hacer algo asi:

Código PHP:
<?
include('config.php');

$ips   $_SERVER["REMOTE_ADDR"]; //traigo el IP del user

$sql mysql_query("SELECT count(ip) as ip_result FROM tablaips WHERE ip = '$ips'"); // Cuento la cantidad de Ips que hay en "tablaips"
$ip_result mysql_fetch_array($sql);
$ip_result $ip_result['ip_result'];

if(
$ip_result >= "1") { // Si el resultado es igual o mayor a 1

      
$sql "UPDATE user SET clicks=clicks+1 WHERE id_imagen=$id_usuario";
      
mysql_query($sql);
      echo 
'<meta http-equiv="Refresh" content="10;URL=index.php">'//ejecutas el update
                         
}
else {
  echo 
'<meta http-equiv="Refresh" content="10;URL=pagina.php">'//sino, que me redircione a una pagina
}

?>
  #3 (permalink)  
Antiguo 14/04/2007, 14:48
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: Comprobar dato.. con else...

BUenas tardes.
gracias por responder..
no me funciono..
asique "trate" de hacer uno pero me da unos errores..

este es el codigo..:
Código PHP:
<?
include('config.php');

$IP $_SERVER["REMOTE_ADDR"];


$consulta=("SELECT ip FROM user WHERE ip='$IP' ");


if(
mysql_num_rows($consulta) > 0) { //linea 10

echo'ya clickeastes SIMON';

}else{
$sql "UPDATE user SET clicks=clicks+1 WHERE id_imagen=id";

mysql_query($sql);

echo 
'<meta http-equiv="Refresh" content="5;URL=index.php">'
}

?>
pero el error que me da es el siguiente

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\Documents and Settings\Administrador\Escritorio\NuevaPage\CDF\cl ick.php on line 10

y el click te lo suma en la BD estando mi IP en la BD..

saludos y gracias!
MC
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #4 (permalink)  
Antiguo 14/04/2007, 15:31
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: Ayuda.. error en num_rows

$consulta=("SELECT ip FROM user WHERE ip='$IP' ");

No olvides que ls consultas a bases de datos MySql se ejecutan con la funcion mysql_query():

Código PHP:
<? 
include('config.php'); 
 
$IP $_SERVER["REMOTE_ADDR"]; 
 
 
$consulta=mysql_query("SELECT ip FROM user WHERE ip='$IP' "); 
 
 
if(
mysql_num_rows($consulta) > 0) { //linea 10 
 
echo'ya clickeastes SIMON'
 
}else{ 
$sql "UPDATE user SET clicks=clicks+1 WHERE id_imagen=$id"
 
mysql_query($sql); 
 
echo 
'<meta http-equiv="Refresh" content="5;URL=index.php">';  

 
?>

Última edición por okram; 14/04/2007 a las 16:09
  #5 (permalink)  
Antiguo 14/04/2007, 15:34
Avatar de MoDoRrO  
Fecha de Ingreso: septiembre-2005
Ubicación: Php+Flash+AS
Mensajes: 1.072
Antigüedad: 18 años, 7 meses
Puntos: 12
Re: Ayuda.. error en num_rows

haber. y asi???

Código PHP:
<?php 
include('config.php'); 

$ip $_SERVER["REMOTE_ADDR"]; 


$consulta=mysql_query("SELECT ip FROM user WHERE ip='$ip'"); 

$numero=mysql_num_rows($consulta);

if(
$numero 0) {

echo 
"ya clickeastes SIMON"

}else{
 
mysql_query("UPDATE user SET clicks=clicks+1 WHERE id_imagen=id"); 

echo 
"<meta http-equiv='Refresh' content='5;URL=index.php'>";  


?>
siendote sincero, no le entendi a tu UPDATE

Saludios
  #6 (permalink)  
Antiguo 14/04/2007, 18:58
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: Ayuda.. error en num_rows

Buenas noches..
bueno, probe eso como me lo pasaron y no me funciono.. pero de todos modos.. ahora que tuve un rato "al pedo" me puse a pensar bien en el codigo y no me sirve de la manera que lo queria hacer..

porque si yo hago click en ENLACE1, mi IP queda en la tabla y hasta 24 hs despues que se borra, no vo a poder clickear en ningun otro...
y lo que quiero es que si yo clickeo en el ENLACE1, a ese enlace, lo voy a poder clickear de nuevo despues de las 24 hs, pero si quiero clickear el ENLACE2 me tiene que dejar..
la verdad que se me estan quemando las ideas..

si alguno se le ocurre algo para hacer esto se lo agradeceria infinitas veces,..
saludos y muchas gracias por su antencion..

MC
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #7 (permalink)  
Antiguo 14/04/2007, 22:27
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: Ayuda.. me supera..

Buenas Noches..
bueno, pensando nuevamente.. se me ocurre esto..
haber que opinan..

hago una tabla especialmente para las IPS..

con ID autoinclemental FECHA IP ENLACE

tendria estos 4 campos..

entonces cada ip que clickea, la guardo en la BD junto con el enlace que hizo click..

luego, y es la parte que se me complica mas.. es cuando tendria que hacer que

if ..SI EL IP Y EL ENLACE ESTA EN LA BD

else{
echo 'ya has clickeado';

}echo{

QUE EJECUTE EL UPDATE DE ARRIBA

}


bueno espero sus opniones..
saludos y gracias nuevamente..
MC
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #8 (permalink)  
Antiguo 15/04/2007, 08:48
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: Ayuda.. me supera..

Alguna idea o orientacion??
saludos y gracias!
MC
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #9 (permalink)  
Antiguo 15/04/2007, 08:55
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Re: Ayuda.. me supera..

cual es la idea de esto ? actualizar ip y recargar la pagina :/ mmmmmm
bueno haber explicamelo :P y vamos como se hace que por lo que veo quieres hacer un uodate si el ip esta si no ? eso no lo entiendo lo ingresas eso del click no cache na mucho :P
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #10 (permalink)  
Antiguo 15/04/2007, 09:14
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: Ayuda.. me supera..

Mira..la idea es que un user no pueda votarse asi mismo o a otro user, mas de una vez al dia, o cada 20hs, depende de como haga el delete..

entonces, para que no pueda votarse mas de una vez en el enlace, una vez que clickea, guardo su IP, el ENLACE en una tabla y luego, cada vez que quiera clickear, en click.php

Código PHP:
<?

include('config.php');

$ips   $_SERVER["REMOTE_ADDR"]; //traigo el IP del user


$sql "UPDATE user SET clicks=clicks+1 WHERE id_imagen=$id_usuario";
mysql_query($sql);
  
echo 
'<meta http-equiv="Refresh" content="10;URL=index.php">'

?>
le tengo que agregar que si el IP y ese ENLACE estan en la tabla, ue te de el error.. y si no esta, te ejecute el update, dandote el voto..

nose si se entiede..
saldos y gracias!!
MC
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #11 (permalink)  
Antiguo 15/04/2007, 12:12
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: Ayuda.. me supera..

alguna idea u orientacion?
saludos!

MC
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #12 (permalink)  
Antiguo 15/04/2007, 12:24
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Re: Ayuda.. me supera..

haber si entendi :p tienes usuarios que votan, cuando votan no pueden votarse a si mismo o sea votan por otros usuarios y ademas slo una ves al dia, mmmmmm
entonces seria algo como

tabla usuarios
usuario
ip

pagina
//no se como trabajas a los usuarios si son del sistema o son cualquiera :/
//voy a suponer que son del sistema
//envio del formulario donde vota por ej...
$usuario_sistema = $_POST[usuario];
//un select para ver si el usuario existe ......
//me traigo los datos que necesito $user_db, $ip_sistema;
if ($usuario_sitema = $user_db)
{
//pasa y sigo
//una ves el usuario existe compruebo la ip no este
$ip = $_SERVER["REMOTE_ADDR"];
if ($ip == $ip_sistema)
{
//si existe
echo '<meta http-equiv="Refresh" content="10;URL=pagina.php">';
}
else
{
//hago el update // recordar que el campo debe ser creado con comentario 0 o algun valor para que pueda hacer el update el php, el php no hace updates de valores NULL te va a mandar pantallaso ;)
Update table ip_sistema = $ip....
}
}
else
{
echo "debe registrarse";
}




mmmmmmm eso entendi esta no se si se entiende si quieres lograr otra cosa me dices y le seguimos hechando codigo ;)

saludos
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #13 (permalink)  
Antiguo 15/04/2007, 12:28
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Re: Ayuda.. me supera..

por cierto por hay andaba un codigo para limpiara cada 24 las ip puedes trabajar tablas aparte a los usuarios seria mas limpio, y mmmmm eso de sumar 1 click no cache le va haciendo un voto hammmmmmmm tonce me falta agregar en el update eso del suma pero es una variable numas $num = 1;
y la sumas a la otra o puedes traerte la variable de antes y sumarle antes y pasale el valor al update ya sumado hay tantas formas de como hacerlo, hay que puro darle numa :)

cualquier cosa aqui estamos...
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #14 (permalink)  
Antiguo 15/04/2007, 12:34
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: Ayuda.. me supera..

muchas gracias por el codiigo, pero no me sirve... veo que aun no entiendes.. jaja..
bueno.. haber como te lo explico mejor....

el error que tiene el codigo que hicistes.. es que solo pueden votae los usuarios registrados.. por eso para "bloquearlo" a un usuario si quiere hacer otra vez click en el enlace para VOTAR uso el IP.. entonces asi puede votar cualquiera y no necesariamente tienes que estar registrado.. sino seria mucho liuo.. ya que si un amigo te quiere dar un voto.. tiene que estar registrado..
es cansador..

no se si me entendistes...!!¿?¿

saludos y gracias!!
MC

PD: basicamente lo que no se bien hacer, y que necesito, es esto..

hago una tabla especialmente para las IPS..

con ID autoinclemental FECHA IP ENLACE

tendria estos 4 campos..

entonces cada ip que clickea, la guardo en la BD junto con el enlace que hizo click..

luego, y es la parte que se me complica mas.. es cuando tendria que hacer que

if ..SI EL IP Y EL ENLACE ESTA EN LA BD

else{
echo 'ya has clickeado';

}echo{

QUE EJECUTE EL UPDATE DE ACA ABAJO

}
Código PHP:
<? 
include('config.php'); 
 
$IP $_SERVER["REMOTE_ADDR"]; 
 
 
$consulta=mysql_query("SELECT ip FROM user WHERE ip='$IP' "); 
 
 
if(
mysql_num_rows($consulta) > 0) { //linea 10 
 
echo'ya clickeastes SIMON'
 
}else{ 
$sql "UPDATE user SET clicks=clicks+1 WHERE id_imagen=$id"
 
mysql_query($sql); 
 
echo 
'<meta http-equiv="Refresh" content="5;URL=index.php">';  

 
?>

SALDUDOS Y GRACIAS!!
MC
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #15 (permalink)  
Antiguo 15/04/2007, 12:49
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Re: Ayuda.. me supera..

vamos de de nuevo :P
aaa ya entonces no es para usuarios registrados es para cualquiera y es un voto para votar una web, no lo sabia por eso preguntaba :P.......

haber deja ponerle loading .....

table_ip
id ip enlace fecha_voto

table_user
user
voto

supongo .... :P

esoty en un apagina y voto a traves de un enlace o formulario a un usuario? una web que votas :/ eso aun no lo se .....
bueno supondre un usuario :P

tonces tienes tu link o formulario, voya creer formulario mas facil,
yap pasas tus datos "$fecha_voto, $ip $usuario $votado $click= 1 para sumar de inmediato y $enlace....
ahora preguntas en tu base de datos

traeme todos los usuarios que sean = al usuario enviado
y que ademas tengan fecha voto = hoy .... y hoy = $fecha_voto y enlace= $enlace....

tonce si uno falla es que no coincide la fecha con niun usuario o no hay enlace relacionado votaron de otra web y bien ambas...

siendo haci no puede votar.... no importa la ip

ahora si entra al if ese de arriba por que encontro todo igual preguntas por la ip, si ip = $ip addr tonces haces el update si no tampoco pasa ud ya voto ?

si no hay ip tonces update ip la ingresas y sumas un voto al usuario

andales sera haci la cosa me entiendes, por lo que veo eso si te estas ahogando en un vaso de agua por que sabes como va la cosa bien pero no puedes hacer el update o la consulta algo no te pesca :P

bueno yo seguire inchando a lo mejor una idea te doy por que aun no se como va 100% la cosa que quires votar etc... pero el que la sigue la consigue ;)
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #16 (permalink)  
Antiguo 15/04/2007, 21:18
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: Ayuda.. me supera..

Alguna otra idea de como hacer lo del update con el if y el else..???
saludos y gracias!
MC
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
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 12:55.