Hallo mensen,
ik schaam me diep, ik maak al een paar jaar websites voor mensen, ben niet een expert op PHP gebied maar krijg de meeste scripten wel draaiend.
Nu stuit ik ineens op een probleem, omdat ik voor iemand een contactformulier moet maken, ik dacht een leuk scriptje gevonden te hebben maar het werkt niet.
Bijna 18 andere php contact form scripts geprobeerd en bijna twee weken van ergernis verder, probeer ik uit wanhoop hier hulp te krijgen :-)
De hosting waar het script op moet gaan werken is Hosting2go, en het probleem is dat het formulier aangeeft dat de inhoud verzonden is, alleen komt er bij mij nooit een mailtje aan.
de pagina die de inhoud van het conatctformulier zou moeten verzenden luid als volgt:
<?php?>
<!-- ***** Configuration *************************************************** -->
<?php
$contact_form_field_name = 'Name:';
$contact_form_field_email = 'E-mail:';
$contact_form_field_subject = 'Subject:';
$contact_form_field_message = 'Message:';
$contact_form_field_number = 'Turing number:';
$contact_form_field_prompt = 'Enter the number displayed above';
$contact_form_button = 'Submit';
$contact_form_sent = 'Message sent';
$contact_form_not_sent = 'Message not sent';
$contact_form_invalid_data = 'Please, correct the fields marked with red';
?>
<div class="contact_form">
<!-- ***** PHP ************************************************************* -->
<?php
// ***** Functions *****
function contact_form_post($name)
{
return isset($_POST[$name]) ? htmlentities($_POST[$name], ENT_COMPAT) : '';
}
// ***** Send Mail *****
if (isset($_POST['Contact']))
{
if (get_magic_quotes_gpc() && !function_exists('strip_slashes_deep'))
{
function strip_slashes_deep($value)
{
if (is_array($value)) return array_map('strip_slashes_deep', $value);
return stripslashes($value);
}
$_GET = strip_slashes_deep($_GET);
$_POST = strip_slashes_deep($_POST);
$_COOKIE = strip_slashes_deep($_COOKIE);
}
$patern_aux1 = "(\\w+(-\\w+)*)";
$patern_aux2 = "($patern_aux1\\.)*$patern_aux1@($patern_aux1\\.)+$patern_aux1";
$valid_name = isset($_POST['Name' ]) && trim($_POST['Name' ]);
$valid_email = isset($_POST['Email' ]) && preg_match("/^$patern_aux2$/iX",
$_POST['Email']);
$valid_subject = isset($_POST['Subject']) && trim($_POST['Subject']);
$valid_message = isset($_POST['Message']) && trim($_POST['Message']);
$valid_number = isset($_POST['Number' ]) && isset($_SESSION['Number']) &&
$_POST['Number'] == $_SESSION['Number'];
if (!$valid_name) $contact_form_field_name = "<em>$contact_form_field_name </em>";
if (!$valid_email) $contact_form_field_email = "<em>$contact_form_field_email </em>";
if (!$valid_subject) $contact_form_field_subject = "<em>$contact_form_field_subject</em>";
if (!$valid_message) $contact_form_field_message = "<em>$contact_form_field_message</em>";
if (!$valid_number) $contact_form_field_number = "<em>$contact_form_field_number </em>";
if ($valid_name && $valid_email && $valid_subject && $valid_message && $valid_number)
{
$error_reporting = error_reporting(E_ERROR | E_PARSE);
$mail_sent = mail($contact_form_your_email,
$_POST['Subject'],
$contact_form_message_prefix . $_POST['Message'],
"To: $contact_form_your_name <$contact_form_your_email>\r\n" .
"From: {$_POST['Name']} <{$_POST['Email']}>\r\n");
error_reporting($error_reporting);
if ($mail_sent)
echo "<div class=\"error\"><em> $contact_form_sent </em></div>";
else echo "<div class=\"error\"><em class=\"error\">$contact_form_not_sent</em></div>";
if ($mail_sent) $_POST = array();
}
else echo "<div class=\"contact_form\"><div
class=\"error\"><em>$contact_form_invalid_data</em></div></div>";
}
$_SESSION['Number'] = str_pad(rand(0, 9999), 4, '0', STR_PAD_LEFT);
?>
<!-- ***** IE Patch ******************************************************** -->
<!--[if IE]><style type="text/css"> div.contact_form div.input input { margin-top: -1px;
margin-bottom: -1px; } </style><![endif]-->
<!--[if IE]><style type="text/css"> div.contact_form div.input textarea { margin-top: -1px;
margin-bottom: -1px; } </style><![endif]-->
<!-- ***** XHTML *********************************************************** -->
<?php if ( $contact_form_xhtml) { ?>
<form method="post" action="<?=$_SERVER['REQUEST_URI'];?>">
<table>
<tr><th><?=$contact_form_field_name; ?></th><td><div class="input"><input name=
"Name" type="text" value="<?=contact_form_post( 'Name');?>" /></div></td></tr>
<tr><th><?=$contact_form_field_email; ?></th><td><div class="input"><input name=
"Email" type="text" value="<?=contact_form_post( 'Email');?>" /></div></td></tr>
<tr><th><?=$contact_form_field_subject;?></th><td><div class="input"><input
name="Subject" type="text" value="<?=contact_form_post('Subject');?>"
/></div></td></tr>
<tr><th><?=$contact_form_field_message;?></th><td><div class="input"><textarea
name="Message" cols="35"
rows="6"><?=contact_form_post('Message');?></textarea></div></td></tr>
<tr><th><?=$contact_form_field_number;?></th><td>
<div class="input" style="float: left;"><input type="text" name="Number"
autocomplete="off" /></div>
<img width="60" height="17"
src="<?=$contact_form_image_url;?>?sname=<?=session_name();?>&rand=<?=rand();?>" alt=""
/>
<br style="clear: both" />
<small><?=$contact_form_field_prompt;?></small>
</td></tr>
<tr><th></th><td><input id="submit_contact" class="submit" type="submit" name="Contact"
value="<?=$contact_form_graphic_button ? '' : $contact_form_button;?>" /></td></tr>
</table>
</form>
<?php } ?>
<!-- ***** HTML ************************************************************ -->
<?php if (!$contact_form_xhtml) { ?>
<form method="post" action="<?=$_SERVER['REQUEST_URI'];?>">
<table>
<tr><th><?=$contact_form_field_name; ?></th><td><div class="input"><input name=
"Name" type="text" value="<?=contact_form_post( 'Name');?>" ></div></td></tr>
<tr><th><?=$contact_form_field_email; ?></th><td><div class="input"><input name=
"Email" type="text" value="<?=contact_form_post( 'Email');?>" ></div></td></tr>
<tr><th><?=$contact_form_field_subject;?></th><td><div class="input"><input
name="Subject" type="text" value="<?=contact_form_post('Subject');?>"
></div></td></tr>
<tr><th><?=$contact_form_field_message;?></th><td><div class="input"><textarea
name="Message" cols="35"
rows="6"><?=contact_form_post('Message');?></textarea></div></td></tr>
<tr><th><?=$contact_form_field_number;?></th><td>
<div class="input" style="float: left;"><input type="text" name="Number"
autocomplete="off"></div>
<img width="60" height="17" src="<?=$contact_form_image_url;?>?sname=<?=session_name();?>"
alt="">
<br style="clear: both">
<small><?=$contact_form_field_prompt;?></small>
</td></tr>
<tr><th></th><td><input id="submit_contact" class="submit" type="submit" name="Contact"
value="<?=$contact_form_graphic_button ? '' : $contact_form_button;?>"></td></tr>
</table></form><?php } ?></div>
Iemand misschien die weet waar mijn probleem nu in zit, of weet wat ik fout doe?
Ik word langzamerhand gek hiervan, ik heb toch echt goed lopen zoeken via google, maar kom er alleen niet uit (ok ik geef het eerlijk toe
)
ik schaam me diep, ik maak al een paar jaar websites voor mensen, ben niet een expert op PHP gebied maar krijg de meeste scripten wel draaiend.
Nu stuit ik ineens op een probleem, omdat ik voor iemand een contactformulier moet maken, ik dacht een leuk scriptje gevonden te hebben maar het werkt niet.
Bijna 18 andere php contact form scripts geprobeerd en bijna twee weken van ergernis verder, probeer ik uit wanhoop hier hulp te krijgen :-)
De hosting waar het script op moet gaan werken is Hosting2go, en het probleem is dat het formulier aangeeft dat de inhoud verzonden is, alleen komt er bij mij nooit een mailtje aan.
de pagina die de inhoud van het conatctformulier zou moeten verzenden luid als volgt:
<?php?>
<!-- ***** Configuration *************************************************** -->
<?php
$contact_form_field_name = 'Name:';
$contact_form_field_email = 'E-mail:';
$contact_form_field_subject = 'Subject:';
$contact_form_field_message = 'Message:';
$contact_form_field_number = 'Turing number:';
$contact_form_field_prompt = 'Enter the number displayed above';
$contact_form_button = 'Submit';
$contact_form_sent = 'Message sent';
$contact_form_not_sent = 'Message not sent';
$contact_form_invalid_data = 'Please, correct the fields marked with red';
?>
<div class="contact_form">
<!-- ***** PHP ************************************************************* -->
<?php
// ***** Functions *****
function contact_form_post($name)
{
return isset($_POST[$name]) ? htmlentities($_POST[$name], ENT_COMPAT) : '';
}
// ***** Send Mail *****
if (isset($_POST['Contact']))
{
if (get_magic_quotes_gpc() && !function_exists('strip_slashes_deep'))
{
function strip_slashes_deep($value)
{
if (is_array($value)) return array_map('strip_slashes_deep', $value);
return stripslashes($value);
}
$_GET = strip_slashes_deep($_GET);
$_POST = strip_slashes_deep($_POST);
$_COOKIE = strip_slashes_deep($_COOKIE);
}
$patern_aux1 = "(\\w+(-\\w+)*)";
$patern_aux2 = "($patern_aux1\\.)*$patern_aux1@($patern_aux1\\.)+$patern_aux1";
$valid_name = isset($_POST['Name' ]) && trim($_POST['Name' ]);
$valid_email = isset($_POST['Email' ]) && preg_match("/^$patern_aux2$/iX",
$_POST['Email']);
$valid_subject = isset($_POST['Subject']) && trim($_POST['Subject']);
$valid_message = isset($_POST['Message']) && trim($_POST['Message']);
$valid_number = isset($_POST['Number' ]) && isset($_SESSION['Number']) &&
$_POST['Number'] == $_SESSION['Number'];
if (!$valid_name) $contact_form_field_name = "<em>$contact_form_field_name </em>";
if (!$valid_email) $contact_form_field_email = "<em>$contact_form_field_email </em>";
if (!$valid_subject) $contact_form_field_subject = "<em>$contact_form_field_subject</em>";
if (!$valid_message) $contact_form_field_message = "<em>$contact_form_field_message</em>";
if (!$valid_number) $contact_form_field_number = "<em>$contact_form_field_number </em>";
if ($valid_name && $valid_email && $valid_subject && $valid_message && $valid_number)
{
$error_reporting = error_reporting(E_ERROR | E_PARSE);
$mail_sent = mail($contact_form_your_email,
$_POST['Subject'],
$contact_form_message_prefix . $_POST['Message'],
"To: $contact_form_your_name <$contact_form_your_email>\r\n" .
"From: {$_POST['Name']} <{$_POST['Email']}>\r\n");
error_reporting($error_reporting);
if ($mail_sent)
echo "<div class=\"error\"><em> $contact_form_sent </em></div>";
else echo "<div class=\"error\"><em class=\"error\">$contact_form_not_sent</em></div>";
if ($mail_sent) $_POST = array();
}
else echo "<div class=\"contact_form\"><div
class=\"error\"><em>$contact_form_invalid_data</em></div></div>";
}
$_SESSION['Number'] = str_pad(rand(0, 9999), 4, '0', STR_PAD_LEFT);
?>
<!-- ***** IE Patch ******************************************************** -->
<!--[if IE]><style type="text/css"> div.contact_form div.input input { margin-top: -1px;
margin-bottom: -1px; } </style><![endif]-->
<!--[if IE]><style type="text/css"> div.contact_form div.input textarea { margin-top: -1px;
margin-bottom: -1px; } </style><![endif]-->
<!-- ***** XHTML *********************************************************** -->
<?php if ( $contact_form_xhtml) { ?>
<form method="post" action="<?=$_SERVER['REQUEST_URI'];?>">
<table>
<tr><th><?=$contact_form_field_name; ?></th><td><div class="input"><input name=
"Name" type="text" value="<?=contact_form_post( 'Name');?>" /></div></td></tr>
<tr><th><?=$contact_form_field_email; ?></th><td><div class="input"><input name=
"Email" type="text" value="<?=contact_form_post( 'Email');?>" /></div></td></tr>
<tr><th><?=$contact_form_field_subject;?></th><td><div class="input"><input
name="Subject" type="text" value="<?=contact_form_post('Subject');?>"
/></div></td></tr>
<tr><th><?=$contact_form_field_message;?></th><td><div class="input"><textarea
name="Message" cols="35"
rows="6"><?=contact_form_post('Message');?></textarea></div></td></tr>
<tr><th><?=$contact_form_field_number;?></th><td>
<div class="input" style="float: left;"><input type="text" name="Number"
autocomplete="off" /></div>
<img width="60" height="17"
src="<?=$contact_form_image_url;?>?sname=<?=session_name();?>&rand=<?=rand();?>" alt=""
/>
<br style="clear: both" />
<small><?=$contact_form_field_prompt;?></small>
</td></tr>
<tr><th></th><td><input id="submit_contact" class="submit" type="submit" name="Contact"
value="<?=$contact_form_graphic_button ? '' : $contact_form_button;?>" /></td></tr>
</table>
</form>
<?php } ?>
<!-- ***** HTML ************************************************************ -->
<?php if (!$contact_form_xhtml) { ?>
<form method="post" action="<?=$_SERVER['REQUEST_URI'];?>">
<table>
<tr><th><?=$contact_form_field_name; ?></th><td><div class="input"><input name=
"Name" type="text" value="<?=contact_form_post( 'Name');?>" ></div></td></tr>
<tr><th><?=$contact_form_field_email; ?></th><td><div class="input"><input name=
"Email" type="text" value="<?=contact_form_post( 'Email');?>" ></div></td></tr>
<tr><th><?=$contact_form_field_subject;?></th><td><div class="input"><input
name="Subject" type="text" value="<?=contact_form_post('Subject');?>"
></div></td></tr>
<tr><th><?=$contact_form_field_message;?></th><td><div class="input"><textarea
name="Message" cols="35"
rows="6"><?=contact_form_post('Message');?></textarea></div></td></tr>
<tr><th><?=$contact_form_field_number;?></th><td>
<div class="input" style="float: left;"><input type="text" name="Number"
autocomplete="off"></div>
<img width="60" height="17" src="<?=$contact_form_image_url;?>?sname=<?=session_name();?>"
alt="">
<br style="clear: both">
<small><?=$contact_form_field_prompt;?></small>
</td></tr>
<tr><th></th><td><input id="submit_contact" class="submit" type="submit" name="Contact"
value="<?=$contact_form_graphic_button ? '' : $contact_form_button;?>"></td></tr>
</table></form><?php } ?></div>
Iemand misschien die weet waar mijn probleem nu in zit, of weet wat ik fout doe?
Ik word langzamerhand gek hiervan, ik heb toch echt goed lopen zoeken via google, maar kom er alleen niet uit (ok ik geef het eerlijk toe