Visualizzazione dei risultati da 1 a 5 su 5

Discussione: registrazione

  1. #1

    registrazione

    ho il seguente file php che utilizzo per la registrazione di un utente vorrei che oltre a creare un utente crei anche una pagina php rinominata nomeutente.php protetta da nome utente e pasword dell' utente
    <?php

    function controlla_presenza($nick){

    $file = file("utenti.php");

    foreach($file as $rigo) {
    $ex = explode("|",$rigo);

    if(@$ex[1] == $nick) {
    return "presente";
    }
    }
    }

    function nick_pass_ok($nick,$pass) {

    $file = file("utenti.php");

    foreach($file as $rigo) {

    $ex = explode("|",$rigo);
    if(@$ex[1] == $nick AND $ex[2] == $pass)
    {
    return "ok";
    }

    }

    }

    $nick = $_POST['nome'];
    $nick = str_replace("|","",$nick);
    $nick = str_replace("\\","",$nick);
    $vpass = $_POST['pass'];
    $vpass = str_replace("|","",$vpass);
    $vpass = str_replace("\\","",$vpass);
    $pass = md5($vpass);

    if(@$_POST['registrati'] OR @$_POST['login']){
    if(trim($nick) == "" || trim($pass) == "") {
    header("Location:form.html");
    }
    }

    //Parte della registrazione
    if(@$_POST['registrati']) {
    $check = controlla_presenza($nick);

    if($check == "presente") {
    echo "Utente già presente!"; exit();
    }
    $fp = fopen("utenti.php","a+");
    fwrite($fp,"<?php|".$nick."|".$pass."|\n ?>");
    fclose($fp);
    echo "$nick registrato! Password: $vpass";
    echo "
    Torna alla pagina di login";
    }
    //Parte del login!
    else if(@$_POST['login']) {
    $contr = nick_pass_ok($nick,$pass);

    if($contr == "ok") {
    session_start(); //inizzializzo la variabile
    $_SESSION['nick'] = $nick; //le assegno il valore del nome del utente
    echo "$nick sei loggato!";
    echo "Visualizza l'area riservata ";
    }

    else
    {
    echo "Nickname o password errati!";
    }
    }
    ?>

  2. #2
    ho risolto con
    $fp=fopen("$nick.php","w+");
    fwrite($fp,"contenuto del file");
    vorrei chiedervi un altra cosa.....
    come posso mantenere il lgin durante la navigazione nel sito?

  3. #3

  4. #4
    dovrei inserire questo in ogni pagina del sito per mantenere il login dell' utente?

    <?
    session_start();
    $_SESSION['nick']=$nick;
    ?>

  5. #5
    Alcuni spunti di riflessione:

    1) perchè usi tutti quei @ davanti ai nomi di variabili? Non ha senso! Capisco davanti a funzioni che potrebbero generare errori, ma ne fai un uso inutilmente prolisso.

    2) e se qualcuno si legge senza tanti complimenti il file "utenti.php" tu che fai?

    3) pechè il file database è php invece che puro testo?

    4) perchè nel db metti "<?php|".$nick."|".$pass."|\n ?>" per ogni utente invece di un più semplice $nick."|".$pass."\n" ?

    Se posso dire la mia, dovresti approfondire le basi prima di cimentarti in un progetto così impegnativo.

    ...il login durante la navigazione si mantiene solitamente con le SESSION...
    Tecnolgie per l'arte.
    Arti per la tecnologia.
    softhare

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 © 2024 vBulletin Solutions, Inc. All rights reserved.