Visualizzazione risultati 1 fino 3 di 3

Discussione: Errore: sessione non definita

  1. #1
    Guest

    Predefinito Errore: sessione non definita

    Esce un errore che dice rand_code non è definito, io non c'è l'ho come campo POST, ma è quello del codice Captcha

    Codice PHP:
    <?php
    session_start
    ();

    if (empty(
    $_SESSION['rand_code'])) {
    $str = "";
    $length = 0;
    $caratteri = "abcdefhjkmnprstuvxyz12345679"; //TIPI di caratteri che appaiono come immagine (31)
    for ($i = 0; $i < 4; $i++){ //Il 4 indica il numero di caratteri-immagine che appaiono
    $str .= $caratteri{rand(0,30)}; //Quanti TIPI di caratteri-immagine appaiono random ad ogni ciclo, 0+30=31
    }
    $_SESSION['rand_code'] = $str;
    }

    ...

    //Controlla che il codice Captcha inserito corrisponda a quello che appare nell'immagine
    if((isset($_POST['invia']) || !empty($_POST['invia']))) {
    if (
    $_SESSION['rand_code'] != strtolower(trim($_POST['validator']))) {
    $errore .= "&bull;&nbsp;&nbsp;Codice errato!<br /><br />";
    }
    else {
    $validator;
    }
    }
    Ultima modifica di dreadnaut : 11-02-2013 alle ore 15.02.39 Motivo: + indentazione

  2. #2
    L'avatar di dreadnaut
    dreadnaut non è connesso Super Moderatore
    Data registrazione
    22-02-2004
    Messaggi
    6,269

    Predefinito

    empty() controlla se una variabile è vuota, ma assume che la variabile esista. Forse volevi usare isset(), che verifica che la variabile esista e che sia piena? (magari con una negazione davanti, eh)

  3. #3
    Guest

    Predefinito

    Citazione Originalmente inviato da dreadnaut Visualizza messaggio
    empty() controlla se una variabile è vuota, ma assume che la variabile esista. Forse volevi usare isset(), che verifica che la variabile esista e che sia piena? (magari con una negazione davanti, eh)
    Dici di mettere così?

    Codice PHP:
    if (isset($_SESSION['rand_code'])) {
    EDIT

    ho messo così ma da ancora errore

    Codice PHP:
    if (!isset($_SESSION['rand_code'])){
    $str = "";
    $length = 0;
    $caratteri = "abcdefhjknprstuvxyz12345679"; //TIPI di caratteri che appaiono come immagine (27)
    for ($i = 0; $i < 4; $i++){ //Il 4 indica il numero di caratteri-immagine che appaiono
    $str .= $caratteri{rand(0,27)}; //Quanti TIPI di caratteri-immagine appaiono random ad ogni ciclo, 0+27=28
    }
    $_SESSION['rand_code'] = $str;
    }
    Ultima modifica di gruppoalveo : 11-02-2013 alle ore 21.50.23

Regole di scrittura

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