Guardar datos de url a base de datos mysql.

  • Autor Autor Jordan1
  • Fecha de inicio Fecha de inicio
J

Jordan1

Curioso
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Hola,
Bueno estoy realizando un contador de clicks de enlaces salientes en mi sitio.
Funciona de la siguiente manera.

http://misitio.com/scriptcontadordeurl.php?url=http://sitio2.com/2015/10/entrada-post.html&desde=otrostio.com

En el enlace http://misitio.com/scriptcontadordeurl.php?url="" se le agrega cualquier url al dar enter te redirige a la pagina de destino.


El problema es que en mi base de datos no me guarda la url de destino,
solamente cuenta los clicks de las url que están registradas en la base de datos, pero tendría que añadir una por una manualmente para que empiece a contar los clicks, quiero saber si hay alguna manera de que se registre en la base de datos automáticamente.

Y tambien quisiera agregar que se guarde desde que pagina fue redirigido: &desde=otrostio.com
Insertar CODE, HTML o PHP:
<?php

  $url=$_GET['url']; 
  
mysql_connect("servidor", "usuario", "contra") or die(mysql_error());
mysql_select_db("basee") or die(mysql_error());
$update = "UPDATE tabla set  clicks=(clicks + 1) WHERE url='$url'";

mysql_query($update) or die (mysql_error());
$ip = getRealIP();
$update = "INSERT INTO detalles_click (ip,clicks_ip,ad_id) VALUES ('$ip','1','$id') ON DUPLICATE KEY UPDATE clicks_ip = clicks_ip + 1";
mysql_query($update) or die (mysql_error());
$data = mysql_query("SELECT url FROM tabla WHERE url='$url'") or die(mysql_error());
$info = mysql_fetch_array($data);

//redirige a la url establecida// 
  header("Location: $url"); 
?>

Gracias
 
Última edición:
Hola Jordan

El SELECT de URL lo deberías hacer antes de nada.
Compruebas tu $data
- Si hay datos(significa que ya existe esa url) ejecutas tu UPDATE de clicks con el $id (supongo que ahí guardarás la URL).
- Si no hay datos, haces un INSERT en tabla con la url recogida.

Para guardar la página desde la que el usuario se ha ido puedes recoger antes la url actual.
PHP:
$url_absoluta = "http://".$_SERVER[HTTP_HOST].$_SERVER[REQUEST_URI];
$url_relativa = $_SERVER[REQUEST_URI];
 
Atrás
Arriba