Visualizzazione risultati 1 fino 5 di 5

Discussione: Errore Variabile non definita

  1. #1
    Guest

    Predefinito Errore Variabile non definita

    Mi esce l'errore qui

    Notice: Undefined variable: errore in /membri/gruppoalveo/scrivimi2.php on line 64

    Codice PHP:
    ...

    //Campo obbligatorio
    if($messaggio == "") {
    $errore .= "Inserire il Messaggio";
    }
    //Campo obbligatorio
    if ($validator == "") {
    $errore .= "Inserire il Codice";
    }
    //Controlla che il codice Captcha inserito corrisponda a quello che appare nell'immagine
    if ($_SESSION['rand_code'] != strtolower(trim($_POST['validator']))) {
    $errore .= "Codice errato!"; // LINEA 64
    }
    if (
    $errore) {

    echo
    "ritenta";
    }
    else {
    echo
    "ok";
    }

    ...
    Ultima modifica di gruppoalveo : 19-01-2013 alle ore 16.05.09

  2. #2
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,762

    Predefinito

    Quale è la riga 64?

    Comunque, prova a sostituire:
    Codice PHP:
    if($messaggio == "") {
    $errore .= "Inserire il Messaggio";
    }
    con:
    Codice PHP:
    if($messaggio == "") {
    $errore = "Inserire il Messaggio";
    }
    Se $messaggio è la prima volta che lo utilizzi, è bene o inizializzare prima la variabile ad una stringa vuota, oppure inizializzare lì con il primo valore da concatenare.

    Ciao!

  3. #3
    Guest

    Predefinito

    Citazione Originalmente inviato da alemoppo Visualizza messaggio
    Quale è la riga 64?

    Comunque, prova a sostituire:
    Codice PHP:
    if($messaggio == "") {
    $errore .= "Inserire il Messaggio";
    }
    con:
    Codice PHP:
    if($messaggio == "") {
    $errore = "Inserire il Messaggio";
    }
    Se $messaggio è la prima volta che lo utilizzi, è bene o inizializzare prima la variabile ad una stringa vuota, oppure inizializzare lì con il primo valore da concatenare.

    Ciao!
    La riga è questa, ho tolto il punto e non da più errore, lo devo togliere anche agli altri?

    Codice PHP:
    $messaggio = stripslashes(htmlentities(trim($_POST['messaggio'])));
    $validator = stripslashes(htmlentities(trim($_POST['validator'])));

    ..

    $errore = "Codice errato!";

  4. #4
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,762

    Predefinito

    Citazione Originalmente inviato da gruppoalveo Visualizza messaggio
    lo devo togliere anche agli altri?
    Il punto serve per concatenare una stringa con nuovi caratteri.
    Se però inizialmente la variabile non esiste, con cosa concatena? (con nulla, e da errore).
    Se invece $messaggio esiste, anche se è vuota, concatena una stringa vuota con un'altra. Quindi funziona.

    Nel tuo caso, prima ho dato una risposta troppo veloce. Io farei:

    Codice PHP:
    ...
    $errore = ''; //dichiaro la variabile e la inizializzo vuota
    //Campo obbligatorio
    if($messaggio == "") {
    $errore .= "Inserire il Messaggio";
    }
    //Campo obbligatorio
    if ($validator == "") {
    $errore .= "Inserire il Codice";
    }
    //Controlla che il codice Captcha inserito corrisponda a quello che appare nell'immagine
    if ($_SESSION['rand_code'] != strtolower(trim($_POST['validator']))) {
    $errore .= "Codice errato!"; // LINEA 64
    }
    if (isset(
    $errore[1])) { //se c'é almeno un carattere dentro $errore

    echo "ritenta";
    }
    else {
    echo
    "ok";
    }

    ...
    EDIT:

    invece di if($variabile == ""), usa empty()

    Ciao!
    Ultima modifica di alemoppo : 19-01-2013 alle ore 16.25.28

  5. #5
    Guest

    Predefinito

    Citazione Originalmente inviato da alemoppo Visualizza messaggio
    Il punto serve per concatenare una stringa con nuovi caratteri.
    Se però inizialmente la variabile non esiste, con cosa concatena? (con nulla, e da errore).
    Se invece $messaggio esiste, anche se è vuota, concatena una stringa vuota con un'altra. Quindi funziona.

    Nel tuo caso, prima ho dato una risposta troppo veloce. Io farei:

    Codice PHP:
    ...
    $errore = ''; //dichiaro la variabile e la inizializzo vuota
    //Campo obbligatorio
    if($messaggio == "") {
    $errore .= "Inserire il Messaggio";
    }
    //Campo obbligatorio
    if ($validator == "") {
    $errore .= "Inserire il Codice";
    }
    //Controlla che il codice Captcha inserito corrisponda a quello che appare nell'immagine
    if ($_SESSION['rand_code'] != strtolower(trim($_POST['validator']))) {
    $errore .= "Codice errato!"; // LINEA 64
    }
    if (isset(
    $errore[1])) { //se c'é almeno un carattere dentro $errore

    echo "ritenta";
    }
    else {
    echo
    "ok";
    }

    ...
    EDIT:

    invece di if($variabile == ""), usa empty()

    Ciao!
    Ho dichiarato la variabile e ho rimesso il punto, non da più errore, perciò penso sia risolto.

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •