Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2013
    residenza
    brescia
    Messaggi
    13

    Piccolo aiuto per un contact form

    Ciao ragazzi..voglio aggiornare il mio sito e volevo aggiungere un semplicissimo "CONTACT FORM MAIL" composta da un riquadro per il nome,uno per l'indirizzo mail e un'ultimo per il testo.Ho creato la mia pagina html che allego qui per farvi capire cosa ho creato

    codice:
    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>Contact Form</title>   <link href="contact.css" rel="stylesheet" type="text/css"> </head>  <body>  <div id="contact"> 	<h1>contattami</h1> 	<form action="contact form.php" method="post" target="new"> 		<fieldset> 			<label for="name">NOME :</label> 			<input type="text" id="name" placeholder="Inserisci il tuo nome" /> 			 			<label for="email">Email :</label> 			<input type="email" id="email" placeholder="Inserisci la tua mail" /> 			 			<label for="message">Messaggio:</label> 			<textarea id="messagge" placeholder="Scrivi il tuo messaggio"></textarea> 			 			<input type="submit" value="INVIA" /> 			 		</fieldset> 	</form> </div>  </body> </html>
    poi seguendo vari tutorials ho creato la mia piccola pagina PHP che vi allego

    Codice PHP:
    <?php  /*inizio form di contatto php*/  $destinatario "tanasuke@shibamania.it";  $oggetto "Email inviata da shibamania";  $messaggio ="Nome $name\n"$messaggio .= $messagge;  $da $email$intestazioni "From: $da";  mail($destinatario,$oggetto,$messaggio,$intestazioni); /*fine form di contattophp*/  ?>
    Ho messo questi due file sul mio server e compilando il contact form l'invio avviene regolarmente..solo che nella mail di risposta mi arriva solo la scritta "NOME" e basta..Sia il testo che inserisco,sia la mail di chi scrive sia il nome di chi scrive non mi compaiono..solo la scritta NOME e basta e non capisco perchè.
    Sicuramente sbaglio qualche riferimento tra il PHP e la pagina html ma non capisco dov'è l'errore.Se qualcuno può gentilmente aiutarmi gliene sarei grato.
    Per adesso vi saluto e grazie per tutto .Ciao

  2. #2
    Codice PHP:
    $name $_POST['name']; 
    Devi metterlo prima di lanciare l'email, trasformi i dati post in variabili (dato che già le usi)

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2013
    residenza
    brescia
    Messaggi
    13
    Ciao goikiu e grazie per la risposta. ma questa riga di php devo metterla in un posto specifico della pagina o va bene aggiungerla in qualsiasi posizione?perchè io l'ho aggiunta subito sopra questa parte di codice

    codice:
    $da = $email; $intestazioni = "From: $da";  mail($destinatario,$oggetto,$messaggio,$intestazioni,$name);
    ma la mail mi arriva sempre con la scritta NOME e basta.Ho provato a spostarla in vari punti della pagina ma non cambia .Ciao e grazie per l'aiuto e scusa la banalità della domanda ma sono proprio alle prime armi col PHP.

  4. #4
    Allora:

    hai una pagina che contiene il form (può anche essere html), al cui interno hai un form che deve puntare alla pagina php che manda la mail... dato il tuo codice

    Codice PHP:
    <form action="contact form.php" method="post" target="new"
    cambia l'action e metti un nome senza spazi

    cambi il nome della pagina di destinazione, per ogni campo preso dal form fai il lavoro che ti ho detto prima e dovrebbe funzionare.

    puoi anche fare in modo che la pagina rimandi a se stessa e mandi lei stessa l'email, ma il codice è leggermente diverso.

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2013
    residenza
    brescia
    Messaggi
    13
    Grazie goikiu ma sono talmente impedito che mi esce sempre la scritta NOME nella mail che ricevo e basta.Volevo chiederti se gentilmente potevi vedere se ho scritto giusto il codice PHP(ho dei dubbi).
    Qui c'è il codice html

    codice:
    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>CSS3 Contact Form</title>   <link href="contact.css" rel="stylesheet" type="text/css"> </head>  <body>  <div id="contact"> 	<h1>contattaci</h1> 	<form action="form.php" method="post" target="new"> 		<fieldset> 			<label for="name">NOME :</label> 			<input type="text" id="name" placeholder="Inserisci il tuo nome" /> 			 			<label for="email">Email :</label> 			<input type="email" id="email" placeholder="Inserisci la tua mail" /> 			 			<label for="message">Messaggio:</label> 			<textarea id="message" placeholder="Scrivi il tuo messaggio"></textarea> 			 			<input type="submit" value="INVIA" /> 			 		</fieldset> 	</form> </div>  </body> </html>
    Qui quello PHP

    Codice PHP:
    <?php  /*inizio form di contatto php*/  $destinatario "tanasuke@shibamania.it"$name $_POST['name']; $oggetto "Email inviata da shibamania"$name $_POST['name']; $messaggio "Nome $nome\n"$messaggio .= $testo$name $_POST['name']; $da $email$intestazioni "From: $da"$name $_POST['name'];  mail($destinatario,$oggetto,$messaggio,$intestazioni); /*fine form di contattophp*/  ?>      <!doctype html> <html> <head> <meta charset="utf-8"> <title>form</title> </head>  <body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"> Grazie per avermi contattato </body> </html>
    e qui se serve,ma non credo anche il CSS

    codice:
    body, div, h1, form, fieldset, input, textarea { 	margin: 0; padding: 0; border: 0; outline: none; }  html { 	height: 100%; }  body { 	background: #728eaa; 	background: -moz-linear-gradient(top, #25303C 0%, #728EAA 100%); /* firefox */	 	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#25303C), color-stop(100%,#728EAA)); /* webkit */ 	font-family: sans-serif;  }  #contact { 	width: 430px; 	margin: 60px auto; 	padding: 60px 30px; 	background: #3f3f3f; 	border: 1px solid #000000; 	-moz-box-shadow: 0px 0px 8px #444; 	-webkit-box-shadow: 0px 0px 8px #444; }  h1 { 	font-size: 35px; 	color: #CCCCCC; 	text-transform: uppercase; 	text-align: center; 	margin: 0 0 35px 0; 	text-shadow: 0px 1px 0px #f2f2f2; }  label { 	float: left; 	clear: left; 	margin: 11px 20px 0 0; 	width: 95px; 	text-align: right; 	font-size: 16px; 	color: #FFFFFF; 	text-transform: uppercase; 	text-shadow: 0px 1px 0px #f2f2f2; }  input { 	width: 260px; height: 35px; padding: 5px 20px 0px 20px; margin: 0 0 20px 0;  	background: #5E768D; 	background: -moz-linear-gradient(top, #546A7F 0%, #5E768D 20%); /* firefox */ 	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#546A7F), color-stop(20%,#5E768D)); /* webkit */ 	border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; 	-moz-box-shadow: 0px 1px 0px #f2f2f2;-webkit-box-shadow: 0px 1px 0px #f2f2f2; 	font-family: sans-serif; font-size: 16px; color: #f2f2f2; text-transform: uppercase; text-shadow: 0px -1px 0px #334f71;  } 	input::-webkit-input-placeholder  {     	color: #a1b2c3; text-shadow: 0px -1px 0px #38506b;   	} 	input:-moz-placeholder { 	    color: #a1b2c3; text-shadow: 0px -1px 0px #38506b;  	}  textarea { 	width: 260px; height: 170px; padding: 12px 20px 0px 20px; margin: 0 0 20px 0;  	background: #5E768D; 	background: -moz-linear-gradient(top, #546A7F 0%, #5E768D 20%); /* firefox */ 	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#546A7F), color-stop(20%,#5E768D)); /* webkit */ 	border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; 	-moz-box-shadow: 0px 1px 0px #f2f2f2;-webkit-box-shadow: 0px 1px 0px #f2f2f2; 	font-family: sans-serif; font-size: 16px; color: #f2f2f2; text-transform: uppercase; text-shadow: 0px -1px 0px #334f71;  } 	textarea::-webkit-input-placeholder  {     	color: #a1b2c3; text-shadow: 0px -1px 0px #38506b;   	} 	textarea:-moz-placeholder { 	    color: #a1b2c3; text-shadow: 0px -1px 0px #38506b;  	} 	 input:focus, textarea:focus { 	background: #728eaa; 	background: -moz-linear-gradient(top, #668099 0%, #728eaa 20%); /* firefox */ 	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#668099), color-stop(20%,#728eaa)); /* webkit */ }  input[type=submit] { 	width: 185px; height: 52px; float: right; padding: 10px 15px; margin: 0 15px 0 0; 	-moz-box-shadow: 0px 0px 5px #999;-webkit-box-shadow: 0px 0px 5px #999; 	border: 1px solid #556f8c; 	background: -moz-linear-gradient(top, #718DA9 0%, #415D79 100%); /* firefox */ 	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#718DA9), color-stop(100%,#415D79)); /* webkit */ 	cursor: pointer; }
    Grazie mille per l'aiuto!Ciao

  6. #6
    la pagina di destinazione del form (quella dove hai il codice php) si chiama form.php giusto?

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2013
    residenza
    brescia
    Messaggi
    13
    Originariamente inviato da goikiu
    la pagina di destinazione del form (quella dove hai il codice php) si chiama form.php giusto?
    si,ho eliminato lo spazio come mi avevi detto di fare e ho chiamato la pagina di destinazione form.php
    Ciao

  8. #8
    Quindi per ricapitolare hai il seguente codice html.

    Codice PHP:
    <!DOCTYPE html
    <
    html
     <
    head
      <
    meta charset="utf-8" /> 
      <
    title>CSS3 Contact Form</title>   
      <
    link href="contact.css" rel="stylesheet" type="text/css"
     </
    head>  
     <
    body>  
      <
    div id="contact">     
       <
    h1>contattaci</h1>     
       <
    form action="form.php" method="post" target="new">         
        <
    fieldset>             
         <
    label for="name">NOME :</label>             
         <
    input type="text" id="name" placeholder="Inserisci il tuo nome"/>                          
         <
    label for="email">Email :</label>             
    <
    input type="email" id="email" placeholder="Inserisci la tua mail"/>                          
    <
    label for="message">Messaggio:</label>             
    <
    textarea id="message" placeholder="Scrivi il tuo messaggio"></textarea>                          
    <
    input type="submit" value="INVIA" />                      
    </
    fieldset>     
    </
    form
    </
    div>  
    </
    body
    </
    html
    la tua pagina form.php dovrebbe essere fatta circa in questo modo:

    Codice PHP:
    <?php  
    // assegnazione variabili da form

    $name trim($_POST['name']);
    $datrim($_POST['email']);
    $testotrim($_POST['message']) ;

    /*inizio form di contatto php*/  
    $destinatario "tanasuke@shibamania.it"
    $oggetto "Email inviata da shibamania"
    $messaggio "Nome ".$nome."\n"
    $messaggio .= $testo
    //$da = $email; 
    $intestazioni "From: ".$da;  
    mail($destinatario,$oggetto,$messaggio,$intestazioni); 
    /*fine form di contattophp*/  ?>      

    <!doctype html> <html> <head> <meta charset="utf-8"> <title>form</title> </head>  <body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"> Grazie per avermi contattato </body> </html>
    prova in questo modo per il php.

  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2013
    residenza
    brescia
    Messaggi
    13
    Ho provato a sostituire il PHP con quello che mi hai modificato,ma purtroppo non è cambiato niente.Funziona tutto perfettamente..Il collegamento alla pagina PHP è perfetto...quando clicco su invia esce la schermata di ringraziamento .Tutto perfetto,fino a lì.
    Apro la mia casella di posta associata nella pagina ma compare solo e SEMPRE la scritta "nome" e basta.Non sò più dove sbattere la testa.Io come host ho ARUBA..potrebbe essere quello che dà problemi?
    NOn credo però,perchè ho letto che supporta sia il PHP che altri linguaggi quali perl asp etc.Non capisco!
    Ciao e grazie comunque per l'aiuto

  10. #10
    Codice PHP:
    <!DOCTYPE html>  
    <
    html>  
     <
    head>  
      <
    meta charset="utf-8" />  
      <
    title>CSS3 Contact Form</title>    
      <
    link href="contact.css" rel="stylesheet" type="text/css">  
     </
    head>   
     <
    body>   
      <
    div id="contact">      
       <
    h1>contattaci</h1>      
       <
    form action="form.php" method="post" target="new">          
        <
    fieldset>              
         <
    label for="name">NOME :</label>              
         <
    input type="text" id="name" placeholder="Inserisci il tuo nome"/>                           
         <
    label for="email">Email :</label>              
    <
    input type="email" id="email" placeholder="Inserisci la tua mail"/>                           
    <
    label for="message">Messaggio:</label>              
    <
    textarea id="message" placeholder="Scrivi il tuo messaggio"></textarea>                           
    <
    input type="submit" value="INVIA" />                       
    </
    fieldset>      
    </
    form>  
    </
    div>   
    </
    body>  
    </
    html
    i tag input si specificano in questo modo:

    Codice PHP:
    <input type="" id="" name=""/> 
    Dove il name è quello che ottieni nella pagina ricevente, quindi oltre a id (che serve per il css) devi mettere name alle righe di name, email e nella textarea.

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.