Visualizzazione risultati 1 fino 6 di 6

Discussione: Problema istruzione continue

  1. #1
    Data registrazione
    23-01-2013
    Messaggi
    22

    Predefinito Problema istruzione continue

    Salve popolo di altervista
    ho un problema con il seguente codice
    Codice PHP:
    <?php
    $destinatario
    ="marco.chianese93@gmail.com";
    $oggetto='richiesta informazioni: '.$_POST["area_interesse"];
    $messaggio='Il cliente ' .$nome .' ' .$cognome .' è interessato ad una consulenza riguardo ' .$area_interesse .'Il cliente può essere rintracciato grazie ai seguenti recapiti: ' .$mail .',' .$telefono;
    $header="From:marco.chianese93@gmail.com";




    $area_interesse=$_POST["area_interesse"];
    $privacy=$_POST["privacy"];

    if (isset(
    $_POST["submit"]))
    {

    if (
    is_numeric($nome) or empty($nome))
    {
    $errore[1]="Devi inserire correttamente il nome </br>";
    continue;

    }
    else
    $nome=$_POST["nome"];

    if (
    is_numeric($cognome) or empty($cognome))
    {
    $errore[2]="Devi inserire correttamente il cognome </br>";
    continue;

    }
    else
    $cognome=$_POST["cognome"];

    if (!
    is_numeric($telefono))
    {
    $errore[3]="Devi inserire un numero di telefono </br>";
    continue;
    }
    else
    $telefono=$_POST["tel"];

    if (
    strpos($mail,"@")==0)

    $errore[4]="Devi inserire un indirizzo mail valido </br>";
    continue;


    switch (
    $area_interesse)
    {
    case
    "Regime dei minimi":
    case
    "Cessione di quote S.r.l":
    case
    "Ricorso on-line":
    case
    "S.r.l semplificata":
    $mail=$_POST["mail"];
    break;
    default:
    print (
    "Devi inserire un'area d'interesse");
    break;

    }

    if (
    $privacy=="no")
    print(
    "Devi riempire tutti i campi obbligatori");
    continue;
    }
    else
    mail($destinatario,$oggetto,$messaggio,$header)
    ?>
    all esecuzione di suddetto codice mi si presenta un errore:
    Fatal error: Cannot break/continue 1 level in /membri/commercialistaonline/html/Contatti.php on line 110

    Spero riusciate da aiutarmi
    Ultima modifica di commercialistaonline : 24-03-2013 alle ore 13.18.14

  2. #2
    karl94 non è connesso Staff AV
    Data registrazione
    03-10-2005
    Messaggi
    17,744

    Predefinito

    L'istruzione continue non ha alcun senso al di fuori di un ciclo, spiega cosa volevi fare. Inoltre, cerca di indentare il codice meglio, così è difficile da leggere.
    Ultima modifica di karl94 : 24-03-2013 alle ore 14.03.26

  3. #3
    Data registrazione
    23-01-2013
    Messaggi
    22

    Predefinito

    ok cerchero di ordinare un po' il codice in futuro
    l'intenzione era di creare una sorta di "controllo" dei dati immessi nei campi di testo per l'invio della mail (servirebbe a questo quell accozzagli di codice :) ) e l'istruzione continue doveva fermare tutto in caso di errore senza pero' tagliare il layout della pagina (come avviene con "die" ed exit" )....il tutto da fare entrare in una sola pagina

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

    Predefinito

    Continue non fa quello che dici.

    Un modo (ce ne sono tanti) per far quello che dici, è:

    Codice PHP:
    $errore = false;
    if(!
    controllo1)
    $errore = true;
    else if(!
    controllo2)
    $errore = true;
    else...

    if(!
    $errore)
    inviamail();
    Così, inviamail() viene invocata soltanto se $errore rimane false... ovvero se passa tutti i controlli.

    Ciao!

  5. #5
    karl94 non è connesso Staff AV
    Data registrazione
    03-10-2005
    Messaggi
    17,744

    Predefinito

    Oppure, ancora più semplicemente la chiamata alla funzione la inserisci solamente nell'else, che verrà eseguito solo se nessuna delle precedenti condizioni precedenti è vera.

  6. #6
    Data registrazione
    23-01-2013
    Messaggi
    22

    Predefinito

    Si grazie molte credo che procedero' cosi' anche se conto di renderla leggermente piu' "user friendly" e magari richiamarlo tramite un istruzione include o require cosi' posso scrivere codice piu pulito e complesso

Regole di scrittura

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