Contact form using Bootstrap 3.3.4

websilvia

Nuovo Utente
18 Giu 2007
5
1
3
Roma
salve a tutti, ho un problema bizzaro con un modulo di form di bootstrap per inviare email da sito:eek: (importante perchè responsive) che mi sta facendo impazzire da 2 giorni. Le email le invia con controllo e animazione carina, il problema deriva dal fatto che mi arrivano solo email contenenti caratteri mail nella casella di inserimento email (?!?) le altre con estensione diversa (tipo: nomeutente@virgilio.it) me le ritrovo come spam? qualcuno sa come risolvere il problema? graaaaaazie eventuale risposte :)
di seguito elenco del codice della Index e del contact- form (che controlla e invia pagina).
PHP:
(pagina index.html)



<!DOCTYPE html>

<html>

<head>

   <title>prova form 2 Contact form using Bootstrap 3.3.4</title>

   <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">

   <meta charset="utf-8">

   <meta http-equiv="content-type" content="text/html; charset=utf-8" />

   <link rel="stylesheet" href="css/bootstrap.min.css">

   <link rel="stylesheet" href="css/animate.css">

</head>

<body style="background-color: #7e7e7e">

<div class="row">

<div class="col-sm-6 col-sm-offset-3">

   <div class="well" style="margin-top: 10%;">

   <h3>Send me a message</h3>

   <form role="form" id="contactForm" data-toggle="validator" class="shake">

       <div class="row">

           <div class="form-group col-sm-6">

               <label for="name" class="h4">Name</label>

               <input type="text" class="form-control" id="name" placeholder="Enter name" required data-error="NEW ERROR MESSAGE">

               <div class="help-block with-errors"></div>

           </div>

           <div class="form-group col-sm-6">

               <label for="email" class="h4">Email</label>

               <input type="email" class="form-control" id="email" placeholder="Enter email" required>

               <div class="help-block with-errors"></div>

           </div>

       </div>

       <div class="form-group">

           <label for="message" class="h4 ">Message</label>

           <textarea id="message" class="form-control" rows="5" placeholder="Enter your message" required></textarea>

           <div class="help-block with-errors"></div>

       </div>

       <button type="submit" id="form-submit" class="btn btn-success btn-lg pull-right ">Submit</button>

       <div id="msgSubmit" class="h3 text-center hidden"></div>

       <div class="clearfix"></div>

   </form>

   </div>

</div>

</div>

</body>

<script  type="text/javascript" src="js/jquery-1.11.2.min.js"></script>

<script type="text/javascript" src="js/validator.min.js"></script>

<script type="text/javascript" src="js/form-scripts.js"></script>

</html>




pagina (form-process.php)


<?php


$errorMSG = "";


// NAME

if (empty($_POST["name"])) {

   $errorMSG = "Name is required ";

} else {

   $name = $_POST["name"];

}


// EMAIL

if (empty($_POST["email"])) {

   $errorMSG .= "Email is required ";

} else {

   $email = $_POST["email"];

}


// MESSAGE

if (empty($_POST["message"])) {

   $errorMSG .= "Message is required ";

} else {

   $message = $_POST["message"];

}




$EmailTo = "[email protected]";

$Subject = "New Message Received";


// prepare email body text

$Body = "";

$Body .= "Name: ";

$Body .= $name;

$Body .= "\n";

$Body .= "Email: ";

$Body .= $email;

$Body .= "\n";

$Body .= "Message: ";

$Body .= $message;

$Body .= "\n";


// send email

$success = mail($EmailTo, $Subject, $Body, "From:".$email);


// redirect to success page

if ($success && $errorMSG == ""){

  echo "success";

}else{

   if($errorMSG == ""){

       echo "Something went wrong";

   } else {

       echo $errorMSG;

   }

}


?>
Grazie dell'attenzione, e grazie per eventuali suggerimenti :)
 
Ultima modifica di un moderatore:

Max 1

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
29 Feb 2012
4.449
338
83
Da regolamento del forum, come tutti noi sei tenuto ad usare il tag
PHP (2).png
quando posti del codice php, oppure la funzione codice dalla barra degli strument
box inserisci.png

Inoltre IMPORTANTE: Prima di creare una nuova discussione o di rispondere alle discussioni esistenti ricordati di leggere attentamente il Regolamento del Forum e l'eventuale regolamento specifico della sezione!

Grazie

Correggi i tuoi post
mi raccomando altrimenti sarò costretto a cancellare le discussioni

Te lo avevo già detto che il codice non si posta così
 
  • Like
Reactions: websilvia

macus_adi

Utente Attivo
5 Dic 2017
1.343
91
48
IT/SW
me le ritrovo come spam? qualcuno sa come risolvere il problema? graaaaaazie eventuale risposte
Non stai utilizzando smtp ma mail, probabile che il problema deriva dalla mancanza spf - dkim - etc... Fai una prova utilizzando smpt e non mail, in quanto probabilmente la macchina viene identificata come localhost...
 

websilvia

Nuovo Utente
18 Giu 2007
5
1
3
Roma
Grazie grazie Vs. risposte, (bel ripasso, thank's) in realtà il problema era su questa riga, (errore di concatenamento di stringhe) andava il punto (ovviamente) anzichè la virgola (bocciata!!! ) :)

questo il codice con la virgola per il "From:"( l'errore)
Codice:
// send email

$success = mail($EmailTo, $Subject, $Body, "From:".$email);

e questo il codice corretto
Codice:
// send email
$success = mail($EmailTo, $Subject, $Body. "From: " .$email);

per fortuna funziona, ora altro problema con i caratteri accentati (e non ne vuole sapere nemmeno con il solito
Codice:
<meta charset="utf-8" />
iniziale

Graaaaaazzzzie Vs. Risposte:D
 
  • Like
Reactions: MarcoGrazia

MarcoGrazia

Utente Attivo
15 Dic 2009
852
20
28
62
Udine
www.stilisticamente.com
per fortuna funziona, ora altro problema con i caratteri accentati (e non ne vuole sapere nemmeno con il solito
Codice:
<meta charset="utf-8" />
iniziale

Graaaaaazzzzie Vs. Risposte:D
Ma dove lo metti?
Nella pagina dove sta il form? o nel testo di una email in html?
In ogni caso in UTF-8 devono essere: salvati i file che generano il tutto ( controlla l'editor che usi se sta salvando tutto in UTF senza BOM ) in questo caso anche tutto ciò che c'è nel POST arriverà in formato UTF.

HTML:
<meta charset="utf-8">
Indica ai browser che il testo che andrà a leggere è formattato in quel modo, ma se non lo è non può farci nulla, è come se ti facessero uno scherzo, passandoti una lettera e dicendoti che è in italiano, mentre invece il testo è in devengari, sai che ci capisci? ;-)
 

websilvia

Nuovo Utente
18 Giu 2007
5
1
3
Roma
riscrivo qui ringraziando la soluzione che avete scritto:
l'ho inserito qui e funziona (invia i caratteri accentati)
Codice:
// MESSAGE
if (empty($_POST["message"])) {
    $errorMSG .= "Message is required ";
} else {
    $message = utf8_decode($_POST['message']);
}

Grazie e ancora grazie:)
 

MarcoGrazia

Utente Attivo
15 Dic 2009
852
20
28
62
Udine
www.stilisticamente.com
Bene, funziona!
Ora ti consiglio di dare un'occhiata al manuale del PHP sulle funzioni Multi Byte, le cosiddette mb_ che permettono di modificare le stringhe in modo molto più accurato di quella che hai usata tu.
C'è solo un problema :D non sono abilitate di default, e prima di usarle è meglio controllare mediante phpinfo() sul server su cui si metterà il sito, cosa funziona e cosa no.
 
  • Like
Reactions: websilvia
Discussioni simili
Autore Titolo Forum Risposte Data
Elisacau [Contact form 7] Inserire Numero auto incrementante WordPress 1
I Guida/Tutorial configurare PHPMailer per inviare mails tramite contact form? PHP 2
Michaelweb93 [HTML] Creazione risposta automatica - email "Contact form 7" Wordpress WordPress 10
felino [Contact Form 7] Funzione personalizzata: ho un problema. WordPress 1
felino Contact Form 7: calendario e formattazione messaggio WordPress 0
A Turbo Contact Form - AIUTO PHP 2
felino Contact Form 7: messaggio di conferma sotto il modulo? WordPress 1
W Contact form nel template PHP 4
A Contact form php PHP 8
J Best of Free Contact Form Services and Generators for Easiest usages Javascript 0
T Contact form7 HTML e CSS 3
P Problenma con contact.asp Classic ASP 0
S passare un valore da un form a un file .php con metodo post PHP 4
K Form che manda dati doppi PHP 1
K Problema form update PHP 2
K form Inserimento record mysql PHP 2
I Form con selettore HTML e CSS 0
K [php]form invio dati PHP 0
G form invio multiplo con checkbox PHP 12
nivaria.achinet Intercettare form solo dopo invio Javascript 1
D Form contatti non funzionante HTML e CSS 0
A Stampare dati da form PHP 8
M Unire 2 funzioni per l'invio di un form e con l'apertura di un div Javascript 0
I Form HTML e CSS 17
otto9due $_FILE non passa i dati dal form PHP 1
M Form: come tornare ai campi già compilati dopo invio PHP 1
G Invio form con PHP PHP 3
felino Form action costum e parametri in queryString WordPress 1
M Come recuperare molteplici input form PHP 1
M Collegamento tra form html e script php PHP 4
L form immagini per il database PHP 0
A form PHP prenotazione tramite query PHP 2
A Form php prenotazione di un azienda sanitaria locale presso studio medico PHP 1
L inserimento form dati multipli ? PHP 0
L Problemi form Pagina php HTML e CSS 3
Cosina Creare bottone delete in form upload PHP 5
Cosina Creare bottone delete in form upload PHP 1
D Devo far funzionare un form di contatti PHP 4
B form gestione input PHP 2
V PHP form intersecate PHP 0
8 Javascript - PDF Form Javascript 0
J Form inserimento dati in database Ajax 1
E Gestione profilo utente tramite Form PHP 3
R [C#] Form principale si blocca mentre un altro Thread lavora .NET Framework 0
M Problema con controllo form in real time jQuery 6
D Form validazione Javascript 2
R form recovery pass PHP 0
V Symfony e i form PHP 3
M form con checkbox PHP 8
S come aggiustare un form di contatto? HTML e CSS 3

Discussioni simili