Visualizzazione dei risultati da 1 a 3 su 3

Discussione: aiuto finestre "alert"

  1. #1

    aiuto finestre "alert"

    Salve a tutti...premetto che sono un novizio

    Questo è un codice php collegato al form email del mio sito.
    Per i messaggi d'errore da visualizzare in caso di errata compilazione dei campi ho inserito delle finestre "alert"...il tutto funziona benissimo.
    Ma c'è un piccolo problema: quando l'errore è più di uno naturalmente spuntano più finestre di seguito.
    Vorrei fare in modo da far spuntare tutto in un'unica finestra...per qualunque combinazione di errori, ma non ho idea di come si faccia




    Codice PHP:
                                                                                             <?php
    if(isset($_POST['email'])) {
         
        
    // EDIT THE 2 LINES BELOW AS REQUIRED
        
    $email_to "admin@xxxx.com";
        
    $email_subject "by Contact Us";
         
         
        function 
    died($error) {
            
    // your error code can go here
            
    echo "<script type=\"text/javascript\">alert(\"We are very sorry, but there were error(s) found with the form you submitted.\");</script> ";
            echo 
    "<script type=\"text/javascript\">alert(\"These errors appear below.

    \");</script> "
    ;
            echo 
    $error."<script type=\"text/javascript\">alert(\"\");</script> ";
            echo 
    "<script type=\"text/javascript\">alert(\"Please go back and fix these errors.

    \");</script> "
    ;
            die();
        }
         
        
    // validation expected data exists
        
    if(!isset($_POST['first_name']) ||
            !isset(
    $_POST['last_name']) ||
            !isset(
    $_POST['email']) ||
            !isset(
    $_POST['telephone']) ||
            !isset(
    $_POST['comments']) ||
            !isset(
    $_POST['article'])) {
            
    died"<script type=\"text/javascript\">alert(\"We are sorry, but there appears to be a problem with the form you submitted.\");</script> ");       
        }
         
        
    $first_name $_POST['first_name']; // required
        
    $last_name $_POST['last_name']; // required
        
    $email_from $_POST['email']; // required
        
    $telephone $_POST['telephone']; // not required
        
    $comments $_POST['comments']; // required
        
    $article $_POST['article']; // not required
         
        
    $error_message "";
        
    $email_exp '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
      if(!
    preg_match($email_exp,$email_from)) {
        
    $error_message .= "<script type=\"text/javascript\">alert(\"The Email Address you entered does not appear to be valid.
    \");</script> "
    ;
      }
        
    $string_exp "/^[A-Za-z .'-]+$/";
      if(!
    preg_match($string_exp,$first_name)) {
        
    $error_message .= "<script type=\"text/javascript\">alert(\"The First Name you entered does not appear to be valid.
    \");</script> "
    ;
      }
      if(!
    preg_match($string_exp,$last_name)) {
        
    $error_message .= "<script type=\"text/javascript\">alert(\"The Last Name you entered does not appear to be valid.
    \");</script> "
    ;
      }
      if(
    strlen($comments) <= 30) {
        
    $error_message .= "<script type=\"text/javascript\">alert(\"The Comments you entered do not appear to be valid: 30 characters at least!.
    \");</script> "
    ;
      }
      if(
    strlen($error_message) > 0) {
        
    died($error_message);
      }
        
    $email_message "<script type=\"text/javascript\">alert(\"Form details below.\n\n\");</script> ";
         
        function 
    clean_string($string) {
          
    $bad = array("content-type","bcc:","to:","cc:","href");
          return 
    str_replace($bad,"",$string);
        }
         
        
    $email_message .= "First Name: ".clean_string($first_name)."\n";
        
    $email_message .= "Last Name: ".clean_string($last_name)."\n";
        
    $email_message .= "Email: ".clean_string($email_from)."\n";
        
    $email_message .= "Telephone: ".clean_string($telephone)."\n";
        
    $email_message .= "Comments: ".clean_string($comments)."\n";
        
    $email_message .= "Article: ".clean_string($article)."\n";
         
         
    // create email headers
    $headers 'From: '.$email_from."\r\n".
    'Reply-To: '.$email_from."\r\n" .
    'X-Mailer: PHP/' phpversion();
    @
    mail($email_to$email_subject$email_message$headers);  
    ?>

  2. #2
    potresti, trovando l'errore, metterlo in una variabile che poi inserisci, come argomento, nell'alert unico che crei alla fine


  3. #3
    Ecco perfetto ho sistemato un po' il codice, ho assegnato tutto alla variabile $error_message.
    Penso sia giusto, ma ora come faccio a far visualizzare il testo che contiene questa variabile in una finestra in java di tipo alert???





    Codice PHP:
      $error_message ""//mi creo la variabile vuota per il messaggio d'errore
        
    //assegno una variabile a ogni campo
        
    $first_name $_POST['first_name']; // required
        
    $last_name $_POST['last_name']; // required
        
    $email_from $_POST['email']; // required
        
    $telephone $_POST['telephone']; // not required
        
    $comments $_POST['comments']; // required
        
    $article $_POST['article']; // not required
        

    // aggiungo un messaggio d'errore per i campi vuoti alla variabile $error_message
            
    if(isset($first_name) ||
            isset(
    $last_name) ||
            isset(
    $email) ||
            isset(
    $comments) {
           
    $error_message .= "Uno o più campi sono vuoti";       
        }
         
       
         
    //aggiungo un messaggio d'errore per i campi non validi
        
        
    $email_exp '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
      if(!
    preg_match($email_exp,$email_from)) {
        
    $error_message .= "Email non valida.";
      }
        
    $string_exp "/^[A-Za-z .'-]+$/";
      if(!
    preg_match($string_exp,$first_name)) {
        
    $error_message .= "Nome non valido";
      }
      if(!
    preg_match($string_exp,$last_name)) {
        
    $error_message .= "Cognome non valido";
      }
      if(
    strlen($comments) <= 30) {
        
    $error_message .= "Commento troppo corto";
      }
      
    //ho la mia variabile, pronta per essere stampata, e ora? come la inserisco in una finestra alert? 
    echo  $error_message

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 © 2024 vBulletin Solutions, Inc. All rights reserved.