Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2011
    residenza
    bergamo
    Messaggi
    1,027

    prendere un valore da select

    ragazzi buonaserata a tutti ho un blocco mentale non so se è per l'orario e per le troppe ore o per la fuga di neuroni che ormai si rifiutano di ragionare ma sono bloccato completamente su una cosa logica..

    codice:
    <?php
    session_start();
    $col = '*******';
    $db = new PDO(**********');
    $email=$_POST['email'];
    $password=$_POST['password'];
    $sql=$db->prepare("SELECT * FROM utente WHERE email = :email AND password = :password");
    $sql->execute(array(':email'=>$email,':password'=>$password));
    if($sql->rowCount() > 0){
        header("Location:profilo.php");
    ipotizziamo di avere questa pagina, ora io vengo reindirizzato su profilo.php ok?
    ecco su profilo.php però devo riuscire a farmi passare i dati dell'utente che si è loggato e quindi avevo pensato di fare così la pagina profilo.php:

    collegarla al db e poi fare una select di tutta la tabella utente dove l'id corrispondeva all'id dell'utente che è stato passato in GET quindi l'header soprastante lo modificherei con Locationrofilo.php?id=ID giusto?

    ecco seguendo questa procedura ora mi sorge un dubbio, se io faccio così quell'ID lì da dove lo piglio? lo dovrei pigliare dalla select soprastante, ma nell'execute non ce lo metto l'id? e come lo scrivo? no perchè $password e $email sono due variabili dichiarate, ma id non lo dichiaro da nessuna parte..

    non so se mi sono spiegato bene

    spero che qualcuno riesca a darmi qualche consiglio

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503
    L'id lo devi prendere dal risultato della query, non devi passarlo alla query per l'esecuzione, la query va bene eseguirla specificando solo email e password, poi questa ti restituirà tutti i campi del record trovato (do per scontato che sia unico ovviamente).
    Come recuperi i dati presi dalle query select che fai altrove? Allo stesso modo potrai recuperare l'id in questo caso.

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2011
    residenza
    bergamo
    Messaggi
    1,027
    così?

    codice:
    $sql=$db->prepare("SELECT * FROM utente WHERE email = :email AND password = :password");
    $sql->execute(array(':email'=>$email,':password'=>$password));
    $res = $sql->fetchAll();
    if($sql->rowCount() > 0){
        header("Location:profilo.php?id=".$res['id']);
    }

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2011
    residenza
    bergamo
    Messaggi
    1,027
    em.. no così non mi passa nulla...

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2011
    residenza
    bergamo
    Messaggi
    1,027
    cel'ho fatta...
    il codice giusto è questo:

    codice:
    $sql=$db->prepare("SELECT id FROM utente WHERE email = :email AND password = :password");
    $sql->execute(array(':email'=>$email,':password'=>$password));
    $id=$sql->fetch();
    if($sql->rowCount() > 0){
        header("Location:profilo.php?id=".$id[0]);
    }
    else{
        ?>

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.