Geen melding nee. Verder werk hij zonder de bovenste code wel.
Link gekopieerd
PHP Parse error: syntax error, unexpected '=' in /var/www/html/index.php on line 13
Link gekopieerd
Dat krijg je ervan, als je andermans codes gaat kopieeren/plakken, terwijl je er zelf geen kennis van hebt. Je haalt teveel op je hals Bernard, begin eerst eens rustig html te leren voor je op php overgaat.
@-SanThe-
Das niet enige fout in dit script, als je goed kijkt, zie je dat er 2x mail() voorkomt en dat al zijn $_POST niet deugt.
Link gekopieerd
- SanThe - op 06/09/2015 18:53:03
PHP Parse error: syntax error, unexpected '=' in /var/www/html/index.php on line 13
Deze foutmelding verschijnt niet op het scherm, maar komt uit de log-file van Apache.
Als deze fout opgelost is dan verschijnen de andere meldingen weer gewoon op het scherm.
Link gekopieerd
DavY -
06-09-2015 19:17
gewijzigd op 06-09-2015 19:21
Maar er zit inderdaad ook een fout in Line 13:
$e-mailadres = $_POST['email']; De fout is '-'.
@-SanThe-
Ik zie hem anders wel verschijnen hoor.
Link gekopieerd
Hi, dank voor jullie reactie.
Ik begrijp dat het beter is om eerst wat dieper op het leren van de codes in te gaan ipv kopiëren van andere sites. Het is alleen zo dat ik dit maar één keer wil doen. Daarnaast is het gek dat het eerst goed werkt en met die code zie ik niets meer.
Link gekopieerd
- SanThe -
06-09-2015 19:23
gewijzigd op 06-09-2015 19:25
@DavY:
Dat geeft dus die bovenstaande error die alleen in de log-file te zien is.
Ik dacht: Laat TS er eerst maar eens naar kijken.
Maar jij geeft gelijk al het probleem aan.
Link gekopieerd
Heay! Ik zie weer wat.
Ik ga een aan de slag met de error die zichtbaar is.
Tnx
Link gekopieerd
DavY -
06-09-2015 21:29
gewijzigd op 06-09-2015 21:51
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);
// Set required fields
$required_fields = array('fullname','email','cellphone','city', 'comment');
// set error messages
$error_messages = array(
'fullname' => 'Vul je naam in.',
'email' => 'Vul je e-mailadres in.',
'cellphone' => 'Vul je telefoonnummer in.',
'city' => 'Kies een stad.',
'comment' => 'Geef een opmerking op'
);
// Set form status
$form_complete = FALSE;
// configure validation array
$validation = array();
// check form submittal
if(!empty($_POST)) {
// Sanitise POST array
foreach($_POST as $key => $value) $_POST[$key] = remove_email_injection(trim($value));
// Loop into required fields and make sure they match our needs
foreach($required_fields as $field) {
// the field has been submitted?
if(!array_key_exists($field, $_POST)) array_push($validation, $field);
// check there is information in the field?
if($_POST[$field] == '') array_push($validation, $field);
// validate the email address supplied
if($field == 'email') if(!validate_email_address($_POST[$field])) array_push($validation, $field);
}
// basic validation result
if(count($validation) == 0) {
// Prepare our content string
$onderwerp = "Mijn onderwerp";
$emailadres = $_POST['email'];
$body = "";
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
$headers .= "From: [email protected] ";
// simple email content
foreach($_POST as $key => $value) {
if($key != 'submit') $body .= $key . ': ' . $value . "\n";
}
// if validation passed ok then send the email
mail($emailadres, $onderwerp, $body, $headers);
// Update form switch
$form_complete = TRUE;
}
}
function validate_email_address($email = FALSE) {
return (preg_match('/^[^@\s]+@([-a-z0-9]+\.)+[a-z]{2,}$/i', $email))? TRUE : FALSE;
}
function remove_email_injection($field = FALSE) {
return (str_ireplace(array("\r", "\n", "%0a", "%0d", "Content-Type:", "bcc:","to:","cc:"), '', $field));
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Contact Form</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href="contactform.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/mootools/1.3.0/mootools-yui-compressed.js"></script>
<script type="text/javascript" src="validation.js"></script>
<script type="text/javascript">
var nameError = '<?php echo $error_messages['fullname']; ?>';
var emailError = '<?php echo $error_messages['email']; ?>';
var cellphoneError = '<?php echo $error_messages['cellphone']; ?>';
var cityError = '<?php echo $error_messages['city']; ?>';
</script>
</head>
<body>
<div id="formWrap">
<div id="form">
</div>
<form action="" method="post" id="comments_form">
<?php if($form_complete === FALSE): ?>
<div class="row">
<div class="label"> Voor en achternaam </div>
<div class="input">
<input type="text" id="fullname" class="detail" name="fullname" value="<?php echo isset($_POST['fullname'])? $_POST['fullname'] : ''; ?>" /><?php if(in_array('fullname', $validation)): ?><span class="error"><?php echo $error_messages['fullname']; ?></span><?php endif; ?>
<div class="context"></div>
</div>
</div>
<div class="row">
<div class="label"> E-mailadres </div>
<div class="input">
<input type="text" id="e-mail" class="detail" name="email" value="<?php echo isset($_POST['email'])? $_POST['email'] : ''; ?>" /><?php if(in_array('email', $validation)): ?><span class="error"><?php echo $error_messages['email']; ?></span><?php endif; ?>
<div class="context"></div>
</div>
</div>
<div class="row">
<div class="label"> Telefoonnummer </div>
<div class="input">
<input type="number" id="cellphone" class="detail" name="cellphone" value="<?php echo isset($_POST['cellphone'])? $_POST['cellphone'] : ''; ?>" /><?php if(in_array('cellphone', $validation)): ?><span class="error"><?php echo $error_messages['cellphone']; ?></span><?php endif; ?>
<div class="context"></div>
</div>
</div>
<div class="row">
<div class="label"> In welke stad? </div>
<div class="input">
<input type="text" id="city" class="" name="city" value="<?php echo isset($_POST['city'])? $_POST['city'] : ''; ?>" /><?php if(in_array('city', $validation)): ?><span class="error"><?php echo $error_messages['city']; ?></span><?php endif; ?>
</div>
</div>
<div class="row">
<div class="label"> Opmerkingen </div>
<div class="input">
<textarea id= "comment" name="comment" class="mess"><?php echo isset($_POST['comment'])? $_POST['comment'] : ''; ?></textarea><?php if(in_array('comment', $validation)): ?><span class="error"><?php echo $error_messages['comment']; ?></span><?php endif; ?>
</div>
</div>
<div class="submit">
<input type= "submit" id="submit" name="submit" value="send message" />
</div>
</form>
<?php else: ?>
<p>Thank you for your Message!</p>
<script type="text-javascript">
window.setTimeout("location=('index.html');",5000)
</script>
<?php endif; ?>
</div>
</body>
</html>
Ik heb alleen kleine foutjes omtrent mail() en $_POST gecorrigeerd. De rest is aan je om verder uit te zoeken of vraag een van de jongens hier om je verder te helpen Bernard.
Link gekopieerd
Bedankt Davy,
Het werkt nu inderdaad alleen ontvang ik nu zelf geen mail wat degene heeft ingevuld.
Link gekopieerd