PDA

View Full Version : Newbie, please help will tell a friend script



lea06
11-10-2006, 06:30 PM
Hi All, I'm trying to get this script to work (or if anyone knows of something similar) but it gives me a pars error on line 41.
I need to get this working for a client asap, so am testing it out first
Please can some kind person help me :)
Thank You
Lea

First part I have saved as tellafriend.php

<?php

// This following statement must not be changed.
// Copyright (c) Michael Bloch and Taming The Beast.
// Tell-A-Friend script V 2.1 Updated September 19 2006
// Taming the Beast.net - http://www.tamingthebeast.net
// Free Web Marketing and Ecommerce Resources and Tools
// By using this script you agree to indemnify Taming the Beast
// from from any liability that might arise from its use.
// The preceding statement must not be changed.
if(count($_POST)) {
# This part strips out nasty code that a malicious
# person may try to inject into the form
foreach(array('fmail1','fmail2','fmail3','email',' name') as $key) $_POST[$key] = strip_tags($_POST[$key]);
if(!is_secure($_POST)) { die("Hackers begone");}
# This part submits a notification to you when
# the form is submitted
// Email address for copies to be sent to - change to suit
$emailto = "grant774m****.com";
// Notification email subject text for copies
$esubject = "Recommendation form submission";
// Email body text for notifications
$emailtext = "
$_POST[name] has used your recommendation form using an email address of $_POST[email]
The people the recommendation has been submitted to are:
$_POST[fmail1]
$_POST[fmail2]
$_POST[fmail3]
The page recommended:
$_POST[refurl]
";
# This function sends the email to you
*****("$emailto", $esubject, $emailtext, "From: $_POST[email]");
# This part is the function for sending to recipients
// Page to display after successful submission
// Change the thankyou.htm to suit
$thankyoupage = "www.lm-lakeland-design.co.uk/LM/Thank_You.htm (http://www.lm-lakeland-design.co.uk/LM/Thank_You.htm)";
// Subject line for the recommendation - change to suit
$tsubject = "A web page recommendation from $_POST[name]";
// Change the text below for the email
// Be careful not to change anyt "$_POST[value]" bits
$ttext = "
Hi,
$_POST[name], whose email address is $_POST[email] thought you may be interested in this web page.
$_POST[refurl]
$_POST[name] has used our Tell-a-Friend form to send you this note.
We look forward to your visit!
";
# This sends the note to the addresses submitted
*****("$_POST[fmail1],$_POST[fmail2],$_POST[fmail3]", $tsubject, $ttext, "FROM: $_POST[email]");
# After submission, the thank you page
header("Location: $thankyoupage");
exit;
}
# Nothing further can be changed. Leave the below as is
function is_secure($ar) {
$reg = "/(Content-Type|Bcc|MIME-Version|Content-Transfer-Encoding)/i";
if(!is_array($ar)) { return preg_match($reg,$ar);}
$incoming = array_values_recursive($ar);
foreach($incoming as $k=>$v) if(preg_match($reg,$v)) return false;
return true;
}
function array_values_recursive($array) {
$arrayValues = array();
foreach ($array as $key=>$value) {
if (is_scalar($value) || is_resource($value)) {
$arrayValues[] = $value;
$arrayValues[] = $key;
}
elseif (is_array($value)) {
$arrayValues[] = $key;
$arrayValues = array_merge($arrayValues, array_values_recursive($value));
}
}
return $arrayValues;
}
?>


Second part I have saved a recform.php
<html>
<head>
<title>Recommendation form</title>
<script language="javascript">
<!--
function reset() {
document.tellafriend.name.value="";
document.tellafriend.email.value="";
document.tellafriend.fmail1.value="";
document.tellafriend.fmail2.value="";
document.tellafriend.fmail3.value="";
}
function validate() {

if (document.tellafriend.fmail1.value.length==0) {
alert("Oops! you'll need to enter a friend's email address");
return false;
}
if (document.tellafriend.email.value.length==0) {
alert("Oops! you forget to enter your email address");
return false;
}
if (document.tellafriend.name.value.length==0) {
alert("Oops! you forgot to enter your name");
return false;
}
document.tellafriend.submit()
return true;
}
//-->
</script>
</head>
<body onload="reset()" topmargin="0" leftmargin="0">
<p>
<center>
</center>
<table width="450" cellpadding="0" cellspacing="0" align="center">
<tr valign="top">
<td valign="middle" align="center">&nbsp;
Complete the details below to send a link to the page:<br>
<? $refurl = $_SERVER['HTTP_REFERER']; ?>
<? print $refurl;?>
<form name="tellafriend" action="tellafriend.php" method="post" onsubmit="return checkfields()">&nbsp;
<div align="center">
<center>
<table border="0" cellpadding="10" cellspacing="0">
<tr>
<td> *your name:</td>
<td>
<input size="30" name="name" maxlength="45">
</td>
</tr>
<tr>
<td>*your email:</td>
<td>
<input size="30" name="email" maxlength="45">
</td>
</tr>
<tr>
<td colspan="2">
<p align="center">Enter your friend's email addresses:</td>
</tr>
<tr>
<td>*email 1:</td>
<td>
<input size="30" name="fmail1" maxlength="50">
</td>
</tr>
<tr>
<td>email 2:</td>
<td>
<input size="30" name="fmail2" maxlength="50">
</td>
</tr>
<tr>
<td>email 3:</td>
<td>
<input size="30" name="fmail3" maxlength="50">
</td>
</tr>
<tr>
<td colspan="2">
<p align="center">
The email that will be sent to will contain your name &amp; email address. <br>
<input onclick="validate();" type="button" value="click once to send">
<input type=hidden name=refurl value="<? print $refurl;?>">
</td>
</tr>
</table>
</center>
</div>
</form>
</td>
</tr>
<tr valign="top">
<td valign="middle" align="center">
&nbsp;
</td>
</tr>
</table>
</body>
</html>

navaldesign
11-10-2006, 07:03 PM
I used it as it is and it worked ok. Please post the URL of your page so i can have a look.

lea06
11-10-2006, 07:09 PM
Thanks
http://www.christoni.co.uk/christoni/recommend.html

lea06
11-10-2006, 07:17 PM
sorry
http://www.christoni.co.uk/christoni/Recommend.html

navaldesign
11-10-2006, 07:49 PM
First of all, your form doesn't submit, and this is due to the fact that you have missed the following part which should have been pasted in the "Between Head" tag of your page:

<head>
<title>Recommendation form</title>
<script language="javascript">
<!--
function reset() {
document.tellafriend.name.value="";
document.tellafriend.email.value="";
document.tellafriend.fmail1.value="";
document.tellafriend.fmail2.value="";
document.tellafriend.fmail3.value="";
}
function validate() {
if (document.tellafriend.fmail1.value.length==0) {
alert("Oops! you'll need to enter a friend's email address");
return false;
}
if (document.tellafriend.email.value.length==0) {
alert("Oops! you forget to enter your email address");
return false;
}
if (document.tellafriend.name.value.length==0) {
alert("Oops! you forgot to enter your name");
return false;
}
document.tellafriend.submit()
return true;
}
//-->
</script>
</head>

Then we will see about the script