Visualizzazione dei risultati da 1 a 3 su 3

Discussione: non mi estrae i dati

  1. #1

    non mi estrae i dati

    sto creando un contatore un po particolare se avete consigli per semplificare il lavoro sono contento vorrei memorizzare l'ip del visitatore in un db per fare varie operazioni per statistiche etc.... però ho problemi con le if in particolare la prima penso di aver sbgliato con $myvlue ho provato tutte le fetch ma niente potete aiutarmi?


    <?php
    session_start()
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Documento senza titolo</title>
    </head>

    <body>
    <?php
    //recupero l'ip dell'utente
    $ipadress = $_SERVER['REMOTE_ADDR'];
    //variabile end
    $end = $datas + 86400;
    // data della sessione
    $datas = $_SESSION['datas'];
    // mi connetto al db e controllo se l'utente oggi ha gia visitato il sito
    $nomeserver = "localhost";
    $username = "";
    $password = "";
    $dbname = "my_rbrtone81";
    $tablename = "count";
    $myconn = mysql_connect($nomeserver);
    $mydb = mysql_select_db($dbname,$myconn);
    $my_sql1 = "SELECT ipadress FROM $tablename WHERE ipadress LIKE '%$ipadress%'";
    $myquery = mysql_query($my_sql1,$myconn);
    $myvalues = mysql_fetch_array($myquery);
    //interrogo il db se l'ip dell'utente è gia presente se non è presente lo memorizzo e lo conto
    if ($myvalues == $ipadress){
    $_SESSION['datas'] = date('H:m');
    echo "oggi non sei stato qui e io ti conto e ti memorizzo";
    $fo = fopen("count.txt","r+");
    $file = file('count.txt');
    $count = $file[0]+1;
    fwrite($fo,$count);
    echo "sei il visitatore N° $count";
    fclose($fo);
    $my_sql2 = "INSERT INTO $tablename (ipadress) VALUES ('$ipadress')";
    $myquery = mysql_query($my_sql2,$myconn);
    }
    //se invece è gia presente gli chiedo se è passato un giorno da quando si è connesso al sito
    else if ($datas > $end){
    unset($_SESSION['datas']);
    $_SESSION['datas'] = date('H:m');
    echo "è passato un giorno da quando sei stato qui e io ti riconto";
    $fo = fopen("count.txt","r+");
    $file = file('count.txt');
    $count = $file[0]+1;
    fwrite($fo,$count);
    echo "sei il visitatore N° $count";
    fclose($fo);
    }
    mysql_close($myconn);
    ?>
    <form action="count.php" method="post">
    <input type="checkbox" value="1" name="sesdel" />elimina sessione
    <input type="submit" value="elimina sessione" />
    </form>
    </body>
    </html>

  2. #2
    codice:
    $my_sql1 = "SELECT ipadress FROM $tablename WHERE ipadress LIKE '%$ipadress%'";
    $myquery = mysql_query($my_sql1,$myconn);
    $myvalues = mysql_fetch_array($myquery);
    //interrogo il db se l'ip dell'utente è gia presente se non è presente lo memorizzo e lo conto
    if ($myvalues == $ipadress){
    $myvalues e' un array con un indice numerico e un indice associativo perche' estratto con mysql_fetch_array() e quindi dovresti mettere:

    codice:
    if ($myvalues['ipadress'] == $ipadress){
    prova a stampare l'array per tua conferma:

    codice:
    print_r($myvalues);

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3

    grazie

    problema risolto posto lo script


    <?php
    session_start()
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>contatore</title>
    </head>

    <body>
    <?php
    //ora attuale
    $actualhours = date('H');
    // ora scadenza sessione
    $endhours = $actualhours + 23;
    //recupero l'ip dell'utente
    $ipadress = $_SERVER['REMOTE_ADDR'];
    //creo la mia connessione al db
    $nomeserver = "localhost";
    $username = "rbrtone81";
    $password = "rbr81altervista";
    $dbname = "my_rbrtone81";
    $tablename = "count";
    $myconn = mysql_connect($nomeserver);
    $mydb = mysql_select_db($dbname,$myconn);
    //inserisco nel db l'ip del visitatore
    $my_sql1 = "INSERT INTO $tablename (ipadress) VALUES ('$ipadress')";
    //controllo se nel db è gia presente l'ip dell'utente
    $my_sql2 = "SELECT * FROM $tablename WHERE ipadress LIKE ('$ipadress')";
    $myquery2 = mysql_query($my_sql2,$myconn);
    $myquery1 = mysql_query($my_sql1,$myconn);
    $myvalues = mysql_fetch_array($myquery2);
    $ipadressdb = $myvalues['ipadress'];
    // se l'utente non ha mai visitato il sito ...
    if ($ipadressdb == NULL){
    $_SESSION['ora'] = $actualhours;
    $fp = fopen('count.txt', 'r+');
    $file = file('count.txt');
    $conta = $file[0]+1;
    fwrite($fp, $conta);
    echo "sei il visitatore n°: ".$conta;
    fclose($fp);
    }
    //se invece lo ha visitato
    else {
    $ora = $_SESSION['ora'];
    if ($ora > $endhours){
    unset($_SESSION['ora']);
    $_SESSION['ora'] = $actualhours;
    $fp = fopen('count.txt', 'r+');
    $file = file('count.txt');
    $conta = $file[0]+1;
    fwrite($fp, $conta);
    echo "sei il visitatore n°: ".$conta;
    fclose($fp);
    } else {
    $fp = fopen('count.txt', 'r');
    $legge=fread($fp,filesize("count.txt"));
    echo "ci si rivede
    ";
    echo "sei il visitatore n°: ".$legge;
    fclose($fp);
    }
    }
    mysql_close($myconn);
    ?>
    </body>
    </html>

    è un pò cambiato dal precedente ma funziona

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.