Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it L'avatar di icex
    Registrato dal
    Aug 2012
    Messaggi
    11

    Dopo invio dati,restituita pagina di partenza

    Salve ragazzi. Sono nuovo del forum ed ho bisogno del vostro aiuto. Vorrei chiedervi come mai con il seguente codice PHP mi viene restituita sempre la pagina da cui invio i dati:

    Codice PHP:
    ?php
    if (isset($_POST['id_box'])&& ($_POST['pass_box'])) {  
        
    $id trim($_POST['id_box']);
        
    $pass trim($_POST['pass_box']);
        
        if(
    get_magic_quotes_gpc()) {
            
    $id striplashes ($id);
            
    $pass striplashes ($pass);}
    $id mysql_real_escape_string($id);
    $pass mysql_real_escape_string(md5($pass));
    $query "SELECT user_id, logged, active FROM utenti WHERE user_name= '$id' AND password = 'md5($pass)'";
    $result mysql_query($query,$connx_db) or die(mysql_error());
    if (!
    $result) {
        die(
    "Errore nella '$query': " .mysql_error ());
    }
    while (
    $riga mysql_fetch_array($resultMYSQL_NUM)) {
    echo 
    "L'user_id selezionato è: '.$riga[0].'";
    }
    }
    ?> 
    Penso che il codice parli da solo. Il mio intento è semplicemente visualizzare l'ID di un determinato utente il cui username e password sono inseriti in appositi campi e poi inviati tramite il button. Non dovrebbe esserci il bisogno di dirlo ma lo preciso ugualmente: ovviamente la tabella "utenti" ed i relativi campi esistono già.

    Il problema sta nel fatto che inviando i dati, invece di comparirmi il risultato dell' "echo", mi vien fuori la pagina di invio dei dati con i campi di testo resettati.
    Spero possiate aiutarmi perchè ho provato di tutto ma non ne vengo fuori

  2. #2
    Se non posti anche l'HTML è impossibile risponderti.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    Utente di HTML.it L'avatar di icex
    Registrato dal
    Aug 2012
    Messaggi
    11
    Originariamente inviato da satifal
    Se non posti anche l'HTML è impossibile risponderti.
    Certo eccolo:
    codice:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    <title>Documento senza titolo</title> </head> <body>
    Dopo "body" il codice sopra riportato e poi:

    codice:
     <form id="form1" name="form1" method="post" action="">
      
    
    User_name :  
        <input type="text" name="id_box" id="id_box" />
      </p>
      
    
    Password : 
        <input type="password" name="pass_box" id="pass_box" />
      </p>
      
    
    
        <input type="submit" name="button" id="button" value="Invia" />
      </p>
    </form>
    </body>
    </html>
    Comunque vorrei specificare che nella mia risposta precedente ho saltato il "<" che apre il PHP, ma in realtà nel codice C'E'. E c'è anche il require della connessione al db.

  4. #4
    get_magic_quotes_gpc() potrebbe restituire false per cui il codice non entra nell'if. Prova a controllare il valore di magic_quotes_gpc nel php.ini.
    In ogni caso considera che magic_quotes è deprecato nel php 5.3 e verrà eliminato dalla versione 5.4 di php.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  5. #5
    Utente di HTML.it L'avatar di icex
    Registrato dal
    Aug 2012
    Messaggi
    11
    Originariamente inviato da satifal
    get_magic_quotes_gpc() potrebbe restituire false per cui il codice non entra nell'if. Prova a controllare il valore di magic_quotes_gpc nel php.ini.
    In ogni caso considera che magic_quotes è deprecato nel php 5.3 e verrà eliminato dalla versione 5.4 di php.
    Mmmm... non penso sia quello il problema. Ho fatto come hai detto tu: sono andato in php.ini ed il valore di defualt di default era impostato su ON. Così ho tolto il commento eliminando il ";" ed ho provato: non funzionava. Ho riprovato impostando il valore su OFF ma ancora esito negativo. Ho persino provato a togliere l'istruzione dal codice sopra postato ma niente. Quindi penso proprio che ci sia altro di fastidioso.
    Comunque grazie per l'interesse Satifal

  6. #6
    La query non restituisce nessun risultato!
    Applichi 2 volte la funzione md5():

    Codice PHP:
    ...
    $pass mysql_real_escape_string(md5($pass));
    $query "SELECT user_id, logged, active FROM utenti WHERE user_name= '$id' AND password = 'md5($pass)'"
    ... 
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    1,453
    Originariamente inviato da satifal
    La query non restituisce nessun risultato!
    Applichi 2 volte la funzione md5():

    Codice PHP:
    ...
    $pass mysql_real_escape_string(md5($pass));
    $query "SELECT user_id, logged, active FROM utenti WHERE user_name= '$id' AND password = 'md5($pass)'"
    ... 
    Inoltre aggiungo che l'escape mysql su una stringa alfanumerica generata dall'md5 è totalmente inutile

  8. #8
    Utente di HTML.it L'avatar di icex
    Registrato dal
    Aug 2012
    Messaggi
    11
    Grazie ragazzi per i consigli ma comunque voglio informarvi che non va Non riesco proprio a capire il perchè. Eppure il codice è molto semplice e piccolo, ma l'errore non vuole venir fuori

  9. #9
    Scusa, ma ti basterebbe mettere un po' di echo per vedere che giro fa e cosa contengono le variabili e la query. Non ci vedo nulla di talmente bloccante.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  10. #10
    Utente di HTML.it L'avatar di icex
    Registrato dal
    Aug 2012
    Messaggi
    11
    Originariamente inviato da satifal
    Scusa, ma ti basterebbe mettere un po' di echo per vedere che giro fa e cosa contengono le variabili e la query. Non ci vedo nulla di talmente bloccante.
    Ho seguito il tuo consiglio e pare che abbia risolto. Penso che l'errore risiedesse nell'istruzione:

    Codice PHP:
    if (!$result) {
        die(
    "Errore nella '$query': " .mysql_error ());

    L'ho sostituita con:

    Codice PHP:
    if(mysql_num_rows($result) < 1) exit("Dati inseriti non validi."); 
    ed in effetti adesso funziona. Mi viene restituito correttamente il risultato del seguente echo:

    Codice PHP:
    echo "L'user_id selezionato è: '$riga[0]'"
    ed anche i risultati degli altri con active e logged. L'unico problema è che le textbox con il relativo pulsante di invio dati del modulo non scompaiono quando figurano i vari echo. C'è qualche istruzioncina che ho saltato?

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.