Visualizzazione risultati 1 fino 3 di 3

Discussione: Problema con login script

  1. #1
    Guest

    Predefinito Problema con login script

    Finalmento ho deciso di buttarmi a costruire un login con le mie poche conoscenze di php
    questo è il semplicissimo login che ho creato
    Codice PHP:
    <?php
    if($_GET['action'] == 'regist') {
    include (
    "config.inc.php");
    $user=$_REQUEST["user"];
    $pass=$_REQUEST["pass"];
    if (
    $user == "" OR $pass == "") {
    echo
    header("Location: login.php?errorcamp=I campi devono essere riempiti!");exit();
    } else {
    $db = mysql_connect($db_host, $db_user, $db_password);
    if (
    $db == FALSE) {
    die (
    "Errore connesione al database");
    }
    mysql_select_db($db_name, $db)
    or die (
    "Errore selezione database");
    $crypt_pass = md5($pass);
    $query = "SELECT * from user WHERE user = '$user' AND pass = '$crypt_pass'";
    $risultato = mysql_query($query);
    $num_righe = mysql_num_rows($risultato);
    if(
    $num_righe) {
    $row = mysql_fetch_array($risultato);
    $_SESSION['log'] = "1";
    $_SESSION['user'] = $row[user];
    $_SESSION['email'] = $row[email];
    echo
    "Login riuscito!";
    } else {
    echo
    header("Location: login.php?errorfall=Login fallito! Riprova!");exit();
    }
    }
    } else {
    $errorcamp=$_GET['errorcamp'];
    $errorfall=$_GET['errorfall'];
    ?>
    <form action="login.php?action=regist" method="post">
    <table width="456" border="0">
    <tr>
    <td width="41">User:</td>
    <td width="120"><input name="user" type="text" id="user" size="20"></td>
    <td width="281">&nbsp;</td>
    </tr>
    <tr>
    <td>Pass:</td>
    <td><input name="pass" type="password" id="pass" size="20"></td>
    <td>&nbsp;</td>
    </tr>
    <tr>
    <td>&nbsp;</td>
    <td><input type="submit" value="Login"></td>
    <td><font color="red"><?=$errorcamp;?><?=$errorfall;?></font></td>
    </tr>
    </table>
    </form>
    <? } ?>
    il problema è che faccio il login ma mi viene una schermata bianca...dove sbaglio?
    grazie in anticipo

  2. #2
    Guest

    Predefinito

    Manca session_start() all'inizio dello script, c'è una sql injection nel codice e in più
    sostituisci
    Codice PHP:
    $_SESSION['user'] = $row[user];
    $_SESSION['email'] = $row[email];
    con
    Codice PHP:
    $_SESSION['user'] = $row['user'];
    $_SESSION['email'] = $row['email'];

  3. #3
    Guest

    Predefinito

    scusate mi ero dimenticato di scrivere che avevo risolto
    Ultima modifica di webeasy : 01-01-2009 alle ore 20.21.37

Regole di scrittura

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