Mail non si invia

Shyson

Utente Attivo
19 Ago 2012
1.161
1
38
Compilato il form invio ma la mail di notifica non parte nonostante esce che l'invio è partito


PHP:
...

if($errore==""){ 
echo "Il tuo ordine è stato inviato"
 }
else {
echo $errore;

$headersG1  = "MIME-Version: 1.0\r\n";
$headersG1 .= "content-type: text/html; charset=utf-8\r\n";
$headersG1 .= "X-Mailer: PHP\n"; 
$headersG1 .= "From: Me stesso <[email protected]>\r\n"; 

//Invio email di avviso a me
$meG = "Me <[email protected]>"; 
$oggettoG = "Grazie"; 
$messaggioM = "<html>
<head>
</head>
<body>
<table>
<tr>
<td>
<i>$messaggioG</i></div>
</td>
</tr>
</table> 
</body>
</html>";
//Invio dell'email 
mail ($meG,$oggettoG,$messaggioM,$headersG1);
}
 }
?>
//QUI CI STA IL FORM
 
Ultima modifica:

Shyson

Utente Attivo
19 Ago 2012
1.161
1
38
IMAP, questo codice lo uso già con altri form e funzionano, forse questo codice va posizionato in un altro punto della pagina, ma non mi sembra questo il problema.
 

marino51

Utente Attivo
28 Feb 2013
3.035
192
63
Lombardia
ho preso il tuo codice che invia la mail, ho inserito,
gli ini_set necessari,
il from corretto,
ho inserito l'indirizzo "$meG"
ho inserito qualche carattere nella variabile "$messaggioG"
ho eseguito ... ed il messaggio é arrivato
vedi tu dove può essere l'errore
ciao
Marino
 

Oswold

Utente Attivo
7 Ago 2013
81
0
6
Catania
PHP:
$headers = "From: "email"\nreply-To: noreply\r\n";
$subject = "titolo";
$messaggio = "Quello che vuoi\n";
@mail($email, stripslashes($subject),stripslashes($messaggio),$headers);

$email = sarebbe l'email del destinatario

Io ho sempre fatto così e non ho mai riscontrato problemi

PS: Io inserirei la parte di codice php sempre sotto il codice html, ha più leggibilità ed efficienza, potresti riscontrare dei problemi in alcuni casi (solo l'apri sessione va inserito in testa al codice), almeno questo è un mio consiglio.
 
Ultima modifica:

Shyson

Utente Attivo
19 Ago 2012
1.161
1
38
Probabimente non funziona perché entra in conflitto con l'altro form, quest'altro invece funziona
 

Oswold

Utente Attivo
7 Ago 2013
81
0
6
Catania
Ricorda che non sempre l'errore sta nel codice php, tante volte anche un errore banale nel html può farti impazzire notevolmente!
 

marino51

Utente Attivo
28 Feb 2013
3.035
192
63
Lombardia
o forse devi rovesciare questa condizione ....
mandi la mail in caso di errore

PHP:
if($errore==""){ 
echo "Il tuo ordine è stato inviato"
 }
else {
echo $errore;

$headersG1  = "MIME-Version: 1.0\r\n";
$headersG1 .= "content-type: text/html; charset=utf-8\r\n";
ciao
Marino
 

Shyson

Utente Attivo
19 Ago 2012
1.161
1
38
PHP:
$headers = "From: "email"\nreply-To: noreply\r\n";
$subject = "titolo";
$messaggio = "Quello che vuoi\n";
@mail($email, stripslashes($subject),stripslashes($messaggio),$headers);

$email = sarebbe l'email del destinatario

Io ho sempre fatto così e non ho mai riscontrato problemi

PS: Io inserirei la parte di codice php sempre sotto il codice html, ha più leggibilità ed efficienza, potresti riscontrare dei problemi in alcuni casi (solo l'apri sessione va inserito in testa al codice), almeno questo è un mio consiglio.

Io ho sempre saputo che il php va messo all'inizio della pagina, però non so. Non sono ancora riuscito a farlo funzionare. Posto tutta la pag

PHP:
<?php
//Richiama i parametri di connessione al db
require_once "connessione.php";
include ("funzioni1.php");  

if(isset($_POST['inviaG'])) {
$data_locale = time(); //Stampa nel db la data numerica es. 1360585588 
$nomeG = htmlspecialchars(addslashes(ucfirst(trim($_POST['nomeG']))));
$cognome = htmlspecialchars(addslashes(ucfirst(trim($_POST['cognome']))));
$via = htmlspecialchars(addslashes(ucfirst(trim($_POST['via']))));
$n = htmlspecialchars(addslashes(ucfirst(trim($_POST['n']))));
$loc = htmlspecialchars(addslashes(ucfirst(trim($_POST['loc']))));
$pro = htmlspecialchars(addslashes(ucfirst(trim($_POST['pro']))));
$cap = htmlspecialchars(addslashes(trim($_POST['cap'])));
$naz = htmlspecialchars(addslashes(ucfirst(trim($_POST['naz']))));
$email = htmlspecialchars(strtolower($_POST['email']));
$email = str_replace(" ","",$email); // Toglie gli spazi interni nell'email
$tel = htmlspecialchars(addslashes(trim($_POST['tel'])));
$messaggioG = htmlspecialchars(addslashes(ucfirst(trim($_POST['messaggioG'])))); 
$validatorG = htmlspecialchars(trim($_POST['validatorG']));

$_SESSION['nomeG'] = $nomeG;
$_SESSION['cognome'] = $cognome;
$_SESSION['via'] = $via; 
$_SESSION['n'] = $n;
$_SESSION['loc'] = $loc;
$_SESSION['pro'] = $pro;
$_SESSION['cap'] = $cap;
$_SESSION['naz'] = $naz; 
$_SESSION['email'] = $email;
$_SESSION['tel'] = $tel;
$_SESSION['messaggioG'] = $messaggioG;

//dichiaro la variabile e la rendo vuota, altrimenti da errore
$errore = ''; 

//strlen = numero di byte occupati dalla stringa, questo significa compresi gli spazi interni fra le parole
if (strlen($nomeG) > 20) { 
$errore .= "&bull;&nbsp;&nbsp;NOME: max 20 caratteri<br><br>";
}
if (strlen($cognome) > 30) { 
$errore .= "&bull;&nbsp;&nbsp;COGNOME: max 30 caratteri<br><br>";
} 
if (strlen($via) > 30) { 
$errore .= "&bull;&nbsp;&nbsp;VIA: max 30 caratteri<br><br>";
}
if (strlen($n) > 10) { 
$errore .= "&bull;&nbsp;&nbsp;N°: max 10 caratteri<br><br>";
} 
if (strlen($loc) > 30) { 
$errore .= "&bull;&nbsp;&nbsp;LOCALITÀ: max 30 caratteri<br><br>";
}
if (strlen($pro) > 30) { 
$errore .= "&bull;&nbsp;&nbsp;PROVINCIA: max 10 caratteri<br><br>";
} 
if (strlen($cap) > 10) { 
$errore .= "&bull;&nbsp;&nbsp;CAP: max 10 caratteri<br><br>";
}
if (strlen($naz) > 20) { 
$errore .= "&bull;&nbsp;&nbsp;NAZIONE: max 20 caratteri<br><br>";
} 
if (strlen($email) > 320) { 
$errore .= "&bull;&nbsp;&nbsp;EMAIL: max 320 caratteri<br><br>";
}
if (strlen($tel) > 20) { 
$errore .= "&bull;&nbsp;&nbsp;TEL: max 20 caratteri<br><br>";
}
// Non conteggia le new line
if (strlen(str_replace(array("\n", "\r"),"", $messaggioG)) > 200) { 
$errore .= "&bull;&nbsp;&nbsp;MESSAGGIO: max 200 caratteri<br><br>";
}
if (strlen($validatorG) > 4 ) { 
$errore .= "&bull;&nbsp;&nbsp;CODICE: max 4 caratteri<br><br>";
}

//Nome (Campo obbligatorio)
if(!empty($_POST['inviaG'])) { 
if ($nomeG == "") { 
$errore .= "&bull;&nbsp;&nbsp;Inserire il Nome<br><br>"; 
 }
  }
//Cognome (Campo obbligatorio)
if(!empty($_POST['inviaG'])) { 
if ($cognome == "") { 
$errore .= "&bull;&nbsp;&nbsp;Inserire il Cognome<br><br>"; 
}
 }
//Via (Campo obbligatorio)
if(!empty($_POST['inviaG'])) {  
if ($via == "") { 
$errore .= "&bull;&nbsp;&nbsp;Inserire la Via<br><br>"; 
}
 }
//Numero (Campo obbligatorio)
if(!empty($_POST['inviaG'])) {  
if ($n == "") { 
$errore .= "&bull;&nbsp;&nbsp;Inserire il Numero<br><br>"; 
}
 }
//Località (Campo obbligatorio)
if(!empty($_POST['inviaG'])) { 
if ($nome == "") { 
$loc .= "&bull;&nbsp;&nbsp;Inserire la Località<br><br>"; 
}
 }
//Provincia (Campo obbligatorio)
if(!empty($_POST['inviaG'])) { 
if ($pro == "") { 
$errore .= "&bull;&nbsp;&nbsp;Inserire la Provincia<br><br>"; 
}
 }
//CAP (Campo obbligatorio)
if(!empty($_POST['inviaG'])) {  
if ($cap == "") { 
$errore .= "&bull;&nbsp;&nbsp;Inserire il CAP<br><br>"; 
}
 }
//Email (Campo obbligatorio)
if(!empty($_POST['inviaG'])) {  
if ($email == "") { 
$errore .= "&bull;&nbsp;&nbsp;Inserire l'Email<br><br>"; 
}
 } 
//Valida email
if ($email) { 
if (!preg_match("/^[^.-]([.]?[^.-]+)*([-][^.-])?([.]?[^.-])*@(.*)[^.](\.[a-z]{2,6})$/",$email)) {
$errore .= "&bull;&nbsp;&nbsp;Email non valida<br><br>";
 }
  }
//Telefono (Campo obbligatorio)
if(!empty($_POST['inviaG'])) {  
if ($tel == "") { 
$errore .= "&bull;&nbsp;&nbsp;Inserire il Telefono<br><br>"; 
}
 }
//Validatore (Campo obbligatorio)
if(!empty($_POST['inviaG'])) { 
if ($validatorG == "") {  
$errore .= "&bull;&nbsp;&nbsp;Inserire il Codice<br><br>"; 
} 
 }
//Controlla che il codice Captcha inserito corrisponda a quello che appare nell'immagine
if(!empty($_POST['inviaG'])) {  
if ($_SESSION['rand_code'] != strtolower(trim($_POST['validatorG']))) {
$errore .= "&bull;&nbsp;&nbsp;Codice errato!<br><br>";
}
 }
if($errore==""){ 
echo "<div class=\"traspG\"></div><div class=\"inviatoG\"><div style=\"margin-top:25px; margin-bottom:30px; text-align:center;\"><img src=\"immagini/ok.png\" width=\"60\" height=\"60\" alt=\"Ok\" title=\"Ok\"></div><span style=\"font-size:19px;\">Il tuo ordine è stato inviato!</span></div>"; 
echo "<meta http-equiv='refresh' content='1; url=".htmlspecialchars($_SERVER['PHP_SELF']) ."'>";
 }
else {
echo "<div class=\"traspG\"></div><div class=\"alertG\"><div style=\"margin-top:25px;margin-bottom:30px;text-align:center;\"><img src=\"immagini/alert.png\" width=\"70\" height=\"70\" alt=\"Alert\" title=\"Alert\"></div>$errore</div>"; 
echo "<meta http-equiv=\"refresh\" content=\"1; url=".htmlspecialchars($_SERVER['PHP_SELF'])."?#segnalibroOrdine\">";

//Questo codice se il campo è vuoto mette a video la barretta IN MAIL
if ($naz == '') {
$naz ="&nbsp;-";
}

$headersG  = "MIME-Version: 1.0\r\n";
$headersG .= "Content-type: text/html; charset=utf-8\r\n";
$headersG .= "X-Mailer: PHP\n"; 
$headersG .= "From: Libridelbenessere <[email protected]>\r\n"; 

$headersG1  = "MIME-Version: 1.0\r\n";
$headersG1 .= "content-type: text/html; charset=utf-8\r\n";
$headersG1 .= "X-Mailer: PHP\n"; 
$headersG1 .= "From: $email;\r\n"; 

//Invio email di avviso a me
$meG = "Me <[email protected]>"; 
$oggettoG = "Qualcuno ha fatto l'ordine";  //Le email vanno formattate con HTML 
$messaggioM = "<html>
<head>
</head>
<body>
<table>
<tr>
<td>
<br>
<br> 
<br>
<div style=\"width:auto;height:4px;\"><span style=\"color:#666666\">Nome:</span>&nbsp;&nbsp;$nome</div>
<br>
<div style=\"width:auto;height:4px;\"><span style=\"color:#666666\">Cognome:</span>&nbsp;&nbsp;$cognome</div>
<br>
<div style=\"width:auto;height:4px;\"><span style=\"color:#666666\">Via:</span>&nbsp;&nbsp;$via</div>
<br>
<div style=\"width:auto;height:4px;\"><span style=\"color:#666666\">n°:</span>&nbsp;&nbsp;$n</div>
<br>
<div style=\"width:auto;height:4px;\"><span style=\"color:#666666\">Località:</span>&nbsp;&nbsp;$loc</div>
<br>
<div style=\"width:auto;height:4px;\"><span style=\"color:#666666\">Provincia:</span>&nbsp;&nbsp;$pro</div>
<br>
<div style=\"width:auto;height:4px;\"><span style=\"color:#666666\">CAP:</span>&nbsp;&nbsp;$cap</div>
<br>
<div style=\"width:auto;height:4px;\"><span style=\"color:#666666\">Nazione:</span>&nbsp;&nbsp;$naz</div>
<br>
<div style=\"width:auto;height:4px;\"><span style=\"color:#666666\">Email:</span>&nbsp;&nbsp;$email</div>
<br>
<div style=\"width:auto;height:4px;\"><span style=\"color:#666666\">Telefono:</span>&nbsp;&nbsp;$tel</div>
<br>
<div style=\"width:auto;height:4px;\"><span style=\"color:#666666\">Note:</span>&nbsp;&nbsp;$messaggioG</div>
<br>
<div style=\"width:auto;height:4px;\"><span style=\"color:#666666;\">Ip:</span>&nbsp;&nbsp;<span style=\"font-family:arial;font-size:13px;\">$ip</span>&nbsp;&nbsp;<img style=\" border-right:1px solid #9c9e95; border-bottom:1px solid #9c9e95; width:16px; height:12px; vertical-align:-13%;\" src=\"http://libridelbenessere.altervista.org/$file_to_check\" alt=\"".$countries[$two_letter_country_code][1]."\" title=\"".$countries[$two_letter_country_code][1]."\">&nbsp;&nbsp;".$countries[$two_letter_country_code][1]."</div>
<br>
<br>
<div style=\"width:auto;height:4px;\"><span style=\"color:#666666;\">Modulo ordine</span></div>
<br>
<br>
<i>$messaggioG</i></div>
<br>
<br>
<br>
<tr>
<td>
<div style=\"width:auto;height:auto;font-family:arial;font-size:11px;color:#000080;\">".crea_dataG($data_locale)."</div>
-------------------------
<br>
<br>
<br>
</td>
</tr>
</td>
</tr>
</table> 
</body>
</html>";
//Invio dell'email 
mail ($meG,$oggettoG,$messaggioM,$headersG1); 

//Invio email di ringraziamento al Visitatore 
$visitorG1 = "$email";  
$oggettoG1 = "Riassunto ordine libri"; 
$messaggioM1 = "<html>
<head>
</head>
<body>
<table>
<tr>
<td>
<p style=\"font-family:arial;font-size:17px;color:#000080;font-weight:bold;\">
- RISPOSTA AUTOMATICA -</p>
</td>
</tr>
<tr>
<td>
<p style=\"font-family:arial;font-size:11px;color:#000080;\">".crea_dataG($data_locale)."</p>
</td>
</tr>
<tr>
<td>
<p style=\"font-family:arial;font-size:14px;padding-top:15px;\">  
<br>
Grazie&nbsp;<b>$nome</b>,
<br>
<br>
questo è il riassunto del tuo ordine. Riceverai la merce nel giro di qualche giorno.
<br>
<br>
$messaggioM
<br>
A presto
<br>
<a href=\"http://libridelbenessere.it\" style=\"font-family:arial;font-size:13px;color:#0000ff;text-decoration:none;\">www.libridelbenessere.it</span></a>
</p>
</td>
</tr>
</table>
</body>
</html>
<br>
<br>";
//Invio dell'email 
mail($visitorG1,$oggettoG1,$messaggioM1,$headersG);
}
 } 
?>
<div id="containerBig">

<a id="segnalibroOrdine"><span style="width: auto; height: auto; font-size: 2em; color: #e67300;">Modulo Ordine</span></a>
<br>
<br>
<br>
<span style="font-size: 1.2em;">Compila il modulo con i dati esatti dell'<span style="color: #ff0000">indirizzo di destinazione libri.</span></span>
<br>
<br>
<div style="font-size: 1.2em; text-align: left; padding-left: 15px;">Assieme ai tuoi dati s'invierà anche l'ordine che hai nel carrello.</div>
<br>
<br>
<span style="font-size: 1em;">(Diritto di recesso, vedi DL n. 21 del 21 febbraio 2014)</span>
<br>
<br>
<br>
<!-- INIZIO FORM-->
   <form method="post" name="mioformGx" id="mioG" action="<?php echo $_SERVER['PHP_SELF'];?>" onsubmit="return (nomeCampoG() &amp;&amp; cognomeCampoG() &amp;&amp; viaCampoG() &amp;&amp; nCampoG() &amp;&amp; locCampoG() &amp;&amp; proCampoG() &amp;&amp; capCampoG() &amp;&amp; telCampoG() &amp;&amp; emailCampoG() &amp;&amp; validatoreCampoG());">
   
	  <fieldset id="contenuto"> 
	  <br>
		<label class="nomiG">Nome<span class="asteriscoG">&nbsp;*</span></label>
          <input type="text" name="nomeG" class="campiG" value="<?php if(isset($_SESSION['nomeG'])){ echo $_SESSION['nomeG'];}else{ echo "";} ?>" onkeyup="contaNomeG(); nomeCampoG()" onblur="nomeCampoG(); this.value=this.value.replace(/[\s]*/,'')"> <!-- E' il Trim di js (onblur rimuove subito in modo visibile spazi prima e alla fine)  -->
                  <div class="NG">
           <div id="contaNomeG"></div><div id="nomeCampoG"></div>
            </div>
           <label class="nomiG">Cognome<span class="asteriscoG">&nbsp;*</span></label>
       <input type="text" name="cognome" class="campiG" value="<?php if(isset($_SESSION['cognome'])){ echo $_SESSION['cognome'];}else{ echo "";} ?>" onkeyup="contaCognomeG(); cognomeCampoG()" onblur="cognomeCampoG(); this.value=this.value.replace(/[\s]*/,'')">
                <div class="NG">
          <div id="contaCognomeG"></div><div id="cognomeCampoG"></div>
          </div>
        <label class="nomiG">Via, Piazza<span class="asteriscoG">&nbsp;*</span></label>
				 <input type="text" name="via" class="campiG" value="<?php if(isset($_SESSION['via'])){ echo $_SESSION['via'];}else{ echo "";} ?>" onkeyup="contaViaG(); viaCampoG()" onblur="viaCampoG(); this.value=this.value.replace(/[\s]*/,'')">  
         <label class="nomiGn">n°<span class="asteriscoG">&nbsp;*</span></label>
        &nbsp;&nbsp;&nbsp;<input type="text" name="n" class="campiGn" value="<?php if(isset($_SESSION['n'])){ echo $_SESSION['n'];}else{ echo "";} ?>" onkeyup="contaNG(); nCampoG()" onblur="nCampoG(); this.value=this.value.replace(/[\s]*/,'')">  
        <div class="NG">
            <div id="contaViaG"></div><div id="viaCampoG"></div>
            <div id="contaNG"></div><div id="nCampoG"></div>
               </div>
            <label class="nomiG">Località<span class="asteriscoG">&nbsp;*</span></label>
         <input type="text" name="loc" class="campiG" value="<?php if(isset($_SESSION['loc'])){ echo $_SESSION['loc'];}else{ echo "";} ?>" onkeyup="contaLocG(); locCampoG()" onblur="locCampoG(); this.value=this.value.replace(/[\s]*/,'')">
       <label class="nomiGp">Provincia (sigla)<span class="asteriscoG">&nbsp;*</span></label>
        &nbsp;&nbsp;&nbsp;<input type="text" name="pro" class="campiGp" value="<?php if(isset($_SESSION['pro'])){ echo $_SESSION['pro'];}else{ echo "";} ?>" onkeyup="contaProG(); proCampoG()" onblur="proCampoG(); this.value=this.value.replace(/[\s]*/,'')">  
         <div class="NG">
        <div id="contaLocG"></div><div id="locCampoG"></div>
        <div id="contaProG"></div><div id="proCampoG"></div>
           </div>
           <label class="nomiG">CAP<span class="asteriscoG">&nbsp;*</span></label>
           <input type="text" name="cap" class="campiGc" value="<?php if(isset($_SESSION['cap'])){ echo $_SESSION['cap'];}else{ echo "";} ?>" onkeyup="contaCapG(); capCampoG()" onblur="capCampoG(); this.value=this.value.replace(/[\s]*/,'')">
        <label class="nomiGs">Nazione (se estera)</label>
        &nbsp;&nbsp;&nbsp;<input type="text" name="naz" class="campiGs" value="<?php if(isset($_SESSION['naz'])){ echo $_SESSION['naz'];}else{ echo "";} ?>" onkeyup="contaNazG();" onblur="this.value=this.value.replace(/[\s]*/,'')">
        <div class="NG">
            <div id="contaCapG"></div><div id="capCampoG"></div>
            <div id="contaNazG"></div>
              </div>
        <label class="nomiG">Email<span class="asteriscoG">&nbsp;*</span></label>
         <input type="text" name="email" class="campiG" value="<?php if(isset($_SESSION['email'])){ echo $_SESSION['email'];}else{ echo "";} ?>" onkeyup="contaUserG(this); contaEmailG(); validaEmailG(); emailCampoG()" onblur="emailCampoG() &amp;&amp; validaEmailG(); this.value=ignoreSpaces(this.value)">   <!-- Rimuove tutti gli spazi (attacca le parole) -->
       <label class="nomiGt">Telefono<span class="asteriscoG">&nbsp;*</span></label>
        &nbsp;&nbsp;&nbsp;<input type="text" name="tel" class="campiGt" value="<?php if(isset($_SESSION['tel'])){ echo $_SESSION['tel'];}else{ echo "";} ?>" onkeyup="contaTelG(); telCampoG();" onblur="telCampoG(); this.value=this.value.replace(/[\s]*/,'')">
         <div class="NG">
        <div id="contaUserG"></div><div id="contaEmailG"></div><div id="validaEmailG"></div><div id="emailCampoG"></div>
        <div id="contaTelG"></div><div id="telCampoG"></div>
           </div>
  <br>
  <div id="contSX">
		<span class="testoMess">Note</span>
		<br>
		 <br>
</div><!-- contSX -->

    <div id="footer-bassoG">
	
 <div id="contaMessG"></div>
<textarea name="messaggioG" id="txtScrivimiG" onkeyup="contaG(this);" onblur="this.value=this.value.replace(/[\s]*/,'')"><?php if(isset($_SESSION['messaggioG'])){ echo $_SESSION['messaggioG'];}else{ echo "";} ?></textarea>
</div>	<!--footer-bassoG -->
	
 <div id="footerSX">
    <span class="campiObbG">Campi obbligatori</span><span class="asterisco">&nbsp;*</span>
					</div><!--footerSX-->
					
           <div id="footerCT">
           	 <button type="submit" name="inviaG" value="inviaG" style="cursor:pointer;">Invia</button>
						</div><!--footerCT-->
						
			<div id="footerDX">
				<div style=" font-family: arial; font-size: 13px; color: #ff0000; text-shadow: 0px 1px 0px #ffffff; margin-right: 80px; margin-bottom: 2px;">Scrivi questo codice</div>
	         <input type="text" name="validatorG" class="validatorG" onkeyup="contaValidG(); validatoreCampoG()" onblur="validatoreCampoG(); this.value=ignoreSpaces(this.value)">
        <div style="text-align: right; margin-right: 42px;"><img style="width: 70px; height: 30px;" id="capG" src="Captcha/captcha-image.php" alt="CAPTCHA image" title="CAPTCHA image">
   &nbsp;<img style="width: 24px; height: 24px; margin-bottom: 1px; cursor:pointer;" id="immagineG" src="immagini/refresh.gif" alt="Refresh CAPTCHA image" title="Refresh CAPTCHA image" onclick="funzioneG()">
     </div><!--style-->
        </div><!--footerDX-->

				<div id="contaValidG"></div><div id="validatoreCampoG"></div> 
	
	</fieldset> <!-- contenuto-->
     
      </form>
  <!-- FINE FORM--> 
      
<p style="font-size:14px; color:#004080; text-align:center; margin-top:7px;"><span style="font-weight: bolder;">Nota:</span> Queste informazioni non verranno cedute a terzi
<br>
e verranno usate solo per la spedizione.</p>
</div><!-- containerBig --> 


<div class="carrello">
<div style="width: auto; height: auto; font-size: 2em; color: #008000; text-align: center;">Il tuo Carrello<br><p>è vuoto</p></div>
<br>
<br>
<br>
</div>
 

marino51

Utente Attivo
28 Feb 2013
3.035
192
63
Lombardia
comincia a sistemare questo, ciao

PHP:
//Località (Campo obbligatorio)
if(!empty($_POST['inviaG'])) { 
if ($nome == "") { 
$loc .= "&bull;&nbsp;&nbsp;Inserire la Località<br><br>"; 
}
 }
 

marino51

Utente Attivo
28 Feb 2013
3.035
192
63
Lombardia
poi, come ti avevo scritto in precedenza, rovescia la condizione di controllo degli errori,

PHP:
  if(!empty($errore)){ 
    echo "<div class=\"traspG\"></div><div class=\"alertG\"><div style=\"margin-top:25px;margin-bottom:30px;text-align:center;\"><img src=\"immagini/alert.png\" width=\"70\" height=\"70\" alt=\"Alert\" title=\"Alert\"></div>$errore</div>"; 
    echo "<meta http-equiv=\"refresh\" content=\"1; url=".htmlspecialchars($_SERVER['PHP_SELF'])."?#segnalibroOrdine\">";
  }
  else {
    echo "<div class=\"traspG\"></div><div class=\"inviatoG\"><div style=\"margin-top:25px; margin-bottom:30px; text-align:center;\"><img src=\"immagini/ok.png\" width=\"60\" height=\"60\" alt=\"Ok\" title=\"Ok\"></div><span style=\"font-size:19px;\">Il tuo ordine è stato inviato!</span></div>"; 
    echo "<meta http-equiv='refresh' content='1; url=".htmlspecialchars($_SERVER['PHP_SELF']) ."'>";

    //Questo codice se il campo è vuoto mette a video la barretta IN MAIL
    if ($naz == '') {
      $naz ="&nbsp;-";
    }

    $headersG  = "MIME-Version: 1.0\r\n";
    $headersG .= "Content-type: text/html; charset=utf-8\r\n";
    $headersG .= "X-Mailer: PHP\n"; 
    $headersG .= "From: Libridelbenessere <[email protected]>\r\n";

controlla anche la variabile "$nome" dovrebbe essere "$nomeG"

da buon ultimo, hai una riga che procura un po' di errori
NESSUN ERRORE
INVIA LA MAIL !!
PHP Notice: Undefined variable: ip in C:\Web_Sites\__Test\PHP\TEST\_Shyson\_Shyson_2_mail_1.php on line 37
PHP Notice: Undefined variable: file_to_check in C:\Web_Sites\__Test\PHP\TEST\_Shyson\_Shyson_2_mail_1.php on line 37
PHP Notice: Undefined variable: countries in C:\Web_Sites\__Test\PHP\TEST\_Shyson\_Shyson_2_mail_1.php on line 37
PHP Notice: Undefined variable: two_letter_country_code in C:\Web_Sites\__Test\PHP\TEST\_Shyson\_Shyson_2_mail_1.php on line 37
PHP Notice: Undefined variable: countries in C:\Web_Sites\__Test\PHP\TEST\_Shyson\_Shyson_2_mail_1.php on line 37
PHP Notice: Undefined variable: two_letter_country_code in C:\Web_Sites\__Test\PHP\TEST\_Shyson\_Shyson_2_mail_1.php on line 37
PHP Notice: Undefined variable: countries in C:\Web_Sites\__Test\PHP\TEST\_Shyson\_Shyson_2_mail_1.php on line 37
PHP Notice: Undefined variable: two_letter_country_code in C:\Web_Sites\__Test\PHP\TEST\_Shyson\_Shyson_2_mail_1.php on line 37
non guardare il numero di linea, non corrisponde al tuo, io ho tolto alcune parti ....
ciao
Marino
 

Shyson

Utente Attivo
19 Ago 2012
1.161
1
38
Ho scoperto il problema, ora arrivano, ma devo togliere un codice, quello sotto dopo l'else che controlla gli errori. Ho provato anche a invertirli ma non arrivano.

PHP:
if($errore==""){ 
echo "<div class=\"traspG\"></div><div class=\"inviatoG\"><div style=\"margin-top:25px; margin-bottom:30px; text-align:center;\"><img src=\"immagini/ok.png\" width=\"60\" height=\"60\" alt=\"Ok\" title=\"Ok\"></div><span style=\"font-size:19px;\">Il tuo ordine è stato inviato!</span></div>"; 
echo "<meta http-equiv='refresh' content='1; url=".htmlspecialchars($_SERVER['PHP_SELF']) ."'>";
}
else {
echo "<div class=\"traspG\"></div><div class=\"alertG\"><div style=\"margin-top:25px;margin-bottom:30px;text-align:center;\"><img src=\"immagini/alert.png\" width=\"70\" height=\"70\" alt=\"Alert\" title=\"Alert\"></div>$errore</div>"; 
echo "<meta http-equiv=\"refresh\" content=\"1; url=".htmlspecialchars($_SERVER['PHP_SELF'])."?#segnalibroOrdine\">";

Se lascio solo questo sotto funziona, ma non ho il controllo errori

PHP:
if($errore==""){ 
echo "<div class=\"traspG\"></div><div class=\"inviatoG\"><div style=\"margin-top:25px; margin-bottom:30px; text-align:center;\"><img src=\"immagini/ok.png\" width=\"60\" height=\"60\" alt=\"Ok\" title=\"Ok\"></div><span style=\"font-size:19px;\">Il tuo ordine è stato inviato!</span></div>"; 
echo "<meta http-equiv='refresh' content='1; url=".htmlspecialchars($_SERVER['PHP_SELF']) ."'>";
 

marino51

Utente Attivo
28 Feb 2013
3.035
192
63
Lombardia
se inverti copiando come ti ho scritto, hai il controllo errori e l'invio funziona
devi invertire if e ovviamente le righe di codice che seguono

scusa, mi è rimasta nella penna la variazione sotto riportata,

vedi anche gli altri errori che ti ho segnalato
ciao
Marino
PHP:
  //Email (Campo obbligatorio)
  if(!empty($_POST['inviaG'])) {  
    if ($email == "") { 
      $errore .= "&bull;&nbsp;&nbsp;Inserire l'Email<br><br>"; 
    }
    //Valida email
    if ($email) { 
      if (!preg_match("/^[^.-]([.]?[^.-]+)*([-][^.-])?([.]?[^.-])*@(.*)[^.](\.[a-z]{2,6})$/",$email)) {
        $errore .= "&bull;&nbsp;&nbsp;Email non valida<br><br>";
      }
    }
  }
 

Shyson

Utente Attivo
19 Ago 2012
1.161
1
38
Ho spostato l'echo $errore sotto i codici delle mail e ora funziona tutto.
Mi manca ancora una cosa: quando invio la mail con il contenuto del form (nome, cognome. ecc.) deve inviarsi anche il contenuto di un div e cioè il contenuto del carrello, come si fa?

PHP:
<div class="carrello">
<div style="width: auto; height: auto; font-size: 2em; color: #008000; text-align: center;">Carrello</div>
<br>
//CONTENUTO
<br>
<br>
</div>
 
Discussioni simili
Autore Titolo Forum Risposte Data
A Php mail non invia due mail di seguito PHP 3
L mail() non invia mail PHP 4
M Perchè non invia la mail in formato html? PHP 5
G mail() non mi invia le email PHP 1
A [HTML] Testo mail non visualizzabile su IOS HTML e CSS 0
A Libero mail non funziona Posta Elettronica 1
E [PHP] mail inviata anche con campi obbligatori non compilati PHP 9
E [Javascript] Messaggio di avvenuto invio mail non visualizzato Javascript 1
A Non riesco ad inviare una mail attraverso PHP su Xampp PHP 2
M Non arrivano piu mail aiuto SEO e Posizionamento 4
asevenx link cliccabile che non funziona con invio mail PHP 1
D form mail non funzionante PHP 1
M non ci do fuori con il form mail PHP 1
M Mail in html con allegato non coesistono? PHP 6
N Aiuto php : Modulo Mail non funzionante - Dove sbaglio ? PHP 5
A Funzione mail() non mi funziona da quando sono passato ad aruba PHP 1
StarFish Web Mail Aruba: non riesco ad entrare Hosting 1
Longo8 E-mail non ricevuta Posta Elettronica 2
S passaggio a PHP Version 5.2.6 e la form e mail non funziona piu' PHP 14
T Mail: non funzionano i codici html! PHP 6
N non invio mail da locale PHP 15
C Inviare mail con allegato PDF non uppato PHP 2
SolidSnake4 invio mail html con php non va PHP 6
T FORM MAIL che non mi riesce PHP 18
B improvvisamente mail() non funziona più PHP 12
borgo italia non solo mail() PHP 2
B l'immagine non si visualizza nell'e-mail PHP 1
D Non partono le mail da php PHP 0
S carrello, non riesco ad inviare tutti gli ordini via mail Classic ASP 9
I Rispondi alla mail... ma word non va. Windows e Software 1
M il loop per l'invio mail con CDOSYS ad un tratto non funziona più Classic ASP 1
peppoweb Hotmail: non più di 100 e-mail al giorno Posta Elettronica 0
R Invio mail con allegati multipli PHP 0
A Mail con funzione mail() riconosciute come spam PHP 9
R Invio mail con allegati da directory PHP 1
M Vendo o scambio pacchetto mail di utenti Email Marketing 4
Daniele_Carrara Problema timeout - invio mail PHP 7
G Con Microsoft Outlook 2016 come si possono cancellare le mail doppie? Posta Elettronica 0
G Evitare che mi continui ad arrivare in alice mail spam Posta Elettronica 2
M configurare mail register.it (con 1000 invii/die) su Outlook Posta Elettronica 0
Marti1! Problema con casella mail cancellata Posta Elettronica 3
U PHP bottone per invio mail o ritorno al form PHP 15
G Invio mail con php da dati prelevati da un database PHP 9
AC1 [PHP] Invio Mail PHP 18
L Problema funzione mail() PHP PHP 3
I [PHP] inviare form con allegato tramite una mail PHP 1
B [PHP] Invio mail automatico dopo compilazione form - db PHP 25
L PopUp tramite PHP se la mail inserita è già registrata nel database PHP 3
G [PHP] Creare mail con allegato nascosto e bottone di richiamo PHP 0
P [PHP] PEAR Mail e Query PHP 3

Discussioni simili