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. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. Convalida Form con PHP
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • C
      codencode User Attivo • ultima modifica di

      Ho provato il tuo codice, rimuovendo ovviamente[php] require ('config.php');[/php] e appena dopo [php]echo "OK";[/php] ho messo [php]exit();[/php] così da evitare il redirect.
      Quindi l'if è corretto, come già ti avevo detto, non è che c'è qualche altro errore?
      Prova a fare come ho fato io, aggiungi l'exit, quindi:
      [php]if (isset($_POST ['login'])) {
      echo "OK";
      exit();[/php]

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • T
        talkoman User Attivo • ultima modifica di

        Ho provando mettendo un exit() quasi in ogni riga per vedere dove si bloccava.
        A quanto pare non gli piace l'header in questa porzione di codice:

        [PHP]if(mysql_num_rows($query) == 1){
        // prelevo l'id dal database
        $login = mysql_fetch_array($query);
        // Creo una variabile di sessione
        $_SESSION['loginGesfin'] = $login['idUtente'];
        // reindirizzo l'utente
        header('Location: index.php');
        exit;
        }
        // se non esiste da l'errore
        else{
        echo "<script>alert('Nome Utente e/o Password errati');</script>";
        session_start();
        session_destroy();
        header('Location: login.php');
        exit;
        }[/PHP]

        Hai suggerimenti? E' la prima volta che mi da questo problema. Sempre usato lo stesso script ovunque!

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • C
          codencode User Attivo • ultima modifica di

          Quindi entra nell'IF. Il problema degli header è che devono essere usati prima di una qualsiasi istruzione di output, basta una andata a capo e ti da problemi.

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • T
            talkoman User Attivo • ultima modifica di

            Quindi? Che mi consigli?

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • C
              codencode User Attivo • ultima modifica di

              Di verificare se esegui output prima dell'Header.
              Se è così devi modificare il codice affinchè non ci siano autput prima dell'header.

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • T
                talkoman User Attivo • ultima modifica di

                No, nessun output, lo vedi anche tu, hai il codice intero della pagina...

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • C
                  codencode User Attivo • ultima modifica di

                  Ma nel codic ec'è ancora [php]echo "OK";[/php]
                  prova a toglierlo.

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • T
                    talkoman User Attivo • ultima modifica di

                    Nel mio codice l'ho già tolto...

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • C
                      codencode User Attivo • ultima modifica di

                      Io ho provato il codice in locale e funziona nel senso che viene eseguito il redirect. Non so proprio cosa pensare. Qual'è l'errore che ti restituisce?

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • T
                        talkoman User Attivo • ultima modifica di

                        Nulla, semplice refresh della pagina...ho verificato la query e viene eseguita tranquillamente con un risultato valido. Ho messo la @ davanti alle istruzioni mysql in modo da evitare output involontari di errori ma nulla....se metto l'exit prima dell'istruzione header funziona tutto....altrimenti ricarica la pagina...!

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • C
                          codencode User Attivo • ultima modifica di

                          E tu cosa vuoi che faccia?
                          [PHP]header('Location: index.php'); [/PHP]

                          esegue il redirect alla index.

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • T
                            talkoman User Attivo • ultima modifica di

                            Ma lui mi redirect su login.php, sia che entra nel caso vero, che nel falso...

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • C
                              codencode User Attivo • ultima modifica di

                              Ma sei sicuro che allora non va nell'else? perche dovrebbe andare al login se l'istruzione di redirect è verso la index?

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • T
                                talkoman User Attivo • ultima modifica di

                                Perché se no dovrebbe eseguire questo
                                [PHP]echo "<script>alert('Nome Utente e/o Password errati');</script>";[/PHP]

                                Cosa che fa se metto l'exit() prima dell'header

                                0 Miglior Risposta Ringrazia Cita Rispondi

                                  1 Risposta Ultima Risposta
                                • C
                                  codencode User Attivo • ultima modifica di

                                  ma quale header? questo?
                                  [PHP] header('Location: login.php');[/PHP]

                                  0 Miglior Risposta Ringrazia Cita Rispondi

                                    1 Risposta Ultima Risposta
                                  • T
                                    talkoman User Attivo • ultima modifica di

                                    Si

                                    0 Miglior Risposta Ringrazia Cita Rispondi

                                      1 Risposta Ultima Risposta
                                    • C
                                      codencode User Attivo • ultima modifica di

                                      L'alert non lo vedi perchè viene eseguito il redirect.

                                      0 Miglior Risposta Ringrazia Cita Rispondi

                                        1 Risposta Ultima Risposta
                                      • W
                                        wooply User • ultima modifica di

                                        Talkoman,
                                        forse la mia domanda è stupida, ma viene interpretato il php?
                                        cioè sei fai semplicemente un

                                        echo "pippo";

                                        senza if te lo fa?
                                        in vaso prima di tutto metti

                                        ini_set("display_errors",1);

                                        Magari hai qualche errore che non vedi.

                                        Ciao

                                        0 Miglior Risposta Ringrazia Cita Rispondi

                                          1 Risposta Ultima Risposta
                                        Caricamento altri post
                                        Rispondi
                                        • Topic risposta
                                        Effettua l'accesso per rispondere
                                        • Da Vecchi a Nuovi
                                        • Da Nuovi a Vecchi
                                        • Più Voti