Visualizzazione dei risultati da 1 a 6 su 6

Discussione: select login

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    19

    select login

    Ciao,

    Non riesco a vedere il problema

    su questo script,


    <?php
    $user=$_POST['user'];
    $password=$_POST['password'];

    echo "

    Ben tornato $user</P>";

    // <P align=center>Per adesso non ci sono file da consultare</P>

    echo "prima della connessione
    ";

    include 'connessione.php';


    // echo 'connesso al DB

    ';


    $query="SELECT user, password FROM xxxxx where user='$user' AND password='$password'";
    $resutl=mysql_query($query, $xxxx) or die("
    Invalid query: $query\n
    \n".mysql_error());
    $array=mysql_fetch_array($resutl);

    echo"dopo array";


    print ("user: $array['$user']");

    mysql_close($xxxx);

    ?>

    mi dovrebbe stampare l'user che dovrebbe trovare sulla mia tab, l'user lo valorizza
    in pratica il problemna dovvrebbe essere sulla print perchè se la commento
    riesco a vedere echo"dopo array";

    Grazie 1000!!!

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    19
    Modificando il codice (non fate caso alla schifezza del codice per adesso sto muovendo i primi passi)

    adesso il controllo riesce..ma mi sapete dire perchè la parte asteriscata non funziona?

    che valore assume $array[0] ??

    <?php
    $user=$_POST['user'];
    $password=$_POST['password'];



    include 'connessione.php';



    $query="SELECT USER, PASSWORD FROM utenti where USER='$user' AND PASSWORD='$password'";

    $result=mysql_query($query) or die("
    Invalid query: $query\n
    \n".mysql_error());
    $array=mysql_fetch_array($result);

    $utente=$array[0];
    $psw=$array[1];
    echo " $utente";
    /*
    /* echo "$array[0]"; if($array[0]==1){ echo "
    Ben tornato $user"; echo"


    <center><body text=red>Per adesso non ci sono file da consultare<center></body>"; } */

    */
    if(($utente==$user) and ($psw=$password)){

    echo "
    Ben tornato $utente";
    echo"


    <center><body text=red>Per adesso non ci sono file da consultare<center></body>";

    }
    else {
    echo "
    Per accedere devi registarti";


    }

    //echo "user: .$array[USER]" or die ("
    asseganzione errata ");
    //print ("user: $array['$user']");

    mysql_close($link);

    ?>

  3. #3
    La risposta te la sei dato da solo scrivendo il codice modificato!

    L'esecuzione della query restituisce una tabella composta da due colonne: USER e PASSWORD.

    Con la funzione

    codice:
    $array=mysql_fetch_array($result);
    in $array troverai la prima riga della tabella di cui sopra, che sarà appunto un array composto da due elementi:
    il primo

    codice:
    $utente=$array[0];
    che contiene il primo user trovato e

    codice:
    $psw=$array[1];
    che contiene la password dello user associato.

    Il test che esegui nella parte commentata
    codice:
    if($array[0]==1)
    non ha quindi senso.

    Saluti.

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    19
    OK, chiarissimo, però volevo accorciare il codice non usando le variabili $utente e $pwd
    ma con il controllo
    // if(($utente==$user) and ($psw=$password)){
    {if (($array[0]=='$user')and ($array[1]='$password'))
    non mi fa entrare, come se non li trovasse in TAB

    però l'output

    echo " $array[0]";
    echo " $array[1]";

    restituisce i valori giusti.

    Cosa sbaglio?

    Grazie 1000!!!

  5. #5
    Scusa se ti rispondo solo ora.

    Partendo da presupposto che se trovi una riga nella tabella non ha senso controllare nuovamente i campi, il test fallisce perchè hai aggiunto gli apici alle stringhe da controllare

    Assumiamo che $array[0] e $user contengano entrambe 'pippo' (apici esclusi), le due stringhe sono palesemente identiche ma se le confronti con il tuo codice

    Codice PHP:
    if ($array[0]=='$user'
    sostiuendo il valore nel controllo ottieni

    if ( pippo == 'pippo' )

    cosa assolutamente falsa.

    Togli gli apici e vedrai che funziona.

    Saluti.

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    19
    Certo hai ragione!!!

    cmq il tuo presupposto è ovviamente giustissimo, ma volevo giocare un po' con i le variabili restituite, per capire meglio il funzionamento.

    Grazie per il tuo aiuto


    Ciaooo

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.