Visualizzazione risultati 1 fino 9 di 9

Discussione: Contatore click su link esterni

  1. #1
    Guest

    Predefinito Contatore click su link esterni

    Ciao a tutti
    Avrei bisogno di contare i click fatti su un link esterno senza modificare l'url nell'href.. mi spiego, vorrei una cosa del genere:
    Codice HTML:
    <a href="http:www.example.it" onclick="conta()">Esempio</a>
    ma non sò come implementare la funzione in js.. mi va bene sia con database che con file di testo..
    Ciao e grazie

    EDIT:
    se c'è un modo in php è meglio..

  2. #2
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    Vedo di darti una risposta chiara:
    - con JS non è possibile, perché non è in grado di accedere né al database né a file di testo (a meno di usare estensioni supportate soltanto da Internet Explorer)
    - con PHP è possibile scrivere su file e database ma andrebbe eseguito PRIMA che si carichi la pagina, quindi l'unico modo che hai è modificare il link usando una "pagina wrapper" che compia le sue operazioni (apertura e aggiornamento del contatore) e poi ti carichi la pagina reale...

    Stammi bene...
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

  3. #3
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Potresti scrivere il link in questo modo:
    Codice HTML:
    <a href="http://www.example.it" onclick="conta(1); return false;">Esempio</a>
    L'1 l'ho messo per indicare il link, così a ogni link assegnerai un numero.
    La funzione invece potrai fare in modo che ti reindirizzi verso la pagina in PHP che aggiunge il numero di visite e che poi reindirizzerà verso l'indirizzo.
    Ultima modifica di funcool : 06-02-2007 alle ore 10.58.36
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  4. #4
    Guest

    Predefinito

    Allora è come temevo..
    Grazie comunque


    EDIT: Ho trovato una soluzione, la posto per chi finirà in questa discussione.
    Ho fatto più o meno come diceva funcool: al click, apro un popup con window.open, inserisco i dati nel database, chiudo il popup. Ecco il codice:

    pagina.html
    Codice HTML:
    <SCRIPT type="text/javascript">
    function clic(id) 
    {
    par='width=1,height=1,scrollbars=no,resizable=no,menubar=no,status=no';
    url='conta.php?id='+id;
    window.open (url , "target", par);
    }
    </SCRIPT>
    <a href="http://www.example.it" onClick="clic(1)" target="_blank">Esempio</a>
    conta.php
    Codice PHP:
    <?
    include('config.php');

    $query="UPDATE tabella SET clic=clic+1 WHERE id='$_GET[id]'";
    mysql_query($query,$db);
    ?>

    <script type="text/javascript">
    window.close()
    </script>
    Domanda: perchè se metto clic+=1 al posto di clic=clic+1 non funge??
    Ultima modifica di Niso : 06-02-2007 alle ore 16.56.11

  5. #5
    Guest

    Predefinito

    clic+=1 cosa vorrebbe dire ? Non ha senso °-°
    al massimo sarebbe clic++=1 , però anche questo ......

  6. #6
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Citazione Originalmente inviato da Niso
    Domanda: perchè se metto clic+=1 al posto di clic=clic+1 non funge??
    Dovresti chiederlo a Donald Chamberlin. L'SQL è fatto così e non supporta quell'operazione.

    Citazione Originalmente inviato da comunitavirtuali
    clic+=1 cosa vorrebbe dire ? Non ha senso °-°
    al massimo sarebbe clic++=1 , però anche questo ......
    clic+=1 in altri linguaggi aggiungerebbe 1 al valore precedente di clic. Facendo clic++ in altri linguaggi aggiungerebbe 1 a clic. clic++=1 non l'ho mai visto.

    P.S.: Non scrivere due messaggi consecutivi, utilizza il tasto Edita.
    Ultima modifica di funcool : 06-02-2007 alle ore 16.14.18
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  7. #7
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    Citazione Originalmente inviato da Niso
    Domanda: perchè se metto clic+=1 al posto di clic=clic+1 non funge??
    Perché stai scrivendo in linguaggio MySQL e non in C/Java/PHP (che permettono questa sintassi)... :-D

    Stammi bene...
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

  8. #8
    Guest

    Predefinito

    Grazie mille per lo script...

    molto utile...

  9. #9
    Guest

    Predefinito

    Scusate se riprendo questa antica discussione ma il codice mi sembrava buono, solo che non funziona. Sto cercando di utilizzarlo con wordpress. Vorrei capire come si mostra il valore del contatore al visitatore...

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •