Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Controllo campi vuoti form mail

    salve atutti avevo una piccola domanda io ho queste 2 pagine

    mailquesiti.php
    Codice PHP:
    <?
    session_start
    ();
    function 
    checkOK($field)
    {
    if (
    eregi("\r",$field)){
    die(
    "Invalid Input!");
    }
    }
    $val_code=$_POST['val_code'];
    $tipo=$_POST['contact_type'];
    $name=$_POST['contact_name'];
    checkOK($name);
    $email=$_POST['contact_email'];
    checkOK($email);
    $comments=$_POST['comment'];
    checkOK($comments);
    $to="mio indirizzo"//Replace with an email address where the form results will be sent
    if ("{$_SESSION['random_number']}"!="{$val_code}") {
     echo 
    "Codice Errato";
     
    header("Location: Quesiti.php?sent=0");
    }
    else {
    $message="$name ($tipo)ti ha inviato il seguente quesito:\n\n$comments\n\nIndirizzo e-mail: $email\n";
    if(
    mail($to,"Quesito proveniente da Studiomareta.com",$message"From: $email")) {
    echo 
    "E-mail inviata con successo.";
    header("Location: Quesiti.php?sent=1");
    } else {
    echo 
    "Si sono verificati dei problemi durante l'invio. Controlla bene i dati inseriti.";
    header("Location: Quesiti.php?sent=2");
    }
    }
    ?>
    e quesiti.php

    Codice PHP:

    <FORM ACTION="mailquesiti.php" METHOD="POST" NAME="contact_form">
     <TABLE align="center" >
     <TR>
     <TD >[b]<u>INVIA EMAIL-QUESITI</u>[/b]

    </TD></TR>
     <tr>
      <TD><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Tipo Cliente:</font></TD>
      <TD><input type="radio" name="contact_type" value="privato"> Privato

    <input type="radio" name="contact_type" value="iva" checked> Titolare Partita IVA</TD> 
     </TR>
     <tr>
      <TD><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Nome:</font></TD>
      <TD><input type=text name="contact_name"></TD> 
     </TR>
     <TR>
      <TD><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Indirizzo Email:</font></TD>
      <TD><input type=text name="contact_email"></TD>
     </TR>
     <TR>
      <TD><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Quesiti:</font></TD>
      <TD><textarea name="comment" cols="40" rows="3"></textarea></TD>
     </TR>
    <tr>
    <td>
    <font size="2" face="Verdana, Arial, Helvetica, sans-serif">Inserisci il codice di verifica: </font>
    </td>
    <TD><input type=text name="val_code">
        [img]/image_number.php?n=<?=rand(10009999)?>[/img]</TD> 
     </tr>
    <tr>
      <td>
      <TR>
      <TD></TD>
      <TD><input type="submit" value="Invia" name="submit"></TD>
      
     </TR>
     <tr> <TD><?
    if (isset($_GET['sent']))
      switch(
    $_GET['sent']){
      case 
    0:
         echo 
    '<p class="success"><font color=red>ERRORE: Codice Errato</font></p>';
         break;
      case 
    1:
         echo 
    '<p class="fail"><font color=red>E-mail inviata con successo!!!</font></p>';
         break;
      case 
    2:
         echo 
    '<p class="fail"><font color=red>ERRORE: Si sono verificati errori, controlla bene i tuoi campi </font></p>';
         break;
      case 
    3:
         echo 
    '<p class="fail"><font color=red>ERRORE: E-mail non valida </font></p>';
         break;
     }
    ?></TD>
    come posso far fare un controllo sui campi in omodo che dia errore se sono vuoit e controllare che nella text della email ci sia almeno un @ e poi un punto???

    non so a livelli di codice come lo devo dire.. cioè con una if () ma dentro ocm eidchiaro i casi?

  2. #2
    Ciao provo ad aiutarti,

    Per quanto riguarda la mail:
    codice:
    if (!ereg("@",$_POST['Ml'])) {
     		
      echo "Errore!
    Inserire una email valida"; 
      exit; 	
    }
    Per quanto riguarda i campi, il controllo che non siano vuoti si fa cosi (ti posto un codice di un mio file, quindi devi modificare con i tuoi campi
    codice:
    if (($_POST['campo1']=='') || ( $_POST['campo2']=='' ) || ( $_POST['campo3']=='') || ( $_POST['campo4']=='') || ( $_POST['campo5']=='') || ( $_POST['campo6']=='' ))
    	{
    		echo "Errore!
    Devi compilare tutti i campi dal form per continuare";
    		exit;
    	}

  3. #3

    Re: Controllo campi vuoti form mail

    Originariamente inviato da __SUPERMAN__
    salve atutti avevo una piccola domanda io ho queste 2 pagine

    mailquesiti.php
    Codice PHP:
    <?
    session_start
    ();
    function 
    checkOK($field)
    {
    if (
    eregi("\r",$field)){
    die(
    "Invalid Input!");
    }
    }
    $val_code=$_POST['val_code'];
    $tipo=$_POST['contact_type'];
    $name=$_POST['contact_name'];
    checkOK($name);
    $email=$_POST['contact_email'];
    checkOK($email);
    $comments=$_POST['comment'];
    checkOK($comments);
    $to="mio indirizzo"//Replace with an email address where the form results will be sent
    if ("{$_SESSION['random_number']}"!="{$val_code}") {
     echo 
    "Codice Errato";
     
    header("Location: Quesiti.php?sent=0");
    }
    else {
    $message="$name ($tipo)ti ha inviato il seguente quesito:\n\n$comments\n\nIndirizzo e-mail: $email\n";
    if(
    mail($to,"Quesito proveniente da Studiomareta.com",$message"From: $email")) {
    echo 
    "E-mail inviata con successo.";
    header("Location: Quesiti.php?sent=1");
    } else {
    echo 
    "Si sono verificati dei problemi durante l'invio. Controlla bene i dati inseriti.";
    header("Location: Quesiti.php?sent=2");
    }
    }
    ?>
    e quesiti.php

    Codice PHP:

    <FORM ACTION="mailquesiti.php" METHOD="POST" NAME="contact_form">
     <TABLE align="center" >
     <TR>
     <TD >[b]<u>INVIA EMAIL-QUESITI</u>[/b]

    </TD></TR>
     <tr>
      <TD><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Tipo Cliente:</font></TD>
      <TD><input type="radio" name="contact_type" value="privato"> Privato

    <input type="radio" name="contact_type" value="iva" checked> Titolare Partita IVA</TD> 
     </TR>
     <tr>
      <TD><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Nome:</font></TD>
      <TD><input type=text name="contact_name"></TD> 
     </TR>
     <TR>
      <TD><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Indirizzo Email:</font></TD>
      <TD><input type=text name="contact_email"></TD>
     </TR>
     <TR>
      <TD><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Quesiti:</font></TD>
      <TD><textarea name="comment" cols="40" rows="3"></textarea></TD>
     </TR>
    <tr>
    <td>
    <font size="2" face="Verdana, Arial, Helvetica, sans-serif">Inserisci il codice di verifica: </font>
    </td>
    <TD><input type=text name="val_code">
        [img]/image_number.php?n=<?=rand(10009999)?>[/img]</TD> 
     </tr>
    <tr>
      <td>
      <TR>
      <TD></TD>
      <TD><input type="submit" value="Invia" name="submit"></TD>
      
     </TR>
     <tr> <TD><?
    if (isset($_GET['sent']))
      switch(
    $_GET['sent']){
      case 
    0:
         echo 
    '<p class="success"><font color=red>ERRORE: Codice Errato</font></p>';
         break;
      case 
    1:
         echo 
    '<p class="fail"><font color=red>E-mail inviata con successo!!!</font></p>';
         break;
      case 
    2:
         echo 
    '<p class="fail"><font color=red>ERRORE: Si sono verificati errori, controlla bene i tuoi campi </font></p>';
         break;
      case 
    3:
         echo 
    '<p class="fail"><font color=red>ERRORE: E-mail non valida </font></p>';
         break;
     }
    ?></TD>
    come posso far fare un controllo sui campi in omodo che dia errore se sono vuoit e controllare che nella text della email ci sia almeno un @ e poi un punto???

    non so a livelli di codice come lo devo dire.. cioè con una if () ma dentro ocm eidchiaro i casi?
    - empty($str);
    - Espressioni regolari

    - Onde evitare problemi di sicurezza passa l'input per una whitelist

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