PHP toevoegen aan de website

Status
Niet open voor verdere reacties.

boukjje

Nieuwe gebruiker
Lid geworden
7 jun 2010
Berichten
2
Hallo, ik ben nieuw in het werken met PHP en snap er dus ook helemaal niks van.
Nou wou ik op mijn website een pagina hebben waarmee je mij een berichtje kan sturen. met een balkje voor je naam, je email en je bericht. Van een klasgenoot heb ik nu een PHP bestand gekregen en op zijn website ziet dat er echt heel mooi en professioneel uit. Alleen bij mij wil het niet echt werken als ik dat PHP bestand op de pagina van contact zet die gemaakt is in HTML, kan iemand mij helpen hoe ik dit PHP script werkend op mijn website krijg?
 
Laatst bewerkt door een moderator:
extentie zeker php zijn en begintag <?php en eind tag ?> moet voldoende zijn ander zet je het script hierop
 
Met alleen het PHP-script kun je het niet opmaken, het netjes laten zien, hé?
Maar zoals hierboven al wordt gezegd moet je inderdaad beginnen met <?php en eindigen met ?>.

Opmaken doe je met een stylesheet. ;)
 
PHP:
<? 
// geef e-mail adres op van ontvanger 
$mail_ontv = "-";
$subjectintro = "[Ingevuld contactformulier -]";

// is niet 100% !!! 
function checkmail($mail) 
{ 
    $email_host = explode("@", $mail); 
    $email_host = $email_host['1']; 
    $email_resolved = gethostbyname($email_host); 

    if ($email_resolved != $email_host && eregi("^[0-9a-z]([-_.~]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$mail)) 
        $valid = 1; 

    return $valid; 
} 

// als er niet op submit is gedrukt, of als er wel op is gedrukt maar niet alles ingevoerd is 
if (!$_POST['submit'] || $_POST['submit'] && (!$_POST['naam'] || !$_POST['mail'] || !checkmail($_POST['mail']) || !$_POST['msggs'] || !$_POST['onderwerp'])) 
{ 
    if ($_POST['submit'] && (!$_POST['naam'] || !$_POST['mail'] || !checkmail($_POST['mail']) || !$_POST['msggs'] || !$_POST['onderwerp']))   
    { 
        echo "<font color=\"red\" size=\"bigger\">An error occured</font> "; 
        echo "Make sure you have entered a valid email adress.<p>"; 
    } 
      
    // form + tabel 
    echo "
	<form method=\"post\" action=\"" . $_SERVER['PHP_SELF'] . "\">
	<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">  
	
    <!-- naam-->
    		<tr><td>Name:</td></tr> 
    		<tr><td><input class=\"input\" type=\"text\" name=\"naam\" value=\"" . $_POST['naam'] . "\" /></td></tr> 
      
    <!-- space -->
    <tr><td>&nbsp;</td></tr> 
      
    <!-- mail -->
    <tr><td>E-mail adress:</td></tr> 
    <tr><td><input class=\"input\" type=\"text\" name=\"mail\" value=\"" . $_POST['mail'] . "\" /></td></tr> 
      
    <!-- space -->
    <tr><td>&nbsp;</td></tr> 
      
    <!-- mail -->
    <tr><td>Subject:</td></tr> 
    <tr><td><input class=\"input\" type=\"text\" name=\"onderwerp\" value=\"" . $_POST['onderwerp'] . "\" /></td></tr> 
      
    <!-- space -->
    <tr><td>&nbsp;</td></tr> 
      
    <!-- msg -->
    <tr><td>Message:</td></tr> 
    <tr><td><textarea class=\"inputmsg\" name=\"msggs\" rows=\"6\" cols=\"45\">" . htmlentities($_POST['msggs']) . "</textarea></td></tr> 
      
    <!-- space -->
    <tr><td>&nbsp;</td></tr> 
      
    <!-- button -->
    <tr><td>&nbsp;</td></tr> 
    <tr><td><button style=\"background-color:#999999; cursor: pointer;\" name=\"submit\" value=\"Send\"
onmouseover=\"pic.src='img/send-btn-over.png'\"
onmouseout=\"pic.src='img/send-btn.png'\"
><img name=\"pic\" src=\"img/send-btn.png\" alt=\"Picture\" /></button></td></tr> 
      
    <!-- sluit form + tabel -->
    
    </table>
	</form> "; 
} 
// versturen naar 
Boukje Hijma
{      
    // set datum 
    $datum = date("d.m.Y H:i"); 
      
    // set ip 
    $ip = $_SERVER['REMOTE_ADDR']; 
      
    $inhoud_mail = "===================================================\n"; 
    $inhoud_mail .= "Ingevulde contact formulier\n"; 
    $inhoud_mail .= "===================================================\n\n"; 
    
    $inhoud_mail .= $_SERVER['SCRIPT_URI'] . "\n\n";

    $inhoud_mail .= "Naam: " . $_POST['naam'] . "\n"; 
	$inhoud_mail .= "Onderwerp: " . $_POST['onderwerp'] . "\n";
    $inhoud_mail .= "E-mail adres: " . $_POST['mail'] . "\n"; 
    $inhoud_mail .= "Bericht:\n"; 
    $inhoud_mail .= $_POST['msggs'] . "\n\n"; 
      
    $inhoud_mail .= "Verstuurd op " . $datum . " via het ip " . $ip . "\n\n"; 
      
    $inhoud_mail .= "===================================================\n\n"; 
    
    // -------------------- 
    // spambot protectie 
    // ------ 
    // van de tutorial: [url]http://www.phphulp.nl/php/tutorials/10/340/[/url] 
    // ------ 
    
    $headers = "From: " . $_POST['naam'] . " <" . $_POST['mail'] . ">";
    
    $headers = stripslashes($headers);
    $headers = str_replace("\n", "", $headers); // Verwijder \n 
    $headers = str_replace("\r", "", $headers); // Verwijder \r 
    $headers = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $headers)); // Slashes van quotes 
    
    $_POST['onderwerp'] = str_replace("\n", "", $_POST['onderwerp']); // Verwijder \n 
    $_POST['onderwerp'] = str_replace("\r", "", $_POST['onderwerp']); // Verwijder \r 
    $_POST['onderwerp'] = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $_POST['onderwerp'])); // Slashes van quotes 
     
    mail($mail_ontv, $subjectintro, $inhoud_mail, $headers); 
     
    echo "<h1>Je berichtje is verstuurd!</h1>";
    
    echo "<p>Dank je wel voor je reactie of vraag.</p>"; 
    echo "<p>Ik zal zo snel mogelijk proberen te antwoorden.</p>"; 
} 
?>
 
