• Moderatore

    li conosci i cookie?? 🙂

    come li hai utilizzati nel login?

    se non sai usare i cookie ti converrebbe leggere un po' di documentazione da php.net


  • User Attivo

    nn molto...ma mi e parso di capire che nn sonomolto sicuri se sitratta di preservare passowrd ed email...quindi cosa ho fatto...nel frattempo che te mi rispondevi mi sono letto una bella guida sulle sessioni...con tanto di esempio di login usando le sessioni..e l ho abbatsanza capito....
    quqesto login contiene 3 pagine ,la prima e form.html

    <form name="login" action="controlla.php" method="POST">
    <input type="text" name="username" value="Username..."><br>
    <input type="text" name="password" value="Password..."><br>
    <input type="submit" value="Login...">
    </form>

    la seconda e controlla.php

    <?
    $user = "luca";
    $pass = "costantino";

    if ($_POST['username'] == $user && $_POST['password'] == $pass) {
    session_start();
    $_SESSION['login'] = "ok";
    } else {
    header("Location: form.html");
    }
    ?>

    la terza e inclusione.php

    <?
    session_start();
    if ($_SESSION['login'] != "ok") {
    header("Location: form.html");
    }
    ?>

    Praticamente nel caso di login esatto la sessione e ok....nel caso di pass e utente sbagliato ritorna al form.htm ....e finq ui ' mi e chiaro... come hai notato però nel secondo file in username e pass i vaolori sono già predefiniti..e non recuperati da un database....quindi. in quest ultima pagina dovrei inserire la connessione al database ?


  • Moderatore

    🙂 che bello.... mi piacciono i tipi volenterosi 🙂

    si giusto in controlla.php metti la connessione al database 🙂 inoltre utilizza chiavi di sessioni tipo $_SESSION[username] in modo da avere in sessione il nome utente 😛 questo ci servirà poi....

    inoltre ricordati di utilizzare le tag [ PHP] [ /PHP ] (senza spazi) e al loro interno inserisci il codice... aiuteranno alla visualizzazione sul forum...
    esempio
    [ PHP] <? echo"ciao mondo"; ?>[ /PHP ] (con spazi)
    [PHP] <? echo"ciao mondo"; ?> [/PHP] (senza spazi)
    attendo news


  • User Attivo

    @massimux said:

    🙂 che bello.... mi piacciono i tipi volenterosi 🙂

    si giusto in controlla.php metti la connessione al database 🙂 inoltre utilizza chiavi di sessioni tipo $_SESSION[username] in modo da avere in sessione il nome utente 😛 questo ci servirà poi....

    inoltre ricordati di utilizzare le tag [ PHP] [ /PHP ] (senza spazi) e al loro interno inserisci il codice... aiuteranno alla visualizzazione sul forum...
    esempio
    [ PHP] <? echo"ciao mondo"; ?>[ /PHP ] (con spazi)
    [PHP] <? echo"ciao mondo"; ?> [/PHP] (senza spazi)
    attendo news

    :)be..la volontà di certo non mi manca...:)

    ok..massimo ho deciso di fare una cosa...ho modificato gli script che tia vevo posto in precedenza...facendo cosi'....3 pagine...la prima pagina index.html relativa alla registrazione dell utente

    [PHP]<html>
    <head>
    <title>Login</title>
    </head>

    <body>
    <div align="center">
    <form action="registrazione.php" method="post" name="registrazione">
    <p>Nome</p>
    <p><input type="text" name="nome" value=""/> </p>
    <p>Cognome</p>
    <p><input type="text" name="cognome" value="" /></p>
    <p>Sesso</p>
    <p><input name="sesso" type="radio" value="maschio" checked="checked" />
    Maschile</p>
    <p><input name="sesso" type="radio" value="femmina" checked="checked" />
    Femminile</p>
    <p>Inserisci la tua password</p>
    <p><input type="password" name="password" value="" /></p>
    <p><input type="submit" value="Registrati" /></p>
    <p><input type="reset" value="Cancella tutto" /></p>
    </form>
    </div>
    </body>
    </html>[/PHP]

    poi ho creato la pagina registrazione.php che recupera i dati e li scrive nel database

    [PHP]
    $sDBServer = "localhost";//Server dove è localizzato il database
    $sDBName = "acaso";// il nome del database
    $sDBUsername = "inventata";//Nome utente di accesso per il database
    $sDBPassword = "1234";//Password di accesso per il database

    $link = mysql_connect($sDBServer,$sDBUsername,$sDBPassword);
    @mysql_select_db($sDBName);
    $nome= ($_POST["nome"]);
    $cognome= ($_POST["cognome"]);
    $password= ($_POST["password"]);
    $sesso=($_POST["sesso"]);
    $sql = "Insert into tabella_utenti(nome,cognome,sesso,password,) values ('$nome','$cognome','$sesso','$password')";

    $eseguisql=mysql_query($sql) or die(mysql_error());
    
    mysql_close($link);
    

    echo "Dati inseriti";
    ?> [/PHP]

    poi ho creato la pagina relativa al login...cioe login.html

    [PHP]
    <form action="login2.php" method="post">
    <p align="center">Inserisci il tuo
    nome
    <input name="nick" style="font-weight: 700">
    </p>
    <p align="center">Inserisci la tua
    password
    <input type="password" name="password" style="font-weight: 700">
    </p>
    <p align="center">
    <input type="submit" name="submit" value="Entra"></p>
    </form> [/PHP]

    ora creo la pagina login2.php che controlla i dati inseriti nella pagina login.html
    con sessione a valore 1 se i dati sono corretti e quindi dare o ppurtunità di loggarsi e con valore a 0 negare l oppurtunità di loggarsi e ritornare alla pagina login.html
    [PHP]
    <?
    session_start();

    $selezione=”SELECT nome,password FROM tabella_utenti WHERE nome=’”.$_POST[’nome’].”‘ ” .
    “AND password=(PASSWORD(’”. $_POST[’password’].”‘))”;
    $eseguisel=mysql_query($selezione);
    if (mysql_num_rows($eseguisel) ==1) {echo “Login effetuato con successo..Attendi”;
    $_SESSION[’logged’]=1;?>

    <META HTTP-EQUIV=Refresh CONTENT=”1; URL=index.php”>

    <?

    } else {echo “Dati non presenti nei nostri database..Attendi”;
    $_SESSION[’logged’]=0;
    ?>

    <META HTTP-EQUIV=Refresh CONTENT=”1; URL=login.php”>

    <?
    }
    ?> [/PHP]

    ok?Ho mancato qualcosa?:gtsad:


  • User Attivo

    [QUOTE=carlitos1982;502480]:)be..la volontà di certo non mi manca...:)

    ok..massimo ho deciso di fare una cosa...ho modificato gli script che tia vevo posto in precedenza...facendo cosi'.......la prima pagina iscrizionesito.htm relativa alla registrazione dell utente

    [PHP]<html>
    <head>
    <title>Login</title>
    </head>

    <body>
    <div align="center">
    <form action="iscr.php" method="post" name="registrazione">
    <p>Nome</p>
    <p><input type="text" name="nome" value=""/> </p>
    <p>Cognome</p>
    <p><input type="text" name="cognome" value="" /></p>
    <p>Sesso</p>
    <p><input name="sesso" type="radio" value="maschio" checked="checked" />
    Maschile</p>
    <p><input name="sesso" type="radio" value="femmina" checked="checked" />
    Femminile</p>
    <p>Inserisci la tua password</p>
    <p><input type="password" name="password" value="" /></p>
    <p><input type="submit" value="Registrati" /></p>
    <p><input type="reset" value="Cancella tutto" /></p>
    </form>
    </div>
    </body>
    </html>[/PHP]

    poi ho creato la pagina iscr.php che recupera i dati e li scrive nel database

    [PHP]
    <?php
    $db_database = 'miodatabase';
    $db_username = 'utentefalso';
    $db_password = 'nonvera';
    $db_host = 'localhost';

    $cnome = $_POST['nome'];
    $cemail = $_POST['email'];
    $csesso = $_POST['sesso'];
    $cpassword = $_POST['password'];

    $link = mysql_connect("$db_host", "$db_database", "$db_username", "$db_password") or die("Errore connessione: ". mysql_error());
    mysql_select_db('my_ginobarone') or die("Errore apertura database: " . mysql_error());

    $strsql="INSERT INTO iscritti (nome,email,sesso,password) VALUES ('$cnome','$cemail','$csesso','$cpassword')";

    @mysql_query("$strsql",$link) or die("Errore query database: " . mysql_error());

    echo "Grazie per esserti iscritto";

    ?> [/PHP]

    fino qui'...tutto bene.....:bigsmile: i dati vengono presi dal modulo iscrizionesito.htm ed inseriri nel dtabase....a posto...ora procedo con la realizzazione della pagina del login...si spera...:bigsmile:


  • User Attivo

    @carlitos1982 said:

    [QUOTE=carlitos1982;502480]:)be..la volontà di certo non mi manca...:)

    ok..massimo ho deciso di fare una cosa...ho modificato gli script che tia vevo posto in precedenza...facendo cosi'.......la prima pagina iscrizionesito.htm relativa alla registrazione dell utente

    [PHP]<html>
    <head>
    <title>Login</title>
    </head>

    <body>
    <div align="center">
    <form action="iscr.php" method="post" name="registrazione">
    <p>Nome</p>
    <p><input type="text" name="nome" value=""/> </p>
    <p>Cognome</p>
    <p><input type="text" name="cognome" value="" /></p>
    <p>Sesso</p>
    <p><input name="sesso" type="radio" value="maschio" checked="checked" />
    Maschile</p>
    <p><input name="sesso" type="radio" value="femmina" checked="checked" />
    Femminile</p>
    <p>Inserisci la tua password</p>
    <p><input type="password" name="password" value="" /></p>
    <p><input type="submit" value="Registrati" /></p>
    <p><input type="reset" value="Cancella tutto" /></p>
    </form>
    </div>
    </body>
    </html>[/PHP]

    poi ho creato la pagina iscr.php che recupera i dati e li scrive nel database

    [PHP]
    <?php
    $db_database = 'miodatabase';
    $db_username = 'utentefalso';
    $db_password = 'nonvera';
    $db_host = 'localhost';

    $cnome = $_POST['nome'];
    $cemail = $_POST['email'];
    $csesso = $_POST['sesso'];
    $cpassword = $_POST['password'];

    $link = mysql_connect("$db_host", "$db_database", "$db_username", "$db_password") or die("Errore connessione: ". mysql_error());
    mysql_select_db('miodatabase') or die("Errore apertura database: " . mysql_error());

    $strsql="INSERT INTO iscritti (nome,email,sesso,password) VALUES ('$cnome','$cemail','$csesso','$cpassword')";

    @mysql_query("$strsql",$link) or die("Errore query database: " . mysql_error());

    echo "Grazie per esserti iscritto";

    ?> [/PHP]

    fino qui'...tutto bene.....:bigsmile: i dati vengono presi dal modulo iscrizionesito.htm ed inseriri nel dtabase....a posto...ora procedo con la realizzazione della pagina del login...si spera...:bigsmile:

    allora...ho creato la pagina login.htm cosi'

    [PHP]
    <form action="login2.php" method="post">
    <p align="center">Inserisci il tuo
    nome
    <input name="nick" style="font-weight: 700">
    </p>
    <p align="center">Inserisci la tua
    password
    <input type="password" name="password" style="font-weight: 700">
    </p>
    <p align="center">
    <input type="submit" name="submit" value="Entra"></p>
    </form> [/PHP]

    e poi la pagina che elabora..ovvero login2.php cosi'
    [PHP]
    <?
    session_start();
    $link = mysql_connect("$db_host", "$db_database", "$db_username", "$db_password") or die("Errore connessione: ". mysql_error());
    mysql_select_db('miodatabase') or die("Errore apertura database: " . mysql_error());
    $selezione="SELECT nome,password FROM iscritti WHERE nome='".$_POST['nome']."' " .
    "AND password=(PASSWORD('". $_POST['password']."'))";
    $eseguisel=mysql_query($selezione);
    if (mysql_num_rows($eseguisel) ==1) {echo "Login effetuato con successo..Attendi";
    $_SESSION['logged']=1;?>
    <META HTTP-EQUIV=Refresh CONTENT="1; URL=index.php">
    <?
    } else {echo "Dati non presenti nei nostri database..Attendi";
    $_SESSION['logged']=0;
    ?>
    <META HTTP-EQUIV=Refresh CONTENT="1; URL=iscrizionesito.htm">
    <?
    }
    ?> [/PHP]

    purtroppo ricevo Dati non presenti nei nostri database..Attendi e vengo reindizzato alla pagina d iscrizione..dove ho sbagliato??:gtsad::gtsad:❌x


  • Moderatore

    è la select

    [php]
    $selezione="SELECT nome,password FROM iscritti WHERE nome='".$_POST['nome']."' " .
    "AND password=(PASSWORD('". $_POST['password']."'))";
    [/php]

    io proverei così:

    [php]
    $selezione="SELECT nome,password FROM iscritti WHERE nome='".$_POST['nome']."' AND password='". $_POST['password']."'";
    [/php]

    prova un po' 🙂


  • User Attivo

    @massimux said:

    è la select

    [php]
    $selezione="SELECT nome,password FROM iscritti WHERE nome='".$_POST['nome']."' " .
    "AND password=(PASSWORD('". $_POST['password']."'))";
    [/php]

    io proverei così:

    [php]
    $selezione="SELECT nome,password FROM iscritti WHERE nome='".$_POST['nome']."' AND password='". $_POST['password']."'";
    [/php]

    prova un po' 🙂

    Nulla.....ho provato ma nn è cambiato nulla rispetto a prima...:x
    non mi riesce nel selezionare la tabella e confrontare i dati:(


  • User Attivo

    @carlitos1982 said:

    Nulla.....ho provato ma nn è cambiato nulla rispetto a prima...:x
    non mi riesce nel selezionare la tabella e confrontare i dati:(

    Ok....:tongueout::tongueout:ho trovato l errore...
    [PHP]<form action="login2.php" method="post">
    <p align="center">Inserisci il tuo
    nome
    eccolo l errore :arrabbiato: <input name="nick" style="font-weight: 700">
    </p>
    <p align="center">Inserisci la tua
    password
    <input type="password" name="password" style="font-weight: 700">
    </p>
    <p align="center">
    <input type="submit" name="submit" value="Entra"></p>
    </form>
    [/PHP] praticamente al posto di "nick" dovevo inserire "nome" che era il valore che avev impostato da recuperare nella pagina login2.php❌x
    mammia che errore grave...:surprised::surprised::crying:
    cmq grazie al tuo aiuto massimo anche parte e andata...e ora cosa tocca fare?:):tongueout:(Massimo piccola mia osservazione..permettimi...:smile5:.....ho notato che nel file iscr.php io ho duvuto assegnare nelle prime 4 variabili del file i dati per poter accedere al mio database..ovvero pass,mio nome utente,nome del database,e l host, invece nel file login2.php queste prime 4 variabili nn le ho dichiarate...ma nonostante ciò la connessione al database avviene cmq...nn capisco perche...O_o eppure nel file login2.php nn ho inserito i dati di accesso per accedere al database....forse sto dicendo una grande cavolata ....correggimi:smile5:


  • User Attivo

    massimo non mi abbandonare:gtsad::gtsad:


  • Moderatore

    allora ciao 🙂

    non conviene scrivere post inutili se non sono online 🙂

    comunque, potrebbe essere un problema dato dal fatto che hai le register_global settate ad on... non so dove tu stia provando tali script...
    ora funziona giusto? dove sei arrivato???

    PS. il mio vero nome è Antonio 🙂


  • User Attivo

    @massimux said:

    allora ciao 🙂

    non conviene scrivere post inutili se non sono online 🙂

    comunque, potrebbe essere un problema dato dal fatto che hai le register_global settate ad on... non so dove tu stia provando tali script...
    ora funziona giusto? dove sei arrivato???

    PS. il mio vero nome è Antonio 🙂

    Ok antonio....:)
    Piacere io domenico:)
    Allora gli scritp li sto provando sullo spazio web gratuito di altervista...e funziona tutto per ora....praticamente....ho creato la pagina per l iscrizione al sito e la pagina per il login....e tutto va....ora ho creato il form per l invio dei messaggi 🙂 cioè questa
    [PHP]
    inviomessaggio.php
    <form method="post" action="invio.php">
    <input type="text" name="destinatario">
    <input type="text" name="oggetto">
    <textarea name="messaggio"></textarea>
    <input type="submit" value="Invia messaggio">
    </form> [/PHP]


  • Moderatore

    allora ora che hai le basi sulle sessioni fai un controllo per verificare se hai effettuato il login... ti ricordo che per richiamare variabili di sessione all'inizio della pagina dovrai utilizzare la funzione di php session_start();
    se hai effettuato il loghin fai vedere la pagina altrimenti con il comando [php]header("Location: http://www.example.com/");[/php] di php fai il redirect alla tua home page 🙂


  • User Attivo

    ok..la pagina inviomessaggio.php l ho strutturata nel seguente modo

    [PHP]
    <?
    session_start();
    $link = mysql_connect("$db_host", "$db_database", "$db_username", "$db_password") or die("Errore connessione: ". mysql_error());
    mysql_select_db('my_ginobarone') or die("Errore apertura database: " . mysql_error());
    $selezione="SELECT nome,password FROM iscritti WHERE nome='".$_POST['nome']."' AND password='". $_POST['password']."'";
    $eseguisel=mysql_query($selezione);
    if (mysql_num_rows($eseguisel) ==1) {echo "Login effetuato con successo..Attendi";
    $_SESSION['logged']=1;?>
    <META HTTP-EQUIV=Refresh CONTENT="1; URL=inviamessaggio.php">
    <?
    } else {echo "Non hai effettuato il login..Attendi";
    $_SESSION['logged']=0;
    ?>
    <META HTTP-EQUIV=Refresh CONTENT="1; URL=iscrizionesito.htm">
    <?
    }
    ?> <form method="post" action="invio.php">
    <input type="text" name="destinatario">
    <input type="text" name="oggetto">
    <textarea name="messaggio"></textarea>
    <input type="submit" value="Invia messaggio">
    </form>

    [/PHP]
    nel caso la sessione darebbe esito negativo ho messo che ritorna alla pagina di iscrizione del sito
    Può andare??

    Se può andare bene si dovrebbe creare la pagina invio.php...giusto?


  • User Attivo

    Nono..non va bene...mi sta che sto combinando un casino...⭕o:?:?:?

    Allora antonio...ti faccio un resoconto di quello che ho creato finora.....
    una tabella su mysql contenente 7 campi
    id con chiave primaria e auto_increment,
    nome,
    data con timestamp che mi segna l ora e la data d iscrizione dell utente,
    sesso,utenteemail,descrizione,password e questo e ciò che ho creato sul database finora....

    Per quanto riguarda le pagine web ne ho create 5
    cioè.. pannellodicontrollo.htm che praticamente e quasi vuota nn contiene quasi nulla
    e quindi non posto...poi ho creato
    iscrizionesito.htm il form per l iscrizione cosi ' strutturato
    [PHP]
    <form action="iscr.php" Method="Post">
    <table border="0" cellpadding="0" cellspacing="1" align="center">
    <body>
    <div align="center">
    <p>Scegli il nick da usare nel sito</p>
    <p><input type="text" name="nome" value=""</p>
    <p>Inserisci qui la tua email</p>
    <p><input type="text" name="utenteemail" value="" size="20"</p>
    Inserisci qui sotto una tua descrizione<p><textarea> rows="13" name="descrizione" cols="40"></textarea></p>

    <p>Sesso</p>
    <p><input name="sesso" type="radio" value="maschio" checked="checked" />
    Maschile</p>
    <p><input name="sesso" type="radio" value="femmina" checked="checked" />
    Femminile</p>
    <p>Inserisci la tua password</p>
    <p><input type="password" name="password" value="" </p>
    <p><input type="submit" value="Registrati" </p>
    <p><input type="reset" value="Cancella tutto" </p>
    </form>
    </div>
    </body>
    </html>[/PHP]

    questa pagina punta a iscr.php che ho strutturato cosi'
    [PHP]
    <?php

    $db_database = 'miodatabase';
    $db_username = 'domenico';
    $db_password = 'capo'; <- qui ovviamente nn ho inserito i veri dati
    $db_host = 'localhost';

    $cnome = $_POST['nome'];
    $cutenteemail = $_POST['utenteemail'];
    $csesso = $_POST['sesso'];
    $cpassword = $_POST['password'];
    $cdescrizione = $_POST['descrizione'];

    $link = mysql_connect("$db_host", "$db_database", "$db_username", "$db_password") or die("Errore connessione: ". mysql_error());
    mysql_select_db('miodatabase') or die("Errore apertura database: " . mysql_error());

    $strsql="INSERT INTO iscritti (nome,utenteemail,sesso,password,descrizione) VALUES ('$cnome','$cutenteemail','$csesso','$cpassword','$cdescrizione')";

    @mysql_query("$strsql",$link) or die("Errore query database: " . mysql_error());
    echo "Grazie per esserti iscritto";

    ?>[/PHP]
    fin qui tutto a posto...i dati presi dal form vengono normalmente elaborati da iscr.php e inseriti nel database perfettamente...

    come 3 pagina ho creato la pagina login.htm per permettere agli utenti iscritti di effettuare il login che ho strutturato cosi'
    [PHP]
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Documento senza titolo</title>
    </head>

    <body>
    <form action="login2.php" method="post">
    <p align="center">Inserisci il tuo
    nome
    <input name="nome" style="font-weight: 700">
    </p>
    <p align="center">Inserisci la tua
    password
    <input type="password" name="password" style="font-weight: 700">
    </p>
    <p align="center">
    <input type="submit" name="submit" value="Entra"></p>
    </form>
    </body>
    </html>[/PHP]

    questa pagina punta a login2.php che sarebbe la pagina che contiene la sessione che ho strutturato cosi'

    [PHP]
    <?
    session_start();
    $link = mysql_connect("$db_host", "$db_database", "$db_username", "$db_password") or die("Errore connessione: ". mysql_error());
    mysql_select_db('miodatabase') or die("Errore apertura database: " . mysql_error());
    $selezione="SELECT nome,password FROM iscritti WHERE nome='".$_POST['nome']."' AND password='". $_POST['password']."'";
    $eseguisel=mysql_query($selezione);
    if (mysql_num_rows($eseguisel) ==1) {echo "Login effetuato con successo..Attendi";
    $_SESSION['logged']=1;?>
    <META HTTP-EQUIV=Refresh CONTENT="1; URL=pannellodicontrollo.htm">
    <?
    } else {echo "Dati non presenti nei nostri database..Attendi";
    $_SESSION['logged']=0;
    ?>
    <META HTTP-EQUIV=Refresh CONTENT="1; URL=iscrizionesito.htm">
    <?
    }
    ?> [/PHP]
    e praticamente mi son fermato qui'...nn riesco ad andare avanti...quest ultima pagina se inserisco i dati esatti nel login mi porta a pannellodicontrollo.htm altrimenti mi riporta a iscrizionesito.htm...allora Antonio...quello che mi chiedo ora e...l ipotetica pagina pannellodicontrollo.htm deve essere una pagina accessibile solo a chi effettua il login..quindi..la pagina a cui devo rispedire io l utente dopo aver effettuato il login deve essere una pagina non accessibile da tutti...ma solo da chi effettuando il login ottenga esito positivo....quindi ora devo creare una pagina con queste caretteristiche...cioè questa pagina pannello di controllo come devo strutturarla??Praticamente deve contenere un link
    dove cliccando escano i messaggi ricevuti...un link dove cliccando escando i messaggo inviati....e poi un link utentiscritti doce cliccandoci su sia possibile scegliere poi dalla lista di utrenti iscritti a chi mandare il messaggio privato....sto impazzendoo ti giuroo⭕o⭕?:?Sono sicuro che per te e una cavolata.....ma io nn mi arrendo...sono quasi le 2 di notte e sto cercando di capire.....:?:?non fumo neanche...quindi neanche quei 5 minuti di tregua a fumare mi congedo..... sbatto la capoccia :arrabbiato: quà vicino...:?:?


  • Moderatore

    sei tu che non vuoi seguire i miei consigli... 🙂 per questo sbatti la capoccia ma credimi fai bene 🙂

    allora ti dò un'aggiustata a login2.php
    [php]
    <?
    session_start(); //avvio l'utilizzo delle sessioni
    $link = mysql_connect("$db_host", "$db_database", "$db_username", "$db_password") or die("Errore connessione: ". mysql_error());
    mysql_select_db('miodatabase') or die("Errore apertura database: " . mysql_error());
    $selezione="SELECT nome,password,sesso FROM iscritti WHERE nome='".$_POST['nome']."' AND password='". $_POST['password']."'";
    $eseguisel=mysql_query($selezione);
    if (mysql_num_rows($eseguisel) ==1) {
    echo "Login effetuato con successo..Attendi";
    //ciclo while che mi richiama l'array dei dati selezionati dal database
    while($ROW = mysql_fetch_array($eseguisel))
    {
    //qui vanno settati un po' di SESSIONI
    $_SESSION['logged']=1;//setto che l'utente è loggato
    $_SESSION['nome']=$ROW[nome];//inserisco una nuova chiave di sessione con il nome utente
    $_SESSION['sesso']=$ROW[sesso];//inserisco una nuova chiave di sessione con il sesso dell'utente
    }
    //ora proseguo con l'header
    header("Location: pannellodicontrollo.htm");
    } else {
    echo "Dati non presenti nei nostri database..Attendi";
    //annullo tutte le chiavi di sessioni se esistono
    session_unset();
    session_destroy();
    header("Location: iscrizionesito.htm");
    }
    ?>
    [/php]

    dopo aver scritto un po' di codice ti rimando ad un po' di teoria
    http://it.php.net/session_destroy
    http://it.php.net/manual/en/function.session-unset.php
    http://it.php.net/manual/en/function.mysql-fetch-array.php

    siamo pronti per passare alla pagina pannellodicontrollo.htm che dovrà solo avere un link che porti a inviomessaggio.php
    ci sei? 🙂


  • User Attivo

    Ciao Antonio...allora si ricomincia anche quest oggi:giggle::giggle:
    ho letto la teoria che mi hai consigliato...le prime 2 mi sono chiare l ultima un po di meno....sarà che sono sveglio da poco...kissà
    Ok...ti posto subito la pagina pannellodicontrollo.php che ho rinominato in php appunto sennò nn funzionava in htm...eccola...
    [PHP]
    <html>

    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Pannello di controllo utente</title>
    </head>

    <body>
    <p>
    <a target="_blank" href="miosito://ttt.ecc.altervista.org/inviamessaggio.php">
    Invia messaggio cliccando qui'</a></p>

    <?
    //Apro la sessione e...
    session_start();

    //Recupero i dati...
    $ROW[nome] = $_SESSION['nome'];
    $ROW[password] = $_SESSION['password'];

    //facciamo una stampata a video!
    echo "Ciao " . $ROW[nome] . " benvenuto nel tuo pannello di controllo";
    ?>
    }

    } else {
    echo "Non sei loggato...";
    //annullo tutte le chiavi di sessioni se esistono
    session_unset();
    session_destroy();
    header("Location: login.htm");
    }
    ?>[/PHP]
    Se provo ad accedere direttamente a questa pagina mi rimanda alla pagina del login.htm.....da quest ultima poi inserendo i dati corretti per il login non va avanti...rimane a login.htm...non mi fa accedere a pannellodicontrollo.php:dull::dull:


  • Moderatore

    un po' di orrori ma stai iniziando a capire 🙂 te la modifico ed apprendi 🙂
    [php]
    <html>

    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Pannello di controllo utente</title>
    </head>

    <body>
    <?
    //Apro la sessione e...
    session_start();
    //verifico che dopo il login io abbia la chiave di sessione ad 1
    if($_SESSION['logged']==1){
    //se si...
    ?>
    <p>
    <a target="_blank" href="miosito://ttt.ecc.altervista.org/inviamessaggio.php">
    Invia messaggio cliccando qui'</a></p>
    <?
    //facciamo una stampata a video!
    echo "Ciao " . $_SESSION[nome] . " benvenuto nel tuo pannello di controllo";

    } else {
    //altrimenti...
    echo "Non sei loggato...";
    //annullo tutte le chiavi di sessioni se esistono
    session_unset();
    session_destroy();
    header("Location: login.htm");
    }
    ?>
    [/php]


  • User Attivo

    @massimux said:

    un po' di orrori ma stai iniziando a capire 🙂 te la modifico ed apprendi 🙂
    [php]
    <html>

    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Pannello di controllo utente</title>
    </head>

    <body>
    <?
    //Apro la sessione e...
    session_start();
    //verifico che dopo il login io abbia la chiave di sessione ad 1
    if($_SESSION['logged']==1){
    //se si...
    ?>
    <p>
    <a target="_blank" href="miosito://ttt.ecc.altervista.org/inviamessaggio.php">
    Invia messaggio cliccando qui'</a></p>
    <?
    //facciamo una stampata a video!
    echo "Ciao " . $_SESSION[nome] . " benvenuto nel tuo pannello di controllo";

    } else {
    //altrimenti...
    echo "Non sei loggato...";
    //annullo tutte le chiavi di sessioni se esistono
    session_unset();
    session_destroy();
    header("Location: login.htm");
    }
    ?>
    [/php]
    Grande...tutto alla perfezione:tongueout::tongueout:
    ora va tutto secondo progetto...:)Grazie antonio mi stai facendo capire delle cose davvero grandi..son contento:bigsmile::bigsmile:
    Vabè ritorniamo al :arrabbiato: ok....ora si deve creare la pagina inviomessaggio.php
    giusto..?:)E creare anche la tabella su mysql giusto???


  • Moderatore

    giusto 🙂

    la tabella te la dettai all'epoca ma a quanto ho capito sarebbe meglio utilizzare al posto degli id i nomi quindi :

    crea una tabella messaggi con nome_inviante, nome_ricevente, oggetto, messaggio, data
    nome_inviante deve essere un varchar(255) not null
    nome_ricevente deve essere un varchar(255) not null
    oggetto deve essere un varchar(255) not null
    messaggio deve essere text not null
    date deve essere un campo datetime

    e poi fai nella pagina inviomessaggio.php il solito controllo se sei loggato 🙂 ed il form di invio 🙂

    attendo te....

    PS. non sono cose grandi questa è logica 🙂 potremmo fare 8000 aggiusti a questo codice... ma preferisco farteli fare dopo e farti imparare prima la base 🙂

    dai dai 🙂