Best Web Designs Of the World Forums  

Go Back   Best Web Designs Of the World Forums > PROGRAMMING FORUMS > PHP Forum
Register FAQ Members List Calendar Search Today's Posts Mark Forums Read

Reply
 
LinkBack Thread Tools Display Modes
Old 09-06-2008, 02:50 PM   #1 (permalink)
Junior Member
 
Join Date: Sep 2008
Posts: 2
Default Can anyone provide a php script for a web form on Go Daddy so that I can

choose the email address it sends to? I am creating my first website and have included a web form, which I have operating using GoDaddy's webformmailer.php script. However, that script only works with the email address entered in the Go Daddy hosting account control centre ... therefore all forms from all websites I have on my multiple-domain hosting account will go to the same address. This is not what I want as it defeats the purpose of having multiple domains and multiple email addresses in the one account!!!

Anyway, Go Daddy says I need to create my own code to get it working how I want and they can't help with that. I'm wondering if anyone else has encountered this problem and whether anyone else has found a solution.

I'm very new to web design and even newer to web hosting, so I know little (next to nothing) about coding. Can someone offer an example (please note that I've read elsewhere that Go Daddy doesn't accept 3rd party scripts, so I guess that means it needs to fit within its requirements ... hence why I'm asking if someone who has already found the solution for this specific problem can help!

Below if the code, between [ and ], used within the form itself:

[<form action="webformmailer.php">
<input type="hidden" name="email" value="me@myemailaddress.com" />
<input type="hidden" name="subject" value="Contact Form Submission from My Website" />
<input type="hidden" name="redirect" value="thankyou.html" />
<label><span class="style1">First name:
<input name="First name" type="text" id="First name" size="50" />
</span></label>
<p class="style1">
<label>Surname:
<input name="Surname" type="text" id="Surname" size="50" />
</label>
</p>
<p class="style1">
<label>Address:
<input name="Address" type="text" id="Address" size="50" />
</label>
</p>
<p class="style1">
<label>Suburb:
<input name="Suburb" type="text" id="Suburb" size="50" />
</label>
</p>
<p class="style1">
<label>Postcode:
<input name="Postcode" type="text" id="Postcode" size="50" />
</label>
</p>
<p class="style1">
<label></label>
<label></label>
<label>Home phone:
<input name="Home phone" type="text" id="Home phone" size="50" />
</label>
</p>
<p class="style1">
<label>Mobile phone:
<input name="Mobile phone" type="text" id="Mobile phone" size="50" />
</label>
</p>
<p class="style1">
<label>Email address:
<input name="Email address" type="text" id="Email address" size="50" />
</label>
</p>
<p class="style1">
<label>Message:
<textarea name="Message" cols="42" rows="8" id="Message"></textarea>
</label>
</p>
<p class="style1">
<label>
<input type="submit" name="submit" value="submit" />
</label> <input type="hidden" name="form_order" value="default"/>
<input type="hidden" name="form_delivery" value="default"/>
<input type="hidden" name="form_format" value="default"/>
</form>]

Clicking submit currently initialises the file webformmailer.php, which has the following code (again written within [ and ]) but as stated above this is the file that uses the email address entered in the control panel and regardless of the email address you type in the code above it always sends to that same address:

<?php

if ( !isset($_SERVER['SPI'])) {
die();
}

if (!isset($_SERVER['DOCUMENT_ROOT'])) {
echo("CRITICAL: we seem to be running outside of the norm.\n");
header("Location: http://".$_SERVER["HTTP_HOST"]."/");
die("CRITICAL: Document root unavailable.\n");
}

$request_method = $_SERVER["REQUEST_METHOD"];
if($request_method == "GET") {
$query_vars = $_GET;
}
elseif ($request_method == "POST") {
$query_vars = $_POST;
}
reset($query_vars);

function customsort($a,$b) {
// $a is array for form vars, $b is comma seperated case sensitive field order
// this is case sensitive -- good idea to hrc that.
$data = array();
if ( strstr($b,',') == FALSE ) {
$b = $b.",";
}
$ordering = split(',',$b);
foreach ($ordering as $orderitem) {
if ( ($orderitem != null) && ($orderitem != "") ) {
if (isset($a[$orderitem])) {
$data[$orderitem] = $a[$orderitem];
}
}
}
foreach ($a as $key=>$val) {
$data[$key] = $a[$key];
}
return $data;
}

function xmlentities($string) {
return str_replace ( array('&', '"', "'", '<', '>'), array('&', '"', '&apos;', '<', '>'), $string);
}

$t = date("U");

