Pagina 3 di 4 PrimoPrimo 1234 UltimoUltimo
Visualizzazione risultati 61 fino 90 di 101

Discussione: [PHP/MySQL] Script Statistiche

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

    Predefinito

    Qual è il problema?
    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

  2. #62
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Il problema non è il primo browser che non viene riconosciuto, ma se osservi bene prima del browser usato esce: UserAgentBrowser Usato:
    Codice:
    User Agent - Usato: 12
    User AgentMediapartners-Google - Usato: 1
    User AgentMozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 1.1.4322) - Usato: 125
    User AgentMozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; FunWebProducts; .NET CLR 2.0.50727; Zango 10.0.370.0) - Usato: 1
    User AgentMozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SIMBAR={EB1DDB1B-F92B-4d61-AC10-CE077BBFF721}; .NET CLR 1.1.4322; InfoPath.1) - Usato: 1
    P.S. Tu che sei un moderatore, se hai problemi nel capirmi puoi vedere il mio IP cosi da accedere nella mia root e vedere il servizio di statistiche: IP/Sito/statistiche.php
    Ultima modifica di miki92 : 06-01-2008 alle ore 18.07.50
    Apprezzi l'aiuto? Offrimi un caffè!

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

    Predefinito

    E il problema qual è? Manca lo spazio o qualcos'altro?
    Se è quello il problema, basta che al posto di:
    Codice PHP:
    echo "User Agent";
    Metti:
    Codice PHP:
    echo "User Agent ";
    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. #64
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Ho modificato il codice cosi:
    Codice PHP:
    echo "User Agent 1";
    $sql = "SELECT user_agent, COUNT(*) AS num FROM statistiche GROUP BY user_agent";
    $result = mysql_query($sql) or die(mysql_error());
    while(
    $ris=mysql_fetch_array($result)) {
    echo
    "{$ris['user_agent']} - Usato: {$ris['num']}<br />";
    }
    E mi stampa:
    Codice:
    User Agent 1 - Usato: 12
    Mediapartners-Google - Usato: 1
    Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 1.1.4322) - Usato: 125
    Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; FunWebProducts; .NET CLR 2.0.50727; Zango 10.0.370.0) - Usato: 1
    Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SIMBAR={EB1DDB1B-F92B-4d61-AC10-CE077BBFF721}; .NET CLR 1.1.4322; InfoPath.1) - Usato: 1
    Si può modificare affinché esca cosi:
    Codice:
    User Agent 1
    I VARI USER_AGENT Usati: TOT_VOLTE
    In poche parole voglio levare: - Usato: 12 all'inizio del codice.
    Apprezzi l'aiuto? Offrimi un caffè!

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

    Predefinito

    Vuoi fare in modo che non escano le righe dove non è stato inserito l'user agent?
    Modifica:
    Codice PHP:
    $sql = "SELECT user_agent, COUNT(*) AS num FROM statistiche GROUP BY user_agent";
    Con:
    Codice PHP:
    $sql = "SELECT user_agent, COUNT(*) AS num FROM statistiche WHERE user_agent IS NOT NULL GROUP BY user_agent";
    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

  6. #66
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Ottimo, ma se viene usato per le lingue usate compare sempre quell' "Usato - 1"
    Codice PHP:
    $sql = "SELECT language, COUNT(*) AS num FROM statistiche WHERE language IS NOT NULL GROUP BY language";
    $result = mysql_query($sql) or die(mysql_error());
    while(
    $ris=mysql_fetch_array($result)) {
    echo
    "{$ris['language']} - Usato: {$ris['num']}<br />";
    }
    Apprezzi l'aiuto? Offrimi un caffè!

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

    Predefinito

    Prova a modificare così:
    Codice PHP:
    $sql = "SELECT language, COUNT(*) AS num FROM statistiche WHERE language IS NOT NULL AND language<>'' GROUP BY language";
    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

  8. #68
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Manca poco all'ultimazione dello script dopo non vi scoccio più
    Codice PHP:
    $sql = "SELECT provenienza, COUNT(*) AS num FROM statistiche WHERE provenienza IS NOT NULL GROUP BY provenienza";
    $result = mysql_query($sql) or die(mysql_error());
    while(
    $ris=mysql_fetch_array($result)) {
    echo
    "{$ris['provenienza']} - Usato: {$ris['num']}<br />";
    }
    Per far si che le pagine del mio sito non vengano contate come referer?
    Apprezzi l'aiuto? Offrimi un caffè!

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

    Predefinito

    Al posto di:
    Codice PHP:
    while($ris=mysql_fetch_array($result)) {
    echo
    "{$ris['provenienza']} - Usato: {$ris['num']}<br />";
    }
    Metti:
    Codice PHP:
    while($ris=mysql_fetch_array($result)) {
    if (!
    strpos($ris['provenienza'],"miki92.altervista.org"))
    echo
    "{$ris['provenienza']} - Usato: {$ris['num']}<br />";
    }
    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

  10. #70
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Ecco qui, l'ultima cosa...se voglio che vengono contate le pagine visualizzate, però anche se uno fa il refresh il numero aumenti...
    Codice PHP:
    $sql = "select pagina, count(*) as totale from statistiche where date_format(data_ora,'%d-%m-%Y')=date_format(now(),'%d-%m-%Y') group by pagina";
    $result = mysql_query($sql) or die(mysql_error());
    while(
    $row_pagine=mysql_fetch_array($result)){
    $nome_pagina = $row_pagine['pagina'];
    $visite_pagina = $row_pagine['totale'];
    $url = "http://miki92.altervista.org";
    echo
    "<br />";
    echo
    "$url<span class=\"viola\">$nome_pagina</span> <span class=\"celeste\">Visualizzata $visite_pagina volte.</span>\r\n";
    Leviamo il blocco a questo codice e lo mettiamo a questa discussione
    Apprezzi l'aiuto? Offrimi un caffè!

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

    Predefinito

    Nel codice che hai scritto non c'è nessun blocco.
    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

  12. #72
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Nel codice che ho postato io no, però quando mi hai postato il codice per scrivere (nel database) hai messo il blocco li e quindi se io qua aggiorno la pagina comunque il numero non aumenta...
    Apprezzi l'aiuto? Offrimi un caffè!

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

    Predefinito

    Allora togli il blocco nello script dove inserisci i dati nel database.
    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

  14. #74
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Ad essere sincero è tutto il pomeriggio che vedendo che qui non mi rispondevate cercavo soluzioni alternative però come si dice (tradotto in italiano) "Aggiusta la chiesa e rompi la sacrestia) ho provato a fare un doppio inserimento ecc ma quando aggiustavo le pagine visualizzate rompevo le visite uniche:
    Codice PHP:
    <?php
    $connessione
    =mysql_connect("localhost","root","") or die(mysql_error());
    $basedati=mysql_select_db("my_miki92") or die(mysql_error());

    if (!isset(
    $_GET['noStat'])) {
    $risultato = mysql_query("SELECT * FROM statistiche WHERE indirizzo_ip='".mysql_escape_string($_SERVER['REMOTE_ADDR'])."' AND date_format(data_ora,'%d-%m-%Y')=date_format(now(),'%d-%m-%Y')");
    if (
    mysql_num_rows($risultato)== 0) {
    $sql = "INSERT INTO statistiche (pagina,data_ora,user_agent,language,indirizzo_ip,provenienza) values(\"".$_SERVER['SCRIPT_NAME']."\",now(),\"".$_SERVER['HTTP_USER_AGENT']."\",\"".$_SERVER['HTTP_ACCEPT_LANGUAGE']."\",\"".$_SERVER['REMOTE_ADDR']."\",\"".$_SERVER['HTTP_REFERER']."\")";
    mysql_query($sql) or die(mysql_error());
    }
    }
    ?>
    Apprezzi l'aiuto? Offrimi un caffè!

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

    Predefinito

    Codice PHP:
    <?php
    $connessione
    =mysql_connect("localhost","root","") or die(mysql_error());
    $basedati=mysql_select_db("my_miki92") or die(mysql_error());

    if (!isset(
    $_GET['noStat'])) {
    $sql = "INSERT INTO statistiche (pagina,data_ora,user_agent,language,indirizzo_ip,provenienza) values(\"".$_SERVER['SCRIPT_NAME']."\",now(),\"".$_SERVER['HTTP_USER_AGENT']."\",\"".$_SERVER['HTTP_ACCEPT_LANGUAGE']."\",\"".$_SERVER['REMOTE_ADDR']."\",\"".$_SERVER['HTTP_REFERER']."\")";
    mysql_query($sql) or die(mysql_error());
    }
    ?>
    Per contare le visite uniche devi modificare lo script che le visualizza.
    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

  16. #76
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Aspetta cosi torniamo al punto di partenza... questo era lo script di inserimento che avevo inizialmente che poi successivamente ti ho chiesto di modificare per bloccare le visite uniche cosi che il contatore di visite giornaliere e quello delle visite totali non aumentasse se un utente faceva il refresh della pagina...
    Apprezzi l'aiuto? Offrimi un caffè!

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

    Predefinito

    Lo so che è quello, ma è l'unico modo. Le visite uniche vengono bloccate nella visualizzazione delle statistiche (raggruppi le visite di un utente per indirizzo IP e giorno).
    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

  18. #78
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Ok allora ricapitolando, il codice che scrive torna quello iniziale, mentre il codice che mostra il tutto attualmente è questo:
    Codice PHP:
    $sql = "SELECT COUNT(*) FROM statistiche WHERE date_format(data_ora,'%d-%m-%Y')=date_format(now(),'%d-%m-%Y')";
    $result = mysql_query($sql) or die(mysql_error());
    $totale_visite_oggi = mysql_result($result,0,0);
    $sql1 = "SELECT COUNT(*) AS totale FROM statistiche";
    $result1 = mysql_query($sql1) or die(mysql_error());
    $totale_visite = mysql_result($result1,0,0);
    che poi viene mostrato in tabella tramite echo.
    Apprezzi l'aiuto? Offrimi un caffè!

  19. #79
    Guest

    Predefinito

    @funcool: ma non si può mettere un cookie col nome della pagina nella macchina del visitatore e fare in modo che duri fino alla mezzanotte del giorno stesso??
    Ultima modifica di mtgforum : 06-01-2008 alle ore 19.09.50

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

    Predefinito

    La prima query la potresti risolvere in questo modo:
    Codice PHP:
    $sql = "SELECT COUNT(*) FROM statistiche WHERE date_format(data_ora,'%d-%m-%Y')=date_format(now(),'%d-%m-%Y') GROUP BY indirizzo_ip";
    Per la seconda dipende di che tipo è il campo "data_ora".

    EDIT:
    Citazione Originalmente inviato da mtgforum Visualizza messaggio
    @funcool: ma non si può mettere un cookie col nome della pagina nella macchina del visitatore e fare in modo che duri fino alla mezzanotte del giorno stesso??
    Il fatto è che Miki92 vuole contare anche tutte le visualizzazioni, altrimenti bastava il blocco nell'inserimento.
    Ultima modifica di funcool : 06-01-2008 alle ore 19.11.04
    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

  21. #81
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Citazione Originalmente inviato da funcool Visualizza messaggio
    Per la seconda dipende di che tipo è il campo "data_ora".
    Cioè vuoi sapere cosa di preciso? Se è quello che ho capito io e di tipo DATESTAMP.
    Citazione Originalmente inviato da funcool Visualizza messaggio
    Il fatto è che Miki92 vuole contare anche tutte le visualizzazioni, altrimenti bastava il blocco nell'inserimento.
    Ha ragione funcool, inoltre non voglio usare coockie/txt ma solo php/MySQL.
    Inizialmente avevo pensato a un servizio di statistiche con PHP/txt che sapevo fare sicuramente con qualche script trovato su av, quello che sapevo io e qualcosa che mi ha detto un mio amico () ma poi per motivi personali ho voluto usare PHP/MySQL.
    Apprezzi l'aiuto? Offrimi un caffè!

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

    Predefinito

    Prova così (ci sarà sicuramente un metodo migliore):
    Codice PHP:
    $sql1 = "SELECT indirizzo_ip,date_format(data_ora,'%d-%m-%Y') AS data FROM statistiche ORDER BY data_ora";
    $result1 = mysql_query($sql1) or die(mysql_error());
    $ultimadata="";
    $indirizzi=array();
    $totale_visite=0;
    while(
    $ris=mysql_fetch_array($result1)) {
    if (
    $ultimadata==$ris['data']) {
    if (!
    in_array($ris['indirizzo_ip'],$indirizzi)) {
    $indirizzi[]=$ris['indirizzo_ip'];
    $totale_visite++;
    }
    }
    else {
    $ultimadata=$ris['data'];
    $indirizzi=array();
    $indirizzi[]=$ris['indirizzo_ip'];
    $totale_visite++;
    }
    }
    Citazione Originalmente inviato da miki92 Visualizza messaggio
    Ha ragione funcool, inoltre non voglio usare coockie/txt ma solo php/MySQL.
    Inizialmente avevo pensato a un servizio di statistiche con PHP/txt che sapevo fare sicuramente con qualche script trovato su av, quello che sapevo io e qualcosa che mi ha detto un mio amico () ma poi per motivi personali ho voluto usare PHP/MySQL.
    I cookie non sono legati ai file di testo.
    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

  23. #83
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Qual è la variabile che devo mostrare con echo?
    P.S. Quando dicevo "coocki/txt" intendevo dire "cookie o file txt".
    Apprezzi l'aiuto? Offrimi un caffè!

  24. #84
    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 miki92 Visualizza messaggio
    Qual è la variabile che devo mostrare con echo?
    Sempre $totale_visite.

    Citazione Originalmente inviato da miki92 Visualizza messaggio
    P.S. Quando dicevo "coocki/txt" intendevo dire "cookie o file txt".
    Vetri un po' scivolosi...
    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

  25. #85
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Mi dispiace, le visite crescono ad ogni refresh...
    Apprezzi l'aiuto? Offrimi un caffè!

  26. #86
    Guest

    Predefinito

    Per le visite uniche per ip e per giorno, prova:
    Codice:
    select count(distinct indirizzo_ip, date(data_ora)) from statistiche
    Però devo fare un appunto: hai pensato alla sicurezza? Hai fatto un escape delle stringhe che inserisci nel database? E quando fai l'output dei risultati, fai un escape degli eventuali codici HTML? Devi stare attento, se no potresti rischiare di subire un SQL injection o un CrossSiteScripting....

    Un modo veloce per risolvere (spero) molti problemi (se non tutti) è fare un escape delle variabili lette da $_SERVER con htmlspecialchars:

    $sql = "INSERT INTO statistiche (pagina, data_ora, user_agent, language, indirizzo_ip, provenienza) values(\"" . htmlspecialchars($_SERVER['SCRIPT_NAME'],ENT_QUOTES) . "\", now(), \"" . htmlspecialchars($_SERVER['HTTP_USER_AGENT'],ENT_QUOTES) . "\",\"" . htmlspecialchars($_SERVER['HTTP_ACCEPT_LANGUAGE'],ENT_QUOTES) . "\",\"" . htmlspecialchars($_SERVER['REMOTE_ADDR'],ENT_QUOTES) . "\",\"" . htmlspecialchars($_SERVER['HTTP_REFERER'],ENT_QUOTES) . "\")";

  27. #87
    Ospite Guest

    Predefinito

    Però devo fare un appunto: hai pensato alla sicurezza? Hai fatto un escape delle stringhe che inserisci nel database? E quando fai l'output dei risultati, fai un escape degli eventuali codici HTML? Devi stare attento, se no potresti rischiare di subire un SQL injection o un CrossSiteScripting....

    Un modo veloce per risolvere (spero) molti problemi (se non tutti) è fare un escape delle variabili lette da $_SERVER con htmlspecialchars:

    $sql = "INSERT INTO statistiche (pagina, data_ora, user_agent, language, indirizzo_ip, provenienza) values(\"" . htmlspecialchars($_SERVER['SCRIPT_NAME'],ENT_QUOTES) . "\", now(), \"" . htmlspecialchars($_SERVER['HTTP_USER_AGENT'],ENT_QUOTES) . "\",\"" . htmlspecialchars($_SERVER['HTTP_ACCEPT_LANGUAGE'],ENT_QUOTES) . "\",\"" . htmlspecialchars($_SERVER['REMOTE_ADDR'],ENT_QUOTES) . "\",\"" . htmlspecialchars($_SERVER['HTTP_REFERER'],ENT_QUOTES) . "\")";
    C'è mysql_escape_string() o addslashes()
    E comunque non vedo per quale motivo dovresti fare l'escape lì, come può l'utente finale modificare l'array superglobale $_SERVER sfruttandolo per una sql injection?


    Ciao!

  28. #88
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Allora volevo dirvi che il codice di funcool non funziona, aumenta le visite totali ad ogni refresh e quelle giornaliere non vengono visualizzate.
    Apprezzi l'aiuto? Offrimi un caffè!

  29. #89
    Guest

    Predefinito

    Infatti ho detto il modo veloce...

    Usando mysql_escape_string risolvi il problema dell'sql injection, ma non quello del XSS

    Immagina che un utente visiti la pagina links.php?evil=<script>alert("ciao")</script> e che questa pagina contenga un link al sito con questo script per statistiche, e di andare a vedere la pagina con il report dei referrer...

    Con mysql_escape_string dovrebbe comunque tutte le volte fare l'escape con htmlspecialchars, mentre se si usa htmlspecialchars prima di fare l'insert il problema è risolto a monte... (htmlspecialchars con ENT_QUOTES fa anche l'escape di " e ', che sono i caratteri pericolosi per l'sql)

    Non bisogna MAI fidarsi delle variabili esterne del php...
    Ultima modifica di stasera : 06-01-2008 alle ore 22.29.46

  30. #90
    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 miki92 Visualizza messaggio
    Allora volevo dirvi che il codice di funcool non funziona, aumenta le visite totali ad ogni refresh e quelle giornaliere non vengono visualizzate.
    Non ho trovato errori, scrivi il codice che utilizzi adesso (magari hai sbagliato a copiare qualcosa).

    Citazione Originalmente inviato da probid Visualizza messaggio
    E comunque non vedo per quale motivo dovresti fare l'escape lì, come può l'utente finale modificare l'array superglobale $_SERVER sfruttandolo per una sql injection?
    Io mi sono creato un piccolo script che registra i referer di tutte le entrate nel mio sito e più di una volta mi è capitato di incontrare stringhe "strane".
    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

Pagina 3 di 4 PrimoPrimo 1234 UltimoUltimo

Regole di scrittura

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