• User

    Salve a tutti e mi aggiungo agli infiniti "grazie" al creatore... era un pezzo che smanettavo per riuscire a far funzionare quello che con questo tutorial funziona dal primo istante...
    ho seguito passo passo il tutorial ma ancora ho 2 problemi differenti che non sono riuscito a risolvere

    1. come creare una pagina privata diversa per ogni utente
    2. come inserire un nuovo parametro al database al momento della registrazione (ho usato questa stringa nella pagina registrati <input name="locali" type="text" id="locali" value="Nome Locale" onfocus="if(this.value=='Nome Locale') this.value='';" /><br /> ma nella tabella sql non riesco a creare la nuova voce "locali" )

    grazie in anticipo.


  • ModSenior

    Ciao pozzz,

    entrambi i problemi, se non ricordo male, sono stati già trattati nelle pagine di questa discussione, se cerchi un pò dovresti già trovare tutto il necessario. I campi della tabella del database puoi crearli utilizzando phpmyadmin invece di scrivere la query, che è più semplice.


  • User

    @Thedarkita said:

    Ciao pozzz,

    entrambi i problemi, se non ricordo male, sono stati già trattati nelle pagine di questa discussione, se cerchi un pò dovresti già trovare tutto il necessario. I campi della tabella del database puoi crearli utilizzando phpmyadmin invece di scrivere la query, che è più semplice.

    Infatti ho trovato la parte in cui si parla di differenziare le pagine per ogni utente, ma quando si avvia la discussione il messaggio successivo dice risolto e non viene spiegato pubblicamente come.


  • ModSenior

    Per far accedere una determinata pagina solamente all'utente avente ID 1, il controllo da utilizzare è il seguente:
    [php]
    if(!isset($_SESSION['login']) || $_SESSION['login'] != 1)
    die('Accesso non autorizzato');
    [/php]


  • User

    Ciao thedarkita,ti volevo chieder un informazione...sto quasi alla fine del tutorial che ci hai suggerito e per adesso non sto avendo problemi!anzi grazie per le dritte che mi hai dato! ora voglio chiederti un informazione per il mio form in php ho creato un form con nome utente email commento,e vorrei inserire due pulsanti radio,dove c'è scrtitto ad uno dott. e all'altro dott.sa in modo da specificare il sesso e il pulsante invia che lo invia in una pagina in php denominata scriptmedica.php...dentro c'è questo contenuto
    <?php
    $data=date("d-m-y");
    $ora=date("G:i");
    $nome=Stripslashes(Strip_tags($_POST['nome']));
    $mail=Stripslashes(Strip_tags($_POST['mail']));

    // qui vanno inseriti i pulsanti radio

    $commento=Stripslashes(Strip_tags($_POST['commento']));
    $commento= nl2br($commento);
    $codice = $_POST['codice'];
    $codice_x = $_POST['codice_x'];
    $ip=$_SERVER['REMOTE_ADDR'];
    $ver = $_POST['num'];
    if (( $nome == "" ) || ( $mail == "" ) || ( $commento == "" ) || ($ver != '6')||($codice != $codice_x)) {

    header("Location: ://.il mio sito/medica.php");

    //qui la verità avrei voluto inserire qualche scritta in rosso con esempio:
    non hai inserito completato i campi correttamente oppure che mi segnalasse in rosso i campi che risultano sbagliati
    Mentre adesso invece se un campo non me lo compila nel modo giusto mi ritorna di nuovo alla pagina del form.Non so come fare la funzione appena descritta
    andiamo avanti

    \ se l'utente ha compilato perfettamente il form invece\
    } else {
    $leggi_file=fopen("public/medicina.txt","r");
    $dim_file=filesize("public/medicina.txt");
    $contenuto=@fread($leggi_file,$dim_file);
    fclose($leggi_file);
    $var=fopen("public/medicina.txt","r+");

    \adesso mi creo una tebella
    fwrite($var, ' <table width="270" border="0">
    <tr>
    <td width="270">Ciao: <b>'."$nome". '</b><br>In
    data: '."$data".' alle ore: '."$ora".'</b><br>E-Mail: <a href="mailto:'."$mail".'">'."$mail".'</a><br>Url: <a href="'."$url".'" target="_blank">'."$url".'</a><br> scrive: <br><b>'."$commento".'</b><br>
    Ecco il tuo codice IP <b>'."$ip".' </b></td>
    </tr>
    </table>'."$contenuto");
    fclose($var);
    header("Location: ://mio sito/medica.php");
    }
    ?>
    ora secondo te esiste un metodo migliore esteticamente?cio'è mi riferisco nel caso l'utente non ha comilato i campi e poi i pulsanti radio mi servirebbero prima del nome
    esempio se viene selezionato il pulsante radio dott. prima del nome ci sia scritto dott. o viceversa.Chiaro?


  • ModSenior

    Ciao dontorus,

    non mi sembra che il codice da te postato riguardi l'area privata, pertanto sarebbe meglio discuterne in una discussione dedicata al tuo problema.


  • User

    Ok...giusto cercherò di trovare il posto giusto!:D


  • User

    Ciao, ti chiedo un ultima cosa,
    se volessi visualizzare nella pagina personale oltre al nome utente, la stringa "punti" che modifico personalmente nel mysql per ogni utente, e ovviamente ogni utente può visualizzare solo i suoi punti, ho provato dopo aver creato il campo "punti" nel db a inserire <?php echo $_SESSION['punti'];?> ma ovviamente non funziona.
    Sai dirmi il perchè?


  • User Attivo

    Ma non credete che sia il caso di studiarsi un po' di base di php prima di 'buttarsi' in queste cose?
    Il forum dovrebbe servire per le 'dritte' e la condivisione reciproca, non per spiegare l'ABC...
    Scusate l'intromissione e la franchezza...:rollo:


  • User Newbie

    Ho sicuramente lo stesso problema di Pozzz ... identico!
    Non avendo il tempo di studiare il php anche per il fatto che penso che sia l'ultima volta che lo userò mi affido a voi!

    Quello che serve è probabilmente mezza riga di codice che richiama i dati personali da una tabella precedentemente creata sul Mysql Aruba.

    esempio della tabella

    NOME MAIL USER PUNTI (voce creata da me)

    MARIO mario_at_libero.it marioilgrande 100 pt
    LUIGI luigi_at_virgilio.it lasola85 50 pt
    GIOVANNA giovanna_at_hotmail.it meretrice22 1100 pt

    Adesso... per ognuna di queste persone che accede...
    è semplice che il codice scaricato da internet faccia comparire il messaggio:

    Ciao Mario , o tu che ti sei registrato come marioilgrande di username e vanti la mail mario_at_libero.it ...

    ma il problema è aggiornarlo su fatto che ha 100 punti!

    Ho provato a rippare il codice della mail e dell'username per adattarlo al campo punti ma senza successo...

    La cosa più bella è che uno di voi mi dica qual'è il codice php per richiamare dati personali da un campo di una tabella mysql creato da me. (E se c'è qualche accorgimento particolare nella creazione del campo della tabella da mettere in pratica)

    Insomma... saranno probabilmente 2 righe di codice... una roba simile:

    <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!


  • ModSenior

    Qualche pagina dietro abbiamo trattato come passare tramite sessione o facendo una nuova query un campo della tabella, ovviamente le basi di php vanno studiate in quanto questo è un tutorial per mettere in pratica quanto appreso precedentemente a livello teorico.


  • 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).