Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    86

    Piccolo problema con area riservata..

    Salve a tutti

    Sono uno dei tanti peincipianti nel campo della programmazione in PHO, dato il grande aiuto che mi avete sempre dato vi sottopongo un altro problemino con cui mi sto misurando..

    Ho generato un semplice pannello di amministrazione (visualizza.php) per un database testuale (utenti.txt) al quale è possibile accedere previo login corretto (manage.php); dal pannello di visualizzazione (visualizza.php) è poi possibile andare a cancellare o modificare i dati dei vari utenti;

    Il programmino visualizza.php per ciascuna riga passa ID riga e tipo di azione (cancellare o modificare) al programmino admin.php;

    Nel caso si voglia modificare i dati di una riga, il programma admin.php rimanda poi al file update.php che aggiorna il database e fornisce il link per tornare al pannello di visualizzazione;

    Il mio piccolo problema sta proprio qui: dopo aver effettuato una modifica quando dal file update.php clicco sul link per tornare al pannello di visualizzazione (visualizza.php) la pagina non mi lascia entrare in automatico poichè le righe:

    Codice PHP:
    $password $_POST["password"];
    $username $_POST["userid"]; 
    non trovano alcun valore passato dal modulo di login e sono costretto a effettuare un nuovo login per poter vedere le modifiche effettuate..

    Il tutto funziona comunque ma preferirei che una volta effettuato il login una volta la pagina mi riconoscesse in automatico..

    Ho provato a giocare un pò con i cookies ma mi sa che ho fatto confusione...

    nel caso ci fosse qualcuno così paziente da darmi una mano vi posto il codice delle mie pagine...

    utenti.txt (è il database testuale)
    --------------------------------------
    1|roberto|bianchi|roby@aruba.it|roby|miniature|1.0 |Underdark|no
    2|mario|rossi|tex75@gmail.com|lillo75|lillo|1.0 |Dragoneye|si

    manage.php (è la pagina di login per l'accesso al pannello di amministrazione)
    ------------------------------------------------------------------------------
    Codice PHP:
    <?php


    $password 
    $_POST["password"];
    $username $_POST["userid"];

    if ((
    $password <> XXXXXXXX) && ($username <> XXXXXXX)) {

    require (
    'top.inc');
    echo 
    "<div align='center'>Non sei autorizzato ad entrare in quest'area</div>

          <div align='center'>Torna alla pagina di <a href=manage.php>login</a></div>"
    ;
    require (
    'bottom.inc');
    }


    else {
     

    if (!isset(
    $_COOKIE["admin_cookie"])) { setcookie("admin_cookie","ok",time()+60*30); };


    require (
    'top.inc');



    echo 
    "
    <html>
    <head>
    <title>Miniature D&amp;D - Aberrations</title>
    <meta name=\"description\" content=\"Miniature D&D - Sito amatoriale creato per scambiare doppioni con altri appassionati \">
    <meta name=\"keywords\" content=\"miniature d&d, miniature, d&d, miniature dungeons and dragons, dungeons & dragons, scambio, minis, spoilers\">
    <META NAME=\"GOOGLEBOT\" CONTENT=\"INDEX, FOLLOW\">
    <meta name=\"Robots\" content=\"index,follow\">
    <META content=\"2 days\" name=revisit-after>
    <META http-equiv=Content-Language content=it>
    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\">
    <link rel=\"shortcut icon\" href=\"http://myminiaturesite.altervista.org/immagini/Icona.ico\" />
    <link rel=\"icon\" href=\"http://myminiaturesite.altervista.org/immagini/Icona.ico\" />
    <style type=\"text/css\">
    <!--
    .Stile1 {
        color: #000000;
        font-weight: bold;
        font-size: 12px;

    .Stile2 {color: #000000}
    -->
    </style>
    <tr>
      <td>

    </td>

        <td valign=\"top\" background=\"immagini/Aberrations_r3_c1.jpg\"><p align=\"center\"></p></p><table width=\"750\" p align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" bordercolor=\"#000000\">

    <tr>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">ID</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">NOME</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">COGNOME</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">EMAIL</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">USERID</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">PASSWORD</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">VER</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">PREFERITO</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">COLLEZIONA</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">MODIF</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">CANC</span></div></td>

      </tr>"
    ;

    $textfile=fopen("utenti.txt""r");
     while (
    $rigafile=fgets($textfile,1024))  {
       
    $campiriga=explode("|"$rigafile);
       
    $idID=$campiriga[0];
       
    $idnome=$campiriga[1];
       
    $idcognome=$campiriga[2];
       
    $idmail=$campiriga[3];
       
    $iduserid=$campiriga[4];
       
    $idpassword=$campiriga[5];
       
    $idversione=$campiriga[6];
       
    $idpreferito=$campiriga[7];
       
    $idcontinua=$campiriga[8];

    echo 
    "<tr><td>$idID</td> <td>$idnome</td> <td>$idcognome</td> <td>$idmail</td> <td>$iduserid</td> <td>$idpassword</td> <td>$idversione</td> <td>$idpreferito</td> <td>$idcontinua</td> <td>[url='admin.php?row=$idID&action=modifica']modifica[/url]</td> <td>[url='admin.php?row=$idID&action=cancella']cancella[/url]</td></tr>";

    }

    // fine ciclo while

    echo "
    </table>
    </body>
    </html>
    "
    ;

    fclose($textfile);

    require (
    'bottom.inc');

    }
    ?>
    admin.php (è il programma che consente la cancellazione o la modifica dei dati degli utenti; vi si accede da visualizza.php)
    -----------------------------------------------------------
    Codice PHP:
    <?php

    if (!isset($_COOKIE["admin_cookie"]) && $_COOKIE["admin_cookie"] <> "ok") {
    require (
    'top.inc');
    echo 
    "<div align='center'>Non sei autorizzato ad entrare in quest'area</div>

          <div align='center'>Torna alla pagina di <a href=manage.php>login</a></div>"
    ;
    require (
    'bottom.inc');

    } else {

    require (
    'top.inc');


    $azione=$_GET["action"];
    $riga=$_GET["row"];


    if (
    $azione=='cancella'){

    $textfile fopen("utenti.txt""r");
    $textfile_new fopen("utenti_new.txt""a");

    while (
    $rigafile fgets($textfile,1024)) {
        
    $campiriga explode("|"$rigafile);
        
    $idriga $campiriga[0];
    if (
    $idriga <> $riga) {
    fwrite($textfile_new$rigafile);
       }
    }

    fclose($textfile);
    fclose($textfile_new);

    unlink("utenti.txt");
    rename("utenti_new.txt","utenti.txt");

    echo 
    "<div align='center'>Cancellazione eseguita con successo</div>
    "
    ;
    }


    if (
    $azione=='modifica'){
       
    $textfile fopen("utenti.txt""r");
       while (
    $rigafile fgets($textfile,1024)) {
        
    $campiriga explode("|"$rigafile);
        
    $idriga $campiriga[0];
    if (
    $idriga == $riga) {

       
    $idID=$campiriga[0];
       
    $idnome=$campiriga[1];
       
    $idcognome=$campiriga[2];
       
    $idmail=$campiriga[3];
       
    $iduserid=$campiriga[4];
       
    $idpassword=$campiriga[5];
       
    $idversione=$campiriga[6];
       
    $idpreferito=$campiriga[7];
       
    $idcontinua=$campiriga[8];


       }
    }
    fclose($textfile);



    echo 
    "
     <tr>
      <td></td>
       <td valign='top' ><p align='center'></p>

         <p align='center'>PANNELLO DI AMMINISTRAZIONE</p>
         <table width='750' border='0' align='center' cellpadding='0' cellspacing='0' bgcolor='#CCCCCC'>
         <tr>
             <td>
             <form method='post' action='update.php'>
               <div align='center'>
                 



                   <span class='Stile45'>
                   ID: <input name='id' type='text' size='5' value='
    $idID'>
                   NOME: <input name='nome' type='text' size='10' value='
    $idnome'>
                   COGNOME: <input name='cognome' type='text'size='10' value='
    $idcognome'>
                   EMAIL: <input name='email' type='text' id='email' size='10' value='
    $idmail'>

                   USERID: <input name='userid' type='text'size='10' value='
    $iduserid'>
                   PASSWORD: <input name='password' type='text'size='10' value='
    $idpassword'>

                   VERSIONE: <input name='versione' type='text'size='10' value='
    $idversione'>
                   PREFERITO: <input name='preferito' type='text'size='10' value='
    $idpreferito'>
                   CONTINUA: <input name='continua' type='text'size='10' value='
    $idcontinua'>
                   </p>
                 <p align='center' class='Stile45'>


    <p align='center'> <input type='submit' name='invia' value='Modifica'>
    </p>
    </div>
    </form></td>
    </tr> </table>
    <p align='center'></p>
    <p align='center'></p>
    <p align='center'></p>
    <p align='center'></p>
    <p align='center'></p>
    <p align='center'></p>
    <table>
      <tr></tr>
    </table>

    </body>
    </html>"
    ;

    }
    }
    require (
    'bottom.inc');
    ?>


    update.php (è il programmino che nel caso di una modifica, mi aggiorna la riga del database testuale..)
    -------------------
    Codice PHP:
    <?php

    if (!isset($_COOKIE["admin_cookie"]) && $_COOKIE["admin_cookie"] <> "ok") {
    require (
    'top.inc');
    echo 
    "<div align='center'>Non sei autorizzato ad entrare in quest'area</div>

          <div align='center'>Torna alla pagina di <a href=manage.php>login</a></div>"
    ;
    require (
    'bottom.inc');

    } else {

    require (
    'top.inc');

    $riga=$_POST["id"];


    $textfile fopen("utenti.txt""r");
    $textfile_new fopen("utenti_new.txt""a");

    while (
    $rigafile fgets($textfile,1024)) {
           
    $campiriga explode("|"$rigafile);
           
    $idriga $campiriga[0];
    if (
    $idriga == $riga) {


      
    $cID=$_POST["id"];
      
    $cnome=$_POST["nome"];
      
    $ccognome=$_POST["cognome"];
      
    $cmail=$_POST["email"];
      
    $cuserid=$_POST["userid"];
      
    $cpassword=$_POST["password"];
      
    $cversione=$_POST["versione"];
      
    $cpreferito=$_POST["preferito"];
      
    $ccontinua=$_POST["continua"];

      
    $nuovariga="$cID|$cnome|$ccognome|$cmail|$cuserid|$cpassword|$cversione|$cpreferito|$ccontinua \n";


    fwrite($textfile_new$nuovariga);
       } else {
              
    fwrite($textfile_new$rigafile);
    }
    }
    fclose($textfile);
    fclose($textfile_new);

    unlink("utenti.txt");
    rename("utenti_new.txt","utenti.txt");

    echo 
    "<div align='center'>Aggiornamento eseguito con successo

    [url='visualizza.php']visualizza[/url]</div>
    "
    ;

    require (
    'bottom.inc');
    }
    ?>

    Vi ricordo che il mio problema sta nel passaggio dalla pagina update.php a visualizza.php;
    il codice nn trova alcun dato passato da un modulo e quindi non mi lascia entrare se non effettuando un nuovo login..

    Spero di essere stato chiaro... Ringrazio tutti quanti voi per la pazienza e l'aiuto che saprete darmi..

    Robysdc

  2. #2
    Rispostina veloce.... ( non ho avuto tempo di leggere tutto il codice )

    Perché non usi le sessioni ?

    Una volta effettuato il login setti una variabile di sessione che rimane attiva finché non fai il logout, chiudi il browser o scade dopo un certo tempo.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    86
    Purtroppo sono un novellino del PHP e non so come usare le sessioni..

    in realtà non so nemmeno cosa siano..

    grazie comunque dell'aiuto

  4. #4
    Codice PHP:
    $password $_POST["password"]; $username $_POST["userid"];  if (($password <> XXXXXXXX) && ($username <> XXXXXXX)) {  require ('top.inc'); echo "<div align='center'>Non sei autorizzato ad entrare in quest'area</div>
           <div align='center'>Torna alla pagina di <a href=manage.php>login</a></div>"
    ; require ('bottom.inc'); }   else { 
    $_SESSION['autorizzazione']=1;

    e poi quando fai il controllo ....



    Codice PHP:
    if ($_SESSION['autorizzazione']!=1) { require ('top.inc'); echo "<div align='center'>Non sei autorizzato ad entrare in quest'area</div>
           <div align='center'>Torna alla pagina di <a href=manage.php>login</a></div>"
    ; require ('bottom.inc'); 
    E' una varibile che ti porti sempre dietro, non importa se cambi pagina... se vuoi chiudere la sessione semplicemenete :

    Codice PHP:
    unset($_SESSION['autorizzazione']); 

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    86
    Ciao

    Ho provato a modificare il codice come suggerivi tu usando le sessioni, ma ancora non va...

    il problema resta lo stesso, passando dalla pagina update.php a quella visualizza.php il programma mi sbatte fori e mi obbliga a rifare il login..

    sicuramente ho commesso qualche cavolata.. mi daresti uno sguardo al codice?

    grazie mille a tutti per la pazienza..

    manage.php (il form di login..)
    -------------------------------
    Codice PHP:
    <style type="text/css">
    <!--
    body,td,th {
        color: #FFFFFF;
        font-family: Arial, Helvetica, sans-serif;
        font-size: 10px;
    }
    body {
        background-color: #000000;
    }
    a:link {
        color: #FFFF00;
    }
    a:visited {
        color: #FFFF00;
    }
    a:hover {
        color: #FFFF00;
    }
    a:active {
        color: #FF0000;
    }
    .Stile1 {color: #000000}
    -->
    </style>
    <?php
    require ('top.inc')
    ?>

    <table width="500" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#CCCCCC">
         <tr>
             <td>
              <form method="post" action="visualizza.php">
             
                <div align="center"><span class="Stile1">

                USERID: </span><input name="userid" type="text" size="20">
                
                <span class="Stile1"> 
                PASSWORD:</span><input type="password" name="password" size="20">

                 <input type="submit" value="Login" name="submit" />
                </div>
              </form></td>
    </tr> </table>


    <?php

    require ('bottom.inc');
    ?>
    <script type="text/javascript">
    var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
    document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
    </script>
    <script type="text/javascript">
    try {
    var pageTracker = _gat._getTracker("UA-8243058-1");
    pageTracker._trackPageview();
    } catch(err) {}</script>

    visualizza.php (pannello di visualizzazione che permette di cancellare o modif. i dati)
    ------------------------------------
    Codice PHP:
    <?php
    session_start
    ();

    $password $_POST["password"];
    $username $_POST["userid"];

    if ((
    $password <> XXXXXXX) || ($username <> XXXXXXX)) {

    require (
    'top.inc');
    echo 
    "<div align='center'>Non sei autorizzato ad entrare in quest'area</div>

          <div align='center'>Torna alla pagina di <a href=manage.php>login</a></div>"
    ;
    require (
    'bottom.inc');
    }


    else {

    $_SESSION['autorizzazione']=1;

    // vecchia versione con cookie  if (!isset($_COOKIE["admin_cookie"])) { setcookie("admin_cookie","ok",time()+60*30); };


    require ('top.inc');



    echo 
    "
    <html>
    <head>
    <title>Miniature D&amp;D - Aberrations</title>
    <meta name=\"description\" content=\"Miniature D&D - Sito amatoriale creato per scambiare doppioni con altri appassionati \">
    <meta name=\"keywords\" content=\"miniature d&d, miniature, d&d, miniature dungeons and dragons, dungeons & dragons, scambio, minis, spoilers\">
    <META NAME=\"GOOGLEBOT\" CONTENT=\"INDEX, FOLLOW\">
    <meta name=\"Robots\" content=\"index,follow\">
    <META content=\"2 days\" name=revisit-after>
    <META http-equiv=Content-Language content=it>
    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\">
    <link rel=\"shortcut icon\" href=\"http://myminiaturesite.altervista.org/immagini/Icona.ico\" />
    <link rel=\"icon\" href=\"http://myminiaturesite.altervista.org/immagini/Icona.ico\" />
    <style type=\"text/css\">
    <!--
    .Stile1 {
        color: #000000;
        font-weight: bold;
        font-size: 12px;

    .Stile2 {color: #000000}
    -->
    </style>
    <tr>
      <td>

    </td>

        <td valign=\"top\" background=\"immagini/Aberrations_r3_c1.jpg\"><p align=\"center\"></p></p><table width=\"750\" p align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" bordercolor=\"#000000\">

    <tr>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">ID</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">NOME</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">COGNOME</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">EMAIL</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">USERID</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">PASSWORD</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">VER</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">PREFERITO</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">COLLEZIONA</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">MODIF</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">CANC</span></div></td>

      </tr>"
    ;

    $textfile=fopen("utenti.txt""r");
     while (
    $rigafile=fgets($textfile,1024))  {
       
    $campiriga=explode("|"$rigafile);
       
    $idID=$campiriga[0];
       
    $idnome=$campiriga[1];
       
    $idcognome=$campiriga[2];
       
    $idmail=$campiriga[3];
       
    $iduserid=$campiriga[4];
       
    $idpassword=$campiriga[5];
       
    $idversione=$campiriga[6];
       
    $idpreferito=$campiriga[7];
       
    $idcontinua=$campiriga[8];

    echo 
    "<tr><td>$idID</td> <td>$idnome</td> <td>$idcognome</td> <td>$idmail</td> <td>$iduserid</td> <td>$idpassword</td> <td>$idversione</td> <td>$idpreferito</td> <td>$idcontinua</td> <td>[url='admin.php?row=$idID&action=modifica']modifica[/url]</td> <td>[url='admin.php?row=$idID&action=cancella']cancella[/url]</td></tr>";

    }

    // fine ciclo while

    echo "
    </table>
    </body>
    </html>
    "
    ;

    fclose($textfile);

    require (
    'bottom.inc');

    }
    ?>
    admin.php (è il programma che consente la cancellazione o la modifica dei dati degli utenti; vi si accede da visualizza.php)
    -----------------------------------------------------------
    Codice PHP:
    <?php

    session_start
    ();


    // vecchia versione con cookie  if (!isset($_COOKIE["admin_cookie"]) && $_COOKIE["admin_cookie"] <> "ok") {

    if ($_SESSION['autorizzazione']!=1)  {
    require (
    'top.inc');
    echo 
    "<div align='center'>Non sei autorizzato ad entrare in quest'area</div>

          <div align='center'>Torna alla pagina di <a href=manage.php>login</a></div>"
    ;
    require (
    'bottom.inc');

    } else {

    require (
    'top.inc');


    $azione=$_GET["action"];
    $riga=$_GET["row"];


    if (
    $azione=='cancella'){

    $textfile fopen("utenti.txt""r");
    $textfile_new fopen("utenti_new.txt""a");

    while (
    $rigafile fgets($textfile,1024)) {
        
    $campiriga explode("|"$rigafile);
        
    $idriga $campiriga[0];
    if (
    $idriga <> $riga) {
    fwrite($textfile_new$rigafile);
       }
    }

    fclose($textfile);
    fclose($textfile_new);

    unlink("utenti.txt");
    rename("utenti_new.txt","utenti.txt");

    echo 
    "<div align='center'>Cancellazione eseguita con successo</div>
    "
    ;
    }


    if (
    $azione=='modifica'){
       
    $textfile fopen("utenti.txt""r");
       while (
    $rigafile fgets($textfile,1024)) {
        
    $campiriga explode("|"$rigafile);
        
    $idriga $campiriga[0];
    if (
    $idriga == $riga) {

       
    $idID=$campiriga[0];
       
    $idnome=$campiriga[1];
       
    $idcognome=$campiriga[2];
       
    $idmail=$campiriga[3];
       
    $iduserid=$campiriga[4];
       
    $idpassword=$campiriga[5];
       
    $idversione=$campiriga[6];
       
    $idpreferito=$campiriga[7];
       
    $idcontinua=$campiriga[8];


       }
    }
    fclose($textfile);



    echo 
    "
     <tr>
      <td></td>
       <td valign='top' ><p align='center'></p>

         <p align='center'>PANNELLO DI AMMINISTRAZIONE</p>
         <table width='750' border='0' align='center' cellpadding='0' cellspacing='0' bgcolor='#CCCCCC'>
         <tr>
             <td>
             <form method='post' action='update.php'>
               <div align='center'>
                 



                   <span class='Stile45'>
                   ID: <input name='id' type='text' size='5' value='
    $idID'>
                   NOME: <input name='nome' type='text' size='10' value='
    $idnome'>
                   COGNOME: <input name='cognome' type='text'size='10' value='
    $idcognome'>
                   EMAIL: <input name='email' type='text' id='email' size='10' value='
    $idmail'>

                   USERID: <input name='userid' type='text'size='10' value='
    $iduserid'>
                   PASSWORD: <input name='password' type='text'size='10' value='
    $idpassword'>

                   VERSIONE: <input name='versione' type='text'size='10' value='
    $idversione'>
                   PREFERITO: <input name='preferito' type='text'size='10' value='
    $idpreferito'>
                   CONTINUA: <input name='continua' type='text'size='10' value='
    $idcontinua'>
                   </p>
                 <p align='center' class='Stile45'>


    <p align='center'> <input type='submit' name='invia' value='Modifica'>
    </p>
    </div>
    </form></td>
    </tr> </table>
    <p align='center'></p>
    <p align='center'></p>
    <p align='center'></p>
    <p align='center'></p>
    <p align='center'></p>
    <p align='center'></p>
    <table>
      <tr></tr>
    </table>

    </body>
    </html>"
    ;

    }
    }
    require (
    'bottom.inc');
    ?>

    update.php (è il programmino che nel caso di una modifica, mi aggiorna la riga del database testuale..)
    -------------------
    Codice PHP:
    <?php

    session_start
    ();

    // vecchia versione con cookie    if (!isset($_COOKIE["admin_cookie"]) && $_COOKIE["admin_cookie"] <> "ok") {
      
    if ($_SESSION['autorizzazione']!=1)  {
    require (
    'top.inc');
    echo 
    "<div align='center'>Non sei autorizzato ad entrare in quest'area</div>

          <div align='center'>Torna alla pagina di <a href=manage.php>login</a></div>"
    ;
    require (
    'bottom.inc');

    } else {

    require (
    'top.inc');

    $riga=$_POST["id"];


    $textfile fopen("utenti.txt""r");
    $textfile_new fopen("utenti_new.txt""a");

    while (
    $rigafile fgets($textfile,1024)) {
           
    $campiriga explode("|"$rigafile);
           
    $idriga $campiriga[0];
    if (
    $idriga == $riga) {


      
    $cID=$_POST["id"];
      
    $cnome=$_POST["nome"];
      
    $ccognome=$_POST["cognome"];
      
    $cmail=$_POST["email"];
      
    $cuserid=$_POST["userid"];
      
    $cpassword=$_POST["password"];
      
    $cversione=$_POST["versione"];
      
    $cpreferito=$_POST["preferito"];
      
    $ccontinua=$_POST["continua"];

      
    $nuovariga="$cID|$cnome|$ccognome|$cmail|$cuserid|$cpassword|$cversione|$cpreferito|$ccontinua \n";


    fwrite($textfile_new$nuovariga);
       } else {
              
    fwrite($textfile_new$rigafile);
    }
    }
    fclose($textfile);
    fclose($textfile_new);

    unlink("utenti.txt");
    rename("utenti_new.txt","utenti.txt");

    echo 
    "<div align='center'>Aggiornamento eseguito con successo

    [url='visualizza.php']visualizza[/url]</div>
    "
    ;

    require (
    'bottom.inc');
    }
    ?>
    Vi ricordo che il mio problema sta nel passaggio dalla pagina update.php a visualizza.php;

    cliccando sul link visualizza</div>
    "; presente in update.php, il codice nn trova alcun dato passato da un modulo e quindi non mi lascia entrare se non effettuando un nuovo login..

    dove sbaglio??

  6. #6
    ho capito l'errore...

    devi aggiungere questa riga nella pagina visualizza... Tu nella pagina visualizza chiedevi sempre la password non controllavi prima che la variabile di sessione fosse già stata inizializzata...
    Ora prima di chiedere la password controlla che non sia già stata immessa...

    P.S. : ti ho aggiunto alcune cosine al codice...

    Codice PHP:
    if ($_SESSION['autorizzazione']!=1) {
    $password $_POST["password"];
    $username $_POST["userid"];  

    if (
    $username <> "admin" || $password <> "root" ) {  
    require (
    'top.inc'); 
    echo 
    "<div align='center'>Non sei autorizzato ad entrare in quest'area</div>

    <div align='center'>Torna alla pagina di <a href=manage.php>login</a></div>"
    ;
    require (
    'bottom.inc');
    exit;
    }
    }  else {
    $_SESSION['autorizzazione']=1;
    ... 

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    86
    ho capito csa dici di fare..

    ho modificato il codce della pagina visualizza.php ma credo di avere ancora bisogno di una mano..

    una volta effettuato il login la pagina visualizza viene caricata ma a video non viene visualizzato nulla...

    ti posto il codice modificato

    Codice PHP:
    <?php

    session_start
    ();

    if (
    $_SESSION['autorizzazione']!=1) {
    $password $_POST["password"];
    $username $_POST["userid"];   

    if (
    $username <> "robysdc" || $password <> "miniature" ) {
    require (
    'top.inc'); 
    echo 
    "<div align='center'>Non sei autorizzato ad entrare in quest'area</div>
     
    <div align='center'>Torna alla pagina di <a href=manage.php>login</a></div>"

    require (
    'bottom.inc'); 
    exit; 

    }  else {

    $_SESSION['autorizzazione']=1;


    // vecchia versione con cookie  if (!isset($_COOKIE["admin_cookie"])) { setcookie("admin_cookie","ok",time()+60*30); };


    require ('top.inc');



    echo 
    "
    <html>
    <head>
    <title>Miniature D&amp;D - Aberrations</title>
    <meta name=\"description\" content=\"Miniature D&D - Sito amatoriale creato per scambiare doppioni con altri appassionati \">
    <meta name=\"keywords\" content=\"miniature d&d, miniature, d&d, miniature dungeons and dragons, dungeons & dragons, scambio, minis, spoilers\">
    <META NAME=\"GOOGLEBOT\" CONTENT=\"INDEX, FOLLOW\">
    <meta name=\"Robots\" content=\"index,follow\">
    <META content=\"2 days\" name=revisit-after>
    <META http-equiv=Content-Language content=it>
    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\">
    <link rel=\"shortcut icon\" href=\"http://myminiaturesite.altervista.org/immagini/Icona.ico\" />
    <link rel=\"icon\" href=\"http://myminiaturesite.altervista.org/immagini/Icona.ico\" />
    <style type=\"text/css\">
    <!--
    .Stile1 {
        color: #000000;
        font-weight: bold;
        font-size: 12px;

    .Stile2 {color: #000000}
    -->
    </style>
    <tr>
      <td>

    </td>

        <td valign=\"top\" background=\"immagini/Aberrations_r3_c1.jpg\"><p align=\"center\"></p></p><table width=\"750\" p align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" bordercolor=\"#000000\">

    <tr>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">ID</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">NOME</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">COGNOME</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">EMAIL</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">USERID</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">PASSWORD</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">VER</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">PREFERITO</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">COLLEZIONA</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">MODIF</span></div></td>
        <td bordercolor=\"#000000\" bgcolor=\"#CCCCCC\"><div align=\"left\"><span class=\"Stile1\">CANC</span></div></td>

      </tr>"
    ;

    $textfile=fopen("utenti.txt""r");
     while (
    $rigafile=fgets($textfile,1024))  {
       
    $campiriga=explode("|"$rigafile);
       
    $idID=$campiriga[0];
       
    $idnome=$campiriga[1];
       
    $idcognome=$campiriga[2];
       
    $idmail=$campiriga[3];
       
    $iduserid=$campiriga[4];
       
    $idpassword=$campiriga[5];
       
    $idversione=$campiriga[6];
       
    $idpreferito=$campiriga[7];
       
    $idcontinua=$campiriga[8];

    echo 
    "<tr><td>$idID</td> <td>$idnome</td> <td>$idcognome</td> <td>$idmail</td> <td>$iduserid</td> <td>$idpassword</td> <td>$idversione</td> <td>$idpreferito</td> <td>$idcontinua</td> <td>[url='admin.php?row=$idID&action=modifica']modifica[/url]</td> <td>[url='admin.php?row=$idID&action=cancella']cancella[/url]</td></tr>";

    }

    // fine ciclo while

    echo "
    </table>
    </body>
    </html>
    "
    ;

    fclose($textfile);

    require (
    'bottom.inc');

    }
    ?>
    il problema credo sia nell'else poiche se entro con un userid ed una password sbagliati il programma mi restituisce giustamente la pagina di errore, mentre se effettuo la registrazione correttamente non visualizzo a video nulla...

    ti ringrazio anticipatamente per il tuo aiuto e per latua pazienza..

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    86
    PROBLEMA RISOLTO!

    Sono davvero un principiante.. avevo sbagliato delle parentesi..

    ti chiedo un'ultimissima cosa..

    mi pare di capire che così come è ora la sessione resta aperta fino a che non si chiude il browser;

    pensavo di inserire un logout dalla pagina visualizza, come mi consiglieresti di fare?

    dove devo inserire il codice:

    Codice PHP:
    unset($_SESSION['autorizzazione']); 
    pensavo di mettere un link con scritto Logout nella pagina di visualizzazione..

    dovrei prevedere poi un altra pagina con quel codice e raggiungibile mediante il link logout?

    Grazie mille per il tuo preziosissimo aiuto!!

  9. #9
    Metti un link nella pagina che vuoi, ad una pagina logout.php ... che fa l'unset della variabile e ti redireziona alla pagina di login...

  10. #10
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    86
    Dici una cosa di questo tipo...?

    logout.php
    ---------------------------------
    Codice PHP:
    <?php 

    unset($_SESSION['autorizzazione']);


    require (
    'top.inc'); 
    echo 
    "<div align='center'>Logout effettuato con successo</div>
     
          <div align='center'>Torna alla pagina di <a href=manage.php>login</a></div>"

    require (
    'bottom.inc'); 


    ?>

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.