Problema di redirect dal contatore di click

davide1982

Nuovo Utente
14 Giu 2010
26
0
0
Sono ancora io... scusatemi, ma non faccio a tempo a risolvere un problema che se ne presenta un altro!
Nel mio database ho una tabella con i seguenti campi:

--- id, img, link, redirect, numclick, descrizione ---
(Il campo redirect ho provato ad aggiungerlo in un secondo momento con lo scopo di risolvere il mio problema).

nel campo link ho questo: <a href="counter.php?id=1" target="_blank">miolink</a>
nel campo redirect ho: "http://www.sitodidestinazione.it"

In pratica cliccando su un link, che mi rimanda a counter.php, riesco ad incrementare il numero di click che sono stati effettuati, ma poi non riesco a reindirizzarlo al sito a cui dovrebbe andare.
Questo il codice:

PHP:
require ("db/db.php");

#Recupero l'ID del link
$linkid = $_GET['id'];

#Seleziono il record corrispondente all'ID del link
$sql = "SELECT link,redirect FROM miatabella WHERE id = '$linkid'"; $result = mysql_query($sql); $numrows = mysql_num_rows($result);

#Se trovo l'ID selezionato...

if ($numrows!=0) {

#Recupero il valore del campo redirect...
$resrow = mysql_fetch_row($result); $link_to_redirect = $resrow['redirect'];

#Aggiorno il contatore
$sql2 = "UPDATE miatabella SET numclick = numclick + 1 WHERE id = '$linkid'"; $result2 = mysql_query($sql2);

#Reindirizzo l'utente sul sito di destinazione
Header("Location: ". $link_to_redirect);

}
#Se invece l'ID non esiste...
else
{
#stampo un errore!
print "Errore..."; }

Ho provato diverse soluzioni per
PHP:
#Recupero il valore del campo redirect...
$resrow = mysql_fetch_row($result); $link_to_redirect = $resrow['redirect'];
perché suppongo che il problema sia qui, ma l'unico modo in cui ha funzionato è stato scrivendo il link da reindirizzare direttamente nella variabile, così:
$link_to_redirect = "http://www.sitodidestinazione.it/", ma così dovrei riscrivere tutto per ogni link che voglio monitorare...
 
Ultima modifica:
Dunque, ho trovato una soluzione, che funziona:

PHP:
#Recupero il valore del campo redirect...
while ($riga = mysql_fetch_array($result)) {
	$link_to_redirect = $riga['redirect'];
}

L'unica cosa è che mi sembra un po' lento... nel senso, quando clicco sul link faccio a tempo a vedere nella barra degli indirizzi: .../counter.php?id=1, poco dopo la pagina viene reindirizzata al sito di destinazione... è normale la cosa o potrebbe/dovrebbe avvenire + velocemente questa azione?
 

Discussioni simili