Laatst bewerkt door een moderator:
Is PHP wel geïnstalleerd en correct ingesteld in je webserver?

Tijs.
 
toch altijd eens op php klikken
Ik heb enkele wijzigingen doorgevoerd maar vindt bij de vraagtekens toch iets wat niet kan is het commentaar functie of else of ...
PHP:
<?
// geef e-mail adres op van ontvanger
$mail_ontv = "-";
$subjectintro = "[Ingevuld contactformulier -]";

// is niet 100% !!!
function checkmail($mail){
	$email_host = explode("@", $mail);
	$email_host = $email_host['1'];
	$email_resolved = gethostbyname($email_host);
	if ($email_resolved != $email_host && eregi("^[0-9a-z]([-_.~]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$mail))
		$valid = 1;
	return $valid;
}

// als er niet op submit is gedrukt, of als er wel op is gedrukt maar niet alles ingevoerd is
if (!$_POST['submit'] || $_POST['submit'] && (!$_POST['naam'] || !$_POST['mail'] || 
			!checkmail($_POST['mail']) || !$_POST['msggs'] || !$_POST['onderwerp'])){
	if ($_POST['submit'] && (!$_POST['naam'] || !$_POST['mail'] || !checkmail($_POST['mail']) || !$_POST['msggs'] || !$_POST['onderwerp'])){
		echo "<font color=\"red\" size=\"bigger\">An error occured</font> ";
		echo "Make sure you have entered a valid email adress.<p>";
	}
	// form + tabel
	?>
		<form method="post" action="<?php print  $_SERVER['PHP_SELF'] ;?>">
			<table border="0" cellspacing="0" cellpadding="0">	
	<!-- naam-->	<tr><td>Name:</td></tr>
	<tr><td><input class="input" type="text" name="naam" value="<?php print $_POST['naam'] ;?>" /></td></tr>
	<!-- space -->	<tr><td>&nbsp;</td></tr>
	<!-- mail -->	<tr><td>E-mail adress:</td></tr>
	<tr><td><input class="input" type="text" name="mail" value="<?php print $_POST['mail'] ;?>"/></td></tr>
	<!-- space -->	<tr><td>&nbsp;</td></tr>
	<!-- mail -->	<tr><td>Subject:</td></tr>
	<tr><td><input class="input" type="text" name="onderwerp" value="<?php print $_POST['onderwerp'] ;?>"/></td></tr>
	<!-- space -->	<tr><td>&nbsp;</td></tr>
	<!-- msg -->	<tr><td>Message:</td></tr>
	<tr><td><textarea class="inputmsg" name="msggs" rows="6" cols="45"><?php print htmlentities($_POST['msggs']);?></textarea></td></tr>
	<!-- space -->	<tr><td>&nbsp;</td></tr>
	<!-- button -->	<tr><td>&nbsp;</td></tr>
	<tr><td>
	<button style="background-color:#999999; cursor: pointer;" name="submit" value="Send" 
	onmouseover="pic.src='img/send-btn-over.png'"	onmouseout="pic.src='img/send-btn.png'"
	><img name="pic" src="img/send-btn.png" alt="Picture" /></button></td></tr>
	<!-- sluit form + tabel -->
	</table>
	</form>
	<?php
}
// versturen naar 
Boukje Hijma//???!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!???
{
// set datum
$datum = date("d.m.Y H:i");
// set ip
$ip = $_SERVER['REMOTE_ADDR'];

$inhoud_mail = "===================================================\n";
$inhoud_mail .= "Ingevulde contact formulier\n";
$inhoud_mail .= "===================================================\n\n";
$inhoud_mail .= $_SERVER['SCRIPT_URI'] . "\n\n";
$inhoud_mail .= "Naam: " . $_POST['naam'] . "\n";
$inhoud_mail .= "Onderwerp: " . $_POST['onderwerp'] . "\n";
$inhoud_mail .= "E-mail adres: " . $_POST['mail'] . "\n";
$inhoud_mail .= "Bericht:\n";
$inhoud_mail .= $_POST['msggs'] . "\n\n";
$inhoud_mail .= "Verstuurd op " . $datum . " via het ip " . $ip . "\n\n";
$inhoud_mail .= "===================================================\n\n";

// --------------------
// spambot protectie
// ------
// van de tutorial: http://www.phphulp.nl/php/tutorials/10/340/
// ------
$headers = "From: " . $_POST['naam'] . " <" . $_POST['mail'] . ">";
$headers = stripslashes($headers);
$headers = str_replace("\n", "", $headers); // Verwijder \n
$headers = str_replace("\r", "", $headers); // Verwijder \r
$headers = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $headers)); // Slashes van quotes

$_POST['onderwerp'] = str_replace("\n", "", $_POST['onderwerp']); // Verwijder \n
$_POST['onderwerp'] = str_replace("\r", "", $_POST['onderwerp']); // Verwijder \r
$_POST['onderwerp'] = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $_POST['onderwerp'])); // Slashes van quotes

