Visualizzazione dei risultati da 1 a 5 su 5

Discussione: verificare dati sul db

  1. #1

    verificare dati sul db

    Aaaaaaarghhhh....
    Sto diventando scemo....
    Allora ho creato un modulo per il settaggio di nome utente e password su db mysql!
    Funziona perfettamente.
    Adesso, il passaggio successivo prevede che realizzi una pagina con due campi di testo ( una per user e l'altra per password) e il classico tasto invia!!
    L'ho fatto e punta tutto su una pagina php che controlla l'inserimento dei dati!!
    Non riesco a fare lo script che va a leggere sul db e, verificando che user e password inseriti sono presenti nel db, mi reinderizza ad una pagina nuova per utenti registrati!!
    Qualcuno sa indicarmi lo script che mette a confronto i dati inviati con quelli presenti in una tabella di mysql????
    Grazie

  2. #2
    Utente di HTML.it L'avatar di alegia76
    Registrato dal
    Mar 2003
    Messaggi
    1,179
    Scusa, io farei

    SELECT * FROM tabella_utenti WHERE USER = 'user' AND PASSWORD = 'password'

    if (query)
    apri pagina
    else
    print ("ERRORE");
    Sei l'eventualità di un'anomalia che nonostante i miei più onesti sforzi non sono stato in grado di eliminare da quella che altrimenti sarebbe un'armonia di precisione matematica..

  3. #3

    ok

    Ho risolto in questo modo....sono perplesso, perché stavo andando per tentativi e verificavo passo passo ogni pezzo di script e, dopo aver inserito la parte di codice per l'autenticazione dell'username, mi sono accorto che automaticamente prendeva in considerazione anche la relativa password!! Il codice è il seguente:
    Codice PHP:
    <?php
    $connect 
    mysql_connect("$dhost""$dbuser""$dbpasswd")
    or die (
    "Connessione al server fallita!");
    $db mysql_select_db($dbname$connect)
    or die (
    "Impossibile selezionare il DataBase!");
    $query "SELECT * FROM utenti WHERE user = '$gouser' AND pass ='$gopass'";

    $var_ver mysql_query($query) or die (mysql_error());
    if (
    mysql_num_rows($var_ver) != 0)
    {
    while (
    $row mysql_fetch_array($var_ver))
    {
      if (
    $row['user'] == $gouser// questa la riga che mi lascia perplesso
      
    {
    header("Location: benvenuto.htm");
    exit;
     } 
       } 
         }
     else {
     echo 
    "Assicurati di aver scritto correttamente i dati";      
    }
    ?>
    Sono solo poche settimane che traffico con php e ancora non capisco bene alcuni passaggi. Io ho verificato solo l'user ( $row['user'] == $gouser), allora perché lo script verifica anche la password? Così come avevo scritto credevo che facesse l'autenticazione solo dell'user, ma se io scrivo user esatto e password sbagliata lo script mi da il messaggio d'errore "Assicurati di aver scritto correttamente i dati". Insomma, funziona tutto bene, ma non ho capito il motivo!!!!!!

  4. #4

    AHHHHHHHHHHH

    Warning: Cannot modify header information - headers already sent by (output started at C:\Programmi\Apache Group\Apache2\htdocs\verifica_utente.php:1) in C:\Programmi\Apache Group\Apache2\htdocs\verifica_utente.php on line 28

    Qualcuno sa dirmi perché di punto in bianco invece di andare sulla pagina indicata dalla linea 28, e prima ci andava, adesso mi da questo errore????? Io non ho toccato nulla!!!! Sulla linea 29 ho inserito un exit;

    header("Location: benvenuto.htm"); // linea 28

  5. #5

    AhAhAh

    Avevo aggiunto il titolo alla pagina.....Ecco perché mi dava quell'errore!!!
    I tag html prima di header location non lo facevano funzionare!!!!!

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 © 2024 vBulletin Solutions, Inc. All rights reserved.