Visualizzazione risultati 1 fino 5 di 5

Discussione: Login non funzionante in locale.

  1. #1
    Guest

    Predefinito Login non funzionante in locale.

    ciao a tutti.
    è un pò che mi sono fermato e sto ricominciando a programmare.
    vorrei ampliare un sito precendentemente creato con un pò di cosette in più.
    ho scaricato il sito dal server (avevo formattato e mi ero dimenticato di salvare la cartella locale www ) e ci sto lavorando sopra nuovamente.

    mi sono un pò arrugginito ma speravo di non essermi rincoglionito...

    invece è così...

    sto cercando di verificare come mai lo script di login che avevo creato, che in rete funziona benissimo, ora, in locale non va.

    ho lavorato così:

    check_login.php
    Codice PHP:
    <?php
    session_start
    ();

    if(!isset(
    $_COOKIE['autolog'])){
    if (!isset(
    $_SESSION['username']) || !isset($_SESSION['password'])) {
    $loggato = 0; //NON loggato
    return;
    } else {
    $loggato = 1; //LOGGATO!
    }
    }
    else{
    //sezione "remember me" -> autologin
    $_SESSION['username'] = $_COOKIE['user'];
    $_SESSION['password'] = $_COOKIE['pw'];
    $loggato = 1;
    //rinfresca cookies
    $usern = $_SESSION['username'];
    $passw = $_SESSION['password'];
    setcookie('autolog','loggato',time()+864000);
    setcookie('user',$usern,time()+864000);
    setcookie('pw',$passw,time()+864000);
    }
    ?>
    login.php
    Codice PHP:
    <?php
    include_once('script/check_login.php');
    include(
    'header.php');
    include(
    'starter.php');
    include(
    'script/conn.php');

    if(!
    $_POST['username'] | !$_POST['password']){
    echo
    '<h1 align=center >:: Errore ::</h1>Devi inserire tutti i campi<br>';
    echo
    "<a href=javascript:history.back()>Indietro</a>";
    exit;
    }

    $usern = $_POST['username'];

    $query = "SELECT * FROM utenti WHERE username='$usern'";
    $check = mysql_query($query);
    if(!
    $check){
    die(
    mysql_error());
    }
    $row = mysql_fetch_array($check);
    if(
    $check && mysql_num_rows($check)<=0){
    die(
    "<h1 align=center>:: Errore ::</h1>Non risulti registrato. <br>Torna <a href=javascript:history.back()>Indietro</a> <br>oppure <a href='reg.php'> Registrati</a>.");
    }

    $passw = md5($_POST['password']);
    if(
    $passw != $row['password']){
    die(
    '<h1 align=center>:: Errore ::</h1>Password inserita <b>NON</b> corretta!. Torna <a href=javascript:history.back()>Indietro</a> ');
    }
    else{
    ////header("Refresh: 3; URL=index.php");
    $_SESSION['username'] = $usern;
    $_SESSION['password'] = $passw;
    $_SESSION['id_usr'] = $row['id_utente'];
    if(
    $_POST['auto_log']){
    setcookie('autolog','loggato',time()+864000);
    setcookie('user',$usern,time()+864000);
    setcookie('pw',$passw,time()+864000);
    }

    echo
    "<h1>:: Bentornato $usern ::</h1>Login effettuato con successo! Attendi il reindirizzamento in 3 secondi...<br>Oppure <a href=index.php> clicca qui per tornare alla home page</a>.";

    }

    include(
    "footer.php");
    ?>
    e poi ogni pagina ha come righe iniziali:
    Codice PHP:
    <?
    include_once("script/check_login.php");
    include(
    "header.php");
    include(
    "starter.php");
    include(
    "script/conn.php");
    ...
    così che ogni pagina, al suo interno ha un

    Codice PHP:
    if($loggato == 0){
    die(
    "<h1>|| ERRORE ||</h1> ...");
    }

    mi sapreste spiegare perchè NON risulto MAI loggato a seguito del login?
    $loggato rimane sempre 0, perchè, infatti, non vengono attivati i condizionali per loggato =1
    :(

    mi sapete aiutare?

    grazie.

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

    Predefinito

    Ti esce qualche errore? Il database ce l'hai in locale? I dati per connetterti al database sono giusti?
    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

  3. #3
    Guest

    Predefinito

    il database in locale esiste e credo si possa considerare funzionante visto che testando in locale l'inserimento di dati/registrazione utente funziona e visualizza tutto.

    non ricevo alcun messaggio di errore, semplicemente, una volta loggato visto che ho impostato un messaggio: "complimenti funcool, ti sei loggato con successo clicca per tornare alla home page" se clicco per tornare all'index, non risulta loggato ed il layout della pagina risulta uguale a quello che viene visualizzato quando l'utente non è ancora loggato

    grazie.

  4. #4
    NextLinux non è connesso Neofita
    Data registrazione
    20-01-2007
    Messaggi
    5

    Predefinito

    Una volta mi è capitato che il database in locale funzionava correttamente da riga di comando, ma php non era ben configurato per comunicare con il socket mysql, infatti phpmyadmin non funziava.
    potrebbe essere la causa (sottolineo potrebbe).
    prova ad usare phpmyadmin

  5. #5
    Guest

    Predefinito

    in realtà non vorrei cantare vittoria, anche perchè non sarebbe una vera e propria vittoria: ma sul mio portatile lo script funziona bene.
    sono quindi riuscito ad implementare tutto ciò che volevo.

    quindi potresti avere ragione tu, ma sono indeciso: ho installato lo stesso programma per testare il sito in locale, uso lo stesso browser e non ho modificato alcuna impostazione predefinita ne di php ne di sql, anche perchè non ne sarei capace :)

Regole di scrittura

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