mail($mail_ontv, $subjectintro, $inhoud_mail, $headers);?>
	<h1>Je berichtje is verstuurd!</h1>
	<p>Dank je wel voor je reactie of vraag.</p>
	<p>Ik zal zo snel mogelijk proberen te antwoorden.</p>
<?php}
?>
 
Zo zou het bijvoorbeeld kunnen. Ik heb wat lijnen gezet om het wat duidelijker te maken. Als je het niet snapt hoor ik het wel.

1 html file met de naam mailform.html:

----------------------------------------------------------------------------------------------------------------------------


<form action="mailform.php" method="post" name="form1" id="form1">
<table width="450" border="0" cellspacing="0" cellpadding="0" align="center">

<tr>
<td background="styles/images/gif/clearpixel.gif" class="text">
<font size="-3" face="arial">
<span class="required"></span><br />
<input type="text" name="Naam" size="20" maxlength="100" style="border: 0px;font-size:8px;margin-bottom: 4px;font-weight:bold;" />
<span class="required"></span><br />
<input type="text" name="email" size="14" maxlength="100" style="border: 0px;font-size:8px;margin-bottom: 5px;font-weight:bold;" />
<span class="required"></span><br />
<input type="text" name="phone" size="20" maxlength="25" style="border: 0px;font-size:8px;font-weight:bold;" />
</br>
<input type="image" SRC="submit.gif" name="submit" value="verstuur" />
</font>
</p>
</td>
</tr>
</table>
</form>

---------------------------------------------------------------------------------------------------------------------------

1 php file met de naam mailform.php

-------------------------------------------------------------------------------------------------------------------------------

<?php
$Naam= $_POST['Naam'];
$email= $_POST['email'];
$phone= $_POST['phone'];

$body = "
Naam: $first_name
Email: $email
Phone: $phone
$message
";

if (!isset($email) || !isset($Naam)) {
header("Location: http://www.sitenaamvoorerror.nl/error.php ");
}
elseif (empty($email) || empty($Naam)) {
header("Location: http://www.sitenaamvoorerror.nl/error.php ");
}
else {
mail("test@live.nl","From: Verzondendoorveld",$body);
header("Location: thankyou.html ");
}
?>
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan