Kjapp og trygg hosting for Wordpress

Hjelp med PHP kontaktskjema

Cisse

Medlem
PHP:
<?php
if(isset($_POST['send'])) {
	$ip = $_SERVER['REMOTE_ADDR'];
	$dato = date("d.m.Y");
	
	$emne = $_POST['emne'];
	$navn = $_POST['navn'];
	$email = $_POST['email'];
	$tekst = $_POST['tekst'];
	
	$mailto = "sivert@kilsk.com";
	$message = "$tekst\n\n er sendt fra $navn, $email\n\n ";
	$header = "From: kontaktskjema@grueski.no";

		mail($mailto, $emne, $message, $header);
		mail($mail, "Sendt", "Hei\n\nDin forespørsel ble sendt! Vi vil behandle den så fort som mulig! \n\nMvh\nStyret i Grue IL Skigruppa", "From: noreply@grueski.no");

} else {
	echo "<table width='1091px' background='img/hvit_trans.png' style='border: 1px solid #000; margin-left: 3px; margin-top: 60px;'>
						 <tr>
							 <td><h3>Kontakt Grue IL Skigruppa</h3>/td>
						</tr>
						<form action='".$_SERVER['PHP_SELF'];."' method='POST'>
						<tr>
							<td>Ditt emne*</td><td><input type='text' name='emne' value='Ditt emne her...' size='25'</td>
						</tr>
						<tr>
							<td>Ditt fulle navn*</td><td><input type='text' name='navn' value='Ditt navn her...' size='25'></td>
						</tr>
						<tr>
							<td>Din e-post*</td><td><input type='text' name='email' value='Din e-post her...' size='25'></td>
						</tr>
						<tr>
							<td>Din melding</td><td><textarea name='tekst' rows='10' cols='20'></textarea></td>
						</tr>
						<tr>
							<td><input type='submit' name='send' value='Send din melding!'></td>
						</tr>
						</form>
				</table>";
}
?>

Dette vises ikke, og virker ikke... Hva er galt?
 

adeneo

Medlem
Fjern semikolon når variabler settes inn i koden, altså dette :

PHP:
<form action='".$_SERVER['PHP_SELF'];."' method='POST'>
                   // syntax error ^^

til dette

PHP:
<form action='".$_SERVER['PHP_SELF']."' method='POST'>
 
Sist redigert:

muffins

Medlem
Prøv å fjerne ; etter $_SERVER['PHP_SELF'], så skjer det nok litt mer. Altså koden blir slik:

PHP:
<?php 
if(isset($_POST['send'])) { 
    $ip = $_SERVER['REMOTE_ADDR']; 
    $dato = date("d.m.Y"); 
     
    $emne = $_POST['emne']; 
    $navn = $_POST['navn']; 
    $email = $_POST['email']; 
    $tekst = $_POST['tekst']; 
     
    $mailto = "sivert@kilsk.com"; 
    $message = "$tekst\n\n er sendt fra $navn, $email\n\n "; 
    $header = "From: kontaktskjema@grueski.no"; 

        mail($mailto, $emne, $message, $header); 
        mail($mail, "Sendt", "Hei\n\nDin forespørsel ble sendt! Vi vil behandle den så fort som mulig! \n\nMvh\nStyret i Grue IL Skigruppa", "From: noreply@grueski.no"); 

} else { 
    echo "<table width='1091px' background='img/hvit_trans.png' style='border: 1px solid #000; margin-left: 3px; margin-top: 60px;'> 
                         <tr> 
                             <td><h3>Kontakt Grue IL Skigruppa</h3>/td> 
                        </tr> 
                        <form action='" . $_SERVER['PHP_SELF'] . "' method='POST'> 
                        <tr> 
                            <td>Ditt emne*</td><td><input type='text' name='emne' value='Ditt emne her...' size='25'</td> 
                        </tr> 
                        <tr> 
                            <td>Ditt fulle navn*</td><td><input type='text' name='navn' value='Ditt navn her...' size='25'></td> 
                        </tr> 
                        <tr> 
                            <td>Din e-post*</td><td><input type='text' name='email' value='Din e-post her...' size='25'></td> 
                        </tr> 
                        <tr> 
                            <td>Din melding</td><td><textarea name='tekst' rows='10' cols='20'></textarea></td> 
                        </tr> 
                        <tr> 
                            <td><input type='submit' name='send' value='Send din melding!'></td> 
                        </tr> 
                        </form> 
                </table>"; 
} 
?>
 

adeneo

Medlem
Tester du dette på en server med et installert mail program som virker, slik som sendmail eller postfix ?

Dersom du prøver dette på en WAMP server vil normalt ikke mail funksjonene virke med mindre du setter opp et mail program, ettersom PHP kun bruker det mailprogrammet som er installert på serveren.

Sjekk også at mailen ikke blir stoppet av spamfilter osv, og at adressen og oppbygningen av mailen er riktig.
 
Topp