Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. michellemabelle
    3. Post
    M

    michellemabelle

    @michellemabelle

    • Profilo
    • Chi segue 0
    • Da chi è seguito 0
    • Discussioni 2
    • Post 9
    • Migliore 0
    • Gruppi 0
    Iscrizione Ultimo Accesso
    Località Busto Arsizio Età 38
    0
    Reputazione
    9
    Post
    0
    Visite al profilo
    0
    Da chi è seguito
    0
    Chi segue
    User Newbie

    Post creati da michellemabelle

    • RE: sessioni, cookie & co.

      "L'applicativo deve riconoscere l'utente quando effettua nuove connessioni dalla stessa macchina"

      Non mi interessa sapere in tutte le pagine se questo utente ha il cookie o meno. Io pensavo di settare il cookie nella pagina di log, e poi mettere il controllo nell'header (che compare comunque in tutte le pagine).

      Secondo te è una buona idea?
      E poi, domanda cretina, se metto il setcookie nel log, me lo risetta anche se ricompare lo stesso utente, giusto? Quindi il controllo dovrò farlo innanzitutto nella pagina di log?

      Una cosa del tipo:
      [PHP]
      <?php
      if (!isset($_COOKIE['username'])){
      setcookie('username',$_SESSION['username'], time()+3600);
      }
      ?>

      [/PHP]

      postato in Coding
      M
      michellemabelle
    • RE: sessioni, cookie &amp; co.

      Ciao Thedarkita, se io metto il setcookie nel file di log, anche il controllo sulla variabile $_COOKIE dovrò farla lì?

      postato in Coding
      M
      michellemabelle
    • RE: sessioni, cookie &amp; co.

      Allora:
      per riconoscere se l'utente è loggato (e quindi può accedere a determinate pagine rispetto a chi non è loggato) e/o è amministratore (e quindi ha accesso a ulteriori pagine) sto gestendo tutto tramite sessioni.

      Per quanto riguarda il riconoscimento, immagino si riferisca al fatto che se un utente ritorna nel sito dopo una prima visita sempre dalla stessa macchina, allora dovrà uscire qualcosa come "Bentornato" invece di "Benvenuto".

      Tu parli di utenti diversi che si connettono dalla stessa macchina... io lavoro in locale quindi tutti i miei attuali 4 utenti si connettono sempre dallo stesso pc. Ma immagino voglia dire che io mi dovrei mettere nei panni di quell'utente che virtualmente sta usando il mio pc per navigare nel mio sito, quindi penso alla prima che hai detto.

      Se la richiesta è riferita al singolo account dell'utente, ossia, riconoscere in ogni pagina qual è l'utente loggato dopo che si è loggato, allora dovresti creare il cookie subito dopo il suo login e quindi metterlo nella pagina del login.

      Ma il mio problema è che non ho idea di come si gestiscano i cookie! Nel login avevo inserito il codice setcookie, ma non so come fare il controllo:x

      [PHP]
      <?php
      /*setcookie("user",$_POST['username'],time() + 604800 );
      #HO SETTATO IL COOKIE CON SCADENZA FISSATA TRA UNA SETTIMANA
      #se non è settata la variabile, elimino il cookie
      if (!isset($_POST['username'])){
      setcookie("user");
      }

      */
      ?>
      <html>
      <title>Index</title>
      <link href='stili.css' rel='stylesheet' type='text/css' />
      <body>
      <?php include('img.php'); ?>
      <table>
      <tr>
      <td valign='top'><?php include('header_host.php'); ?></td>
      <td>
      <?php
      #FILE PER EFFETTUARE IL LOG IN. SETTA USERNAME E PASSWORD COME VARIABILI DI SESSIONE
      include('db.php');

      #RECUPERO LOGIN E PASSWORD DALLA FORM E
      #SE L'UTENTE HA CLICCATO SENZA AVER INSERITO ALMENO UNO DEI CAMPI
      if (empty($_POST['username']) || empty($_POST['password'])){
      echo "<table width='300' valign='center'><tr><td class='testo'>Non hai inserito il nome utente e/o la password</td></tr><br>";
      echo "<tr><td class='testo'><form method='POST' action='index.php'><input type='submit' value='Indietro' class='testo'></form></td></tr></table>";
      exit;
      }else{
      #SELEZIONO DAL DB TUTTI I DATI DELL'UTENTE
      $query_utente = pg_query($db,"SELECT autorizzato FROM utente WHERE username='".$_POST['username']."' AND pw='".$_POST['password']."'");
      $record_utente = pg_fetch_row($query_utente);
      if(!$record_utente){
      echo "<table width='300' valign='center'><tr><td class='testo'>Nome utente e/o password errati</td></tr><br>";
      echo "<tr><td class='testo'><form method='POST' action='index.php'><input type='submit' value='Indietro' class='testo'></form></td></tr></table>";
      }else{
      if ($record_utente[0] == 'f'){
      echo "<table width='300' valign='center'><tr><td class='testo'>Non puoi ancora navigare attivamente nel sito.<br>Attendi che l'amministratore ti dia l'autorizzazione.<br>Nel frattempo puoi <a href='home.php'>entrare come ospite</a>.</td></tr></table>";
      }else{
      #SALVO I DATI IN VARIABILI DI SESSIONE
      session_start();
      $_SESSION['username'] = $_POST['username'];
      $_SESSION['password'] = $_POST['password'];
      header('Location: home.php');
      }
      }
      }

      ?>
      </td>
      </tr>
      </table>
      </body>
      </html>
      [/PHP]

      postato in Coding
      M
      michellemabelle
    • RE: sessioni, cookie &amp; co.

      Sì lo so, infatti tutti i dati relativi a immobili, annunci, offerte ecc li sto gestendo con Postgres.
      Io parlo dell'utente che si logga

      postato in Coding
      M
      michellemabelle
    • sessioni, cookie &amp; co.

      Ciao a tutti!
      Allora sto creando un sito (fasullo) di annunci immobiliari.
      Ho gestito tutto tramite sessioni e funziona tutto alla perfezione (almeno la parte riguardante le sessioni :)).

      Ora leggo nel progetto, che "L'applicativo deve riconoscere l'utente quando effettua nuove connessioni dalla stessa macchina".

      Allora ho pensato: "probabilmente dovrò usare anche i cookie"
      A questo punto potete dirmi se mi sto sbagliando.

      Se il mio ragionamento è corretto:
      -devo creare un cookie così setcookie(NOME, VALUE, SCADENZA)

      Domande:

      1. Dove creo il cookie? Intendo... in che pagina nel sito? Quella del log in? La home?
      2. Se in quella pagina c'è "session_start()", il setcookie lo metto prima o dopo?
      3. Se torno sulla stessa pagina nella stessa sessione, mi crea un nuovo cookie?
      4. Se session_start va messo prima di qualunque output, è possibile comunque scriverlo dopo un commento?
        es:
        [php]
        <?php
        #papapapapapapapa
        session_start();

      ecc ecc
      ?>
      [/php]5) Quanto mi consigliate di far durare un cookie? Nel mio sito gli utenti creano annunci di vendita di immobili, e scelgono loro la validità del proprio annuncio, quindi credo che la scadenza debba essere fissata almeno dopo qualche mese. Che dite?

      Vi ringrazio per la pazienza e per le delucidazioni!!!

      postato in Coding
      M
      michellemabelle
    • RE: Problema con una query di inserimento

      Ciao,
      ho diviso IMMOBILE da RECAPITO perché se avessi fatto una sola tabella mi sarei trovata con 14 attributi

      postato in Coding
      M
      michellemabelle
    • RE: Problema con una query di inserimento

      PS: io uso Postgres, non per scelta mia, ma del prof.

      Probabilmente c'è una funziona analoga per Postgres, ma se nello stesso momento un altro utente dovesse inserire un immobile? Rischierei di avere l'immobile con un indirizzo errato!

      Ieri sera mi è capitato di leggere tra vari forum di questa funzione:

      
      create table test_table(        id serial primary key not null);insert into test_table default values;select currval ('test_table_id_seq'::regclass);
      
      

      Potrebbe essere utile?

      postato in Coding
      M
      michellemabelle
    • RE: Problema con una query di inserimento

      Ho provato entrambe le query e quando stampo il risultato mi esce: resource id#11
      Il che mi pare voglia dire che sto cercando di stampare o un array o un oggetto.
      Come faccio a fargli stampare esattamente quello che cerco?
      Dal momento che id_i è identificatore univoco di entrambe le tabelle non dovrebbe uscirmi un array!

      Scusate, sono stata un po' prolissa!

      postato in Coding
      M
      michellemabelle
    • Problema con una query di inserimento

      Ciao!
      Vi spiego brevemente il mio problema.
      Devo gestire un sito di Annunci Immobiliari.

      L'utente deve inserire l'immobile.

      Io ho creato la tabella IMMOBILE con attributi:

      • id_i [chiave primaria, autoincrementale]
      • tipo [appartamento, villa, ecc]
      • uso [commerciale o privato]
      • mq
      • posto auto [booleano]
      • descrizione
      • numero di locali [solo in caso di appartamento]

      e la tabella RECAPITO per l'indirizzo

      • id_i [chiave primaria, referenzia id_i di immobile]
      • via
      • numero civico
      • piano [solo in caso di appartamento]

      Lasciando perdere la scelta degli attributi (è un progetto universitario) il mio problema è:
      ho inizialmente creato la mia query per l'inserimento dei dati in IMMOBILE e fin qui tutto bene.
      Come faccio ad inserire i miei dati in RECAPITO dal momento che non conosco id_i?

      Avevo pensato a 2 opzioni di query con select:
      (1) SELECT id_i FROM immobile WHERE tipo= "'.$tipo.'" AND mq=" ....blablabla
      --> ma ci potrebbe essere una rara eventualità di più immobili con lo stesso uso, tipo, mq, posto auto, descrizione e numero di locali. Quindi non ho un unico risultato.

      (2) SELECT MAX(id_i) FROM immobile
      --> partendo dal presupposto che id_i è autoincrementale e che quindi l'ultimo immobile inserito abbia l'id_i maggiore, mi sembrava una buona idea. Ma cosa succede se due utenti aggiungono un immobile contemporaneamente? Non si rischia di inserire il recapito di un immobile al posto di un altro?

      AVETE DELLE IDEE MIGLIORI DELLA MIA? Dovrei cambiare gli identificatori delle tabelle???
      Grazie!

      PS: io uso Postgres, non per scelta mia, ma del prof.
      PPS: id_i è un serial. Ma mi hanno detto che sarebbe meglio dargli valore integer e poi applicarvi una sequenza. C'è qualche differenza?

      postato in Coding
      M
      michellemabelle