• User Attivo

    @necrosql said:

    <p>I TUOI PUNTI TOTALIZZATI SONO: <?ph$$$£££"£$%&T echo#@PAROLA SEGRETA CHE RICHIAMA IL CAMPO PUNTI CREATO DA ME NELLA TABELLA MYSQL**@@##==))); ?> </p>

    Grazie dell'aiuto!
    Non esistono parole segrete e formule magiche...

    Php è un linguaggio semplice... per apprenderlo bisogna avere una solida base di html e poi non serve spendere un centesimo... la Rete è piena di materiale da leggere e studiare... per poi smanettare... imparando!
    La cosa più importante non è conoscere le funzioni a memoria... bisogna solo capire il funzionamento delle colonne portanti del linguaggio come le variabili, gli array ecc... (bastano pochi esercizi e un minimo di applicazione...) e poi si tratta di LOGICA...
    Lo stesso risultato si può raggiungere in diversi modi... dipende dalla 'fantasia' del programmatore...
    Scopiazzare codici non porta a nulla... si avrà sempre un problema... senza capire dove sbattere la testa...
    Avere le basi è importante; l'ultimo messaggio di Thedarkita contiene praticamente la soluzione al problema solo che a chi non ha le basi non dice nulla, chi invece ce le ha capisce al volo la strada da intraprendere e risolve il problema, anche se è una cosa che non ha mai fatto!

    Posso tranquillamente affermare che è molto meno dispendioso, sia in termini di tempo che in termini di 'stress', farsela una base in modo da essere autonomi o quasi; al contrario, girando i forum 'elemosinando' soluzioni già pronte e scopiazzando a destra e manca, si rimane sempre al palo!


  • User Newbie

    Ciao Thedarkita,
    a proposito della pagina con la lista degli utenti iscritti, se ne è parlato in terza pagina di questo tutorial, io ho un problema dal quale non riesco ad uscire.:x
    Ho preso il codice che avevi postato, me lo sono sistemato con i dati che interessano a me e funziona, se non per il fatto che mi visualizza solo gli utenti dentro al limite che definisco, ossia 25 nel mio caso.
    Sopra la lista mi compaiono gli indici delle pagine, ma cliccandoli mi fa vedere sempre gli ultimi 25 utenti iscritti
    Ti copio qui sotto il mio codice:

    <?php
    $page = (isset($_GET['page'])) ? $_GET['page'] : 1;

    $limit = ($page-1)*25;

    $query="SELECT user, date_format(data, '%Y/%m/%d alle ore %H:%i:%s') AS data FROM utenti ORDER BY data DESC";
    $result= mysql_query($query);
    $pagine = ceil(mysql_num_rows($result)/25);

    echo '<table><tr><td>';
    for($i=1; $i<=$pagine; $i++)
    {
    echo '<a href="utenti.php?page='.$i.'">'.$i.'</a> ';
    }
    echo '</td></tr>';
    while($row = mysql_fetch_array($result))
    {
    echo '<tr><td>'.$row['user'].', iscritto il: '.$row['data'].'<br>;
    }
    echo '</table>';
    ?>

    Ho provato e riprovato, ma nulla da fare, se tu, o qualcun'altro, mi può dare una mano ve ne sarei davvero grato!
    :ciauz:


  • User Newbie

    Ciao,

    innanzi tutto grazie mille per questo tutorial.
    Pur non capendo niente di php sono riuscito a istallarlo e farlo funzionare...

    ...ora però io avrei bisogno di bloccare l'accesso all'area privata, nel senso che vorrei essere io a fornire username e password agli utenti...

    come posso fare?

    grazie ancora :wink3:


  • User Newbie

    ciao scusate potreste postarmi l codice per una pagina che serva a cambiare password


  • User Attivo

    Ciao, devi fare una semplice Update sul campo che ti interessa


  • User Newbie

    Scusatemi non mi sono espresso corrretamente intendevo una pagina con un form del tipo nome utente,vecchia password,nuova password,conferma passsword


  • User Newbie

    io avevo fatto queato ma nn funziona[php]<?php
    // Includo la connessione al database
    require('../area_privata/config.php');

    $user = $SESSION['userloggato'];
    if ($user) {

    //user is logged in

    if ($_POST['submit']) {

    // check fields

    $oldpassword = md5($_POST['vpass']);
    $newpassword = md5($_POST['pass']);
    $repeatnewpassword = md5 ($_POST['pass2']);

    //connect db

    $db_host = "localhost";
    $db_user = "ciberioegiro";
    $db_password = "miapass";
    $db_name = "my_ciberioegiro";

    //connetto il database
    $db = mysql_connect($db_host, $db_user, $db_password) or die ('Errore durante la connessione');
    mysql_select_db($db_name, $db) or die ('Errore durante la selezione del db');

    $queryget = mysql_query("SELECT pass FROM WHERE user='$user'") or die ("Query didnt work");
    $row = mysql_fetch_assoc($queryget);

    $oldpassworddb = $row['pass'];

    echo $olrdpassworddb."<br>";
    echo $oldpassword."<br>";

    //check passwords
    if ($oldpassword==$oldpassworddb)
    {

    // check two new passwords
    if ($newpasword==$repeatnewpassword)

    {

    //success
    //change password in db

    $querychange = mysql_query("UPDATE utenti SET pass='$newpassword' WHERE user='$user'") or die ("Your password has been changed. <a href='index.php'>Rerturn to main page.");

    } else {

    print ("New passwords don't match!");

    }

    } else {

    print ("Old password doesnt match!");

    }

    } else {

    echo "";

    }

    }
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN">
    <html xmlns="w3.org/1999/xhtml">
    <?php include("../area_privata/configuratoriphp/head.php")?>
    <div id="container">
    <?php include("../area_privata/configuratoriphp/header.php")?>
    <?php include("../area_privata/configuratoriphp/nav.php")?>
    <?php include("../area_privata/configuratoriphp/colsx.php")?>
    <div id="coldx">

    <div id="contenuti">
       <div class="boxcontenuti">
    

    <!--inizio contenuto principale-->
    <!--<p> </p>-->
    <br />

    <h2>AREA RISERVATA DOCENTI</h2>

    <div id="centra_ingresso">
    <form class="ingresso" name="logForm" id="logForm" action='cpassword.php' method='post'>
    <fieldset>

      <legend><strong>Modulo cambia password</strong></legend>
      <div>
        <label for="username">Username</label>
        <input class="required grigio" id="user" type='text' name='user' value="<?php echo $_SESSION['userloggato'];?>" />
      </div>
      <div>
        <label for="vecchiapassword">Vecchia password</label>
    
        <input class="required password" id="vpass" type='password' name='vpass' />
      </div>
      <div>
        <label for="password">Nuova password</label>
        <input class="required password" id="pass" type='password' name='pass' /></p>
      </div>
      <div>
        <label for="password2">Ripeti nuova password</label>
    
        <input class="required password" id="pass2" type='password' name='pass2' />
      </div>
      <div>
        <p><input type='submit' value='CAMBIA PASSWORD'>&nbsp;</p>
      </div>
    </fieldset>
    

    </form>
    </div>

    <!--fine contenuto principale-->
    </div>
    </div>

    <!--fine sottocontenitore centrale-->
    </div>
    </div>
    <?php include("configuratoriphp/footer.php");?>
    </body>
    </html>[/php]


  • ModSenior

    Ciao greezle,
    questa cosa è già stata trattata in alcuni post, ti basta togliere la pagina di registrazione.
    Anche il cambio password mi sembra sia già stato trattato.


  • User Newbie

    Ciao scusatemi ma nei post precedenti non ho trato niente per il reimposta password(non il recupera).


  • User Newbie

    Ciao Thedarkita, il tutorial è veramente incredibile.
    Ho seguito tutta la conversazione e attivato una versione di test funzionante del sistema di login.
    Ora però proprio non riesco a capire come far in modo che, una volta loggato correttamente, ogni utente sia indirizzato ad una pagina specifica a lui dedicata: una pagina privata per ogni utente. Ho cercato nel corso del tutorial di capire come fare ma non ho trovato risposta. Potessi aiutarmi te ne sarei grato.
    Ciao.


  • ModSenior

    Puoi modificare l'header inviato all'utente, mettendo un location ad una pagina con il proprio username.


  • User Newbie

    Ciao Thedarkita, grazie innanzitutto per la risposta.
    Immagino tu stia parlando dell'istruzione presente nella pagina login.php in cui l'utente viene reindirizzato alla pagina privata.php, come di seguito riportato:
    // reindirizzo l'utente
    header('Location: privata.php');
    exit;
    Io ho provato ad adattarlo alle mie esigenze in questo modo:
    -ho aggiunto un campo "pagina_personale" alla tabella del database in cui memorizzare, per ogni utente, la sua pagina con i relativi documenti

    • ho modificato l'istruzione riportata sopra in questo modo:
      // reindirizzo l'utente
      header('Location: pagina_personale.php');
      exit;
      In questo modo però non funziona. Mi sorge anche qualche dubbio perchè non vedo la necessità di creare di volta in volta una pagina personale quando sarebbe sufficiente che la pagina privata.php visualizzasse al suo interno soltanto i dati relativi all'utente loggato.
      Ma per far funzionare le cose in questo modo come deve essere strutturato il database e come deve essere realizzata l'istruzione? Molti propongono di creare una tabella secondaria con foreign key all'interno della quale memorizzare i dati da restituire ad ogni utente ma il gestionale database che utilizzo (a**ba) pare non consentire l'impiego di chiavi esterne.
      Insomma sono diversi giorni che giro intorno a questa cosa senza trovare il bandolo della matassa.
      Grazie in anticipo.

  • User Newbie

    A quanto pare ho risolto il problema.
    Come dicevo:

    • ho inserito nel database un campo aggiuntivo "pagina_personale" al cui interno è memorizzato il nome del file della pagina personale di ogni singolo utente, ovvero nome_utente.php (es. pippo.php, pluto.php ecc.)
    • ho creato per ogni utente una pagina nome_utente.php al cui interno saranno inseriti i documenti relativi ad ogni singolo utente
    • ho modificato nel file login.php l'istruzione che indirizza l'utente alla sua pagina in questo modo:
      // reindirizzo l'utente
      header('Location:' . $user . '.php');
      exit;

    A quanto pare funziona: l'utente si logga, viene riconosciuto ed indirizzato alla pagina a lui dedicata. Ovviamente per ogni utente iscritto deve essere creata una pagina specifica.
    Che ne dici Thedarkita?


  • User Newbie

    Buonanotte a tutti, visto l'orario, ho bisogno di capire un paio di cosette e se qualcuno può darmi una mano ne sarò più che felice.
    Ho fatto tutta l'area riservata COMUNE A TUTTI gli utenti che si registrano, funziona, nonostante sia un principiante con poco tempo da dedicare allo studio causa lavoro, son riuscito a capire i funzionamenti, poi mi è sorta la necessità di avere delle pagine personalizzate SOLO PER ALCUNI utenti registrati.
    Viste le mie esigenze ho creato un altro form per il login di accesso alle pagine riservate, dedicato a quest'ultimi; dopo un po' di sbattimenti e la dritta di doctorprivacy riesco a farlo funzionare, peccato però che ho dovuto fare una seconda tabella, chissà perchè in locale mi funziona correttamente, mentre sul web no.
    Ora, capita che un utente registrato entri nell'area riservata comune, ma che una volta dentro voglia guardarsi la propria pagina personale, solo che mi manda sempre alla pagina di errore, mentre se dalla pagina personale, voglio passare alla zona riservata comune funziona correttamente; sarà l'ora tarda o sarò tardo io, ma qualcuno può dirmi cosa c'è di sbagliato in questo codice?

    <?php
    require('../02_db/config.php');

    if(!isset($_SESSION['login']))
    {
    header('Location: ../02_db/01_rec.php');
    exit;
    }
    // Sono all'interno dell'area riservata e voglio andare nella mia pagina personale schiacciando un pulsante
    if(isset($_POST['perspage']))
    {
    $query = mysql_query("SELECT id FROM personal WHERE user = '$user' AND pass = '$pass' LIMIT 1");

    if(mysql_num_rows($query) == 1)
    {
        $perspage = mysql_fetch_array($query);
        {
    
        $_SESSION['login'] = $perspage['id'];
        
        header('Location: ../11_pers/'. $user .'.php');
        exit;
        }
    }
    else
    {
    header('Location: ../11_pers/01_ops.php');
    exit;
    }
    

    }
    ?>

    Grazie a tutti


  • User Newbie

    Ammetto che l'altra sera ero particolarmente stanco, ho risolto, scusate


  • User Attivo

    Salve, ho due domande:

    1. Come faccio a far visualizzare il nome della persona loggata nella sua pagina riservata?

    2. Vorrei aggiungere una opzione simile a quella presente nei forum, tipo, la data della ultima connessione del utente.

    Come potrei fare qualche input?


  • User Attivo

    buongiorno 🙂 la guida registrazione e login è pefetta 😉 ma per il recupero password ?


  • ModSenior

  • User Newbie

    Ciao Thedarkita e ciao a tutto il forum,
    complimenti per la comunità viva e reattiva che avete costruito.
    Volevo porre una questione su questo post "anzianotto" ma molto utile.

    Premetto che ho copiato gli script del tutorial e funziona tutto alla perfezione.

    La mia questione è: creare una pagina privata uguale per tutti ma con differente contenuto. Il contenuto che dovrebbe essere differenziato sono i Todo di questo script che ho trovato sulla rete, (w w w.tutorialzine.com/2010/03/ajax-todo-list-jquery-php-mysql-css/)
    qui c'è il link diretto al download (w w w.demo.tutorialzine.com/2010/03/ajax-todo-list-jquery-php-mysql-css/demo.zip).

    Non sono molto pratico di codici, però credo di aver capito la teoria:
    I todo si memorizzano in una tabella "tz_todo", che ovviamente è uguale per tutti.
    Quello che dovrei fare io è fare in modo che si memorizzino in riferimento ad un determinato id utente e richiamare poi quell'id per la pagina privata, giusto?!

    E come cacchio si faaa???:crying:

    Lo so che vi sto chiedendo una cosa che vi farà perdere un mare di tempo, ma sono mesi che ci sbatto la testa, ho comprato libri e surfato il web alla ricerca di una soluzione, e questo post è quello che ci si avvicina di più. Putroppo gli angoli bui sono ancora tanti. Illuminatemi voi vi prego!

    :ciauz:


  • User

    @ernando said:

    (w w w.tutorialzine.com/2010/03/ajax-todo-list-jquery-php-mysql-css/)
    qui c'è il link diretto al download (w w w.demo.tutorialzine.com/2010/03/ajax-todo-list-jquery-php-mysql-css/demo.zip).

    Ciao, Mi sembra non funzionare quel collegamento per il download, comunque ho guardato la fonte dal primo link e direi che devi solo modificare il file config.php o nome simile che contiene la configurazione di accesso al tuo Database Sql

    P.s. stiamo uscendo dal topic principale.