$formhomedir = preg_replace('/.*\/home\/content/','',$_SERVER['DOCUMENT_ROOT']);
$formhomedir = explode('/',$formhomedir);
$formhome="/home/content".$formhomedir[0]."/".$formhomedir[1]."/".$formh
$formhomedir = preg_replace('/.*\/home\/content/','',$_SERVER['DOCUMENT_ROOT']);
$formhomedir = explode('/',$formhomedir);
$formhome="/home/content".$formhomedir[0]."/".$formhomedir[1]."/".$formhomedir[2]."/".$formhomedir[3]."/".$formhomedir[4]."/data/";
$file_order = ".default";
$file_format = ".text";
$file_interval = ".15m";
$field_order = "";
if (isset($query_vars['form_order'])) {
if ($query_vars['form_order'] != "alpha") {
$field_order=$query_vars['form_order'];
$file_order=".custom";
$query_vars = customsort($query_vars,$field_order);
}
else {
switch ($query_vars['form_order']) {
case "alpha":
uksort($query_vars,'strnatcasecmp');
$file_order=".alpha";
break;
default:
$file_order=".default";
break;
}
}
}
if (isset($query_vars['form_format'])) {
switch ($query_vars['form_format']) {
case "csv":
$file_format = ".csv";
break;
case "html":
$file_format = ".html";
break;
case "xml":
$file_format = ".xml";
break;
case "text":
case "default":
defaul
case "text":
case "default":
default:
$file_format = ".text";
break;
}
}
if (isset($query_vars['form_delivery'])) {
switch ($query_vars['form_delivery']) {
case "hourly":
$file_interval = ".60m";
break;
case "hourly_digest":
$file_interval = ".60mc";
break;
case "daily":
$file_interval = ".24h";
break;
case "daily_digest":
$file_interval = ".24hc";
break;
case "digest":
$file_interval = ".15mc";
break;
case "default":
default:
$file_interval = ".15m";
break;
}
}
$file = $formhome."form_".$t.$file_order.$file_format.$fil e_interval;
$fp = fopen($file,"w");
switch ($file_format) {
case ".csv":
$csvkeys = "";
$csvvals= "";
$firsttime = "";
while (list ($key, $val) = each ($query_vars)) {
if ( ($key == "form_order") ||
($key == "form_format") ||
($key == "form_delivery") ||
($key == "redirect") ) {
}
else {
if ($csvkeys != "") {
$firsttime=",";
}
$tmpkey=escapeshellcmd($key);
$csvkeys = $csvkeys.$firsttime."'".$tmpkey."'";
$tmpval=escapeshel
$tmpkey=escapeshellcmd($key);
$csvkeys = $csvkeys.$firsttime."'".$tmpkey."'";
$tmpval=escapeshellcmd($val);
$csvvals = $csvvals.$firsttime."'".$tmpval."'";
}
}
fputs($fp,"$csvkeys\n");
fputs($fp,"$csvvals\n");
break;
case ".html":
fputs($fp,"<table border=\"1\" cellspacing=\"1\" cellpadding=\"2\">\n");
break;
case ".xml":
fputs($fp,"<form>\n");
break;
}

while (list ($key, $val) = each ($query_vars)) {
if ($key == "redirect") {
$landing_page = $val;
}
if ( ($key == "form_order") ||
($key == "form_format") ||
($key == "form_delivery") ||
($key == "redirect") ) {
}
else {
switch ($file_format) {
case ".html":
fputs($fp,"\t<tr>\n");
fputs($fp,"\t\t<td><b>$key</b></td>\n");
fputs($fp,"\t\t<td>$val</td>\n");
fputs($fp,"\t</tr>\n");

break;
case ".csv":
// content is already output
break;
case ".xml":
fputs($fp,"\t<field>\n");
fputs($fp,"\t\t<fieldname>".xmlentities($key)."</fieldname>\n");
fputs($fp,"\t\t<fieldvalue>".xmlentities($val)."</fieldvalue>\n");
fputs($fp,"\t</field>\n");
break;
case ".text":
default:
fputs($fp,$key.": ".$val."\n");
break;
}
}
}
switch ($file_format) {
case ".html":
fputs($fp,"</table>\n");
break;
case ".xml":
fputs($fp,"</form>\n");
break;
}

fclose($fp);
if ($landing_page != "") {
header("Location: http://".$_SERVER["HTTP_HOST"]."/$landing_page");
}
else {
header("Location: http://".$_SERVER["HTTP_HOST"]."/");
}

?>]
slasher is offline   Reply With Quote
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT. The time now is 01:13 PM.


Powered by vBulletin® Version 3.6.5
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0 ©2007, Crawlability, Inc.