mikc
-
Posts
1 -
Joined
-
Last visited
Never
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.
Help sorting out my if{} and else{} statements
in PHP Coding Help
Posted
Teh checkboxes are meant to allow them to check both at once, however you pointed out that they can check neither, thanks much, i missed a handler for that situation :-D
Aside from that, I'm now getting this error when I try to run the script:
[quote]Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /home/pc72/public_html/smash/Test.php on line 52[/quote]
And here's what my code looks like right now(after all above changes):
[code]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>GSmash Tournament registration</title>
</head>
<body>
<?php
// Check to make sure that the user isnt spamming people via the form:
function spamcheck($field)
{
if (
eregi("to:", $field)
||
eregi("cc:", $field)
||
eregi(";", $field)
)
{
return true;
}
else
{
return false;
}
}
function checkType($type)
{
if (
$_POST['type1'] == true
&&
$_POST["type2"] == false
)
{
$type = 1;
}
elseif (
$_POST['type1'] == false
&&
$_POST["type2"] == true
)
{
$type = 2;
}
elseif (
$_POST['type1'] == false
&&
$_POST['type2'] == false
)
{
echo "<font color="red">ERROR: You must select a tournament type.</font>"
}
else
{
$type= 3;
}
return $type;
}
//Make sure the form is filled out:
if(isset($_POST['email']))
{
//check if the email address is invalid
$mailcheck = spamcheck($_POST['email']);
if (
(bool)$mailcheck == true)
{
echo "Sorry, the e-mail you have entered is invalid, please re-enter it.";
}
else
{
//send email if the e-mail is valid
$email = $_POST['email'];
$subject = "Smash Entry For: " . $_POST['name'];
$type = checkType();
$message = $_POST['sname'] . ", " . $_POST['char'] . ", " . $type;
mail("Linkmaster424@aol.com", "Subject: " . $subject, $message, "From: " . $email . "\r\n");
echo "Thanks for your entry!Your data will be sent to the tournament staff.";
}
}
else
{
?>
<h1 align="center">Glenwood SSBM Tournament Form</h1>
<hr />
<br />
<h3 align="center">Fill out the form and click the "Send" button.</h3>
<form method="post" action="ssbm.php">
Email: <input type="text" name="email" /><br />
Name: <input type="text" name="name" /><br />
Smash Name: <input type="text" name="sname" max=4 min=1 size=16><br />
Character: <input type="text" name="char" /><br />
Entry Type(select at least one):<br />
One on One:<input type="checkbox" name="type1"><br />
Teams:<input type="checkbox" name="type2"><br />
</form>
<p><em>Note: In order to join the tournament, you will be required to pay an entry fee
of $5.00 upon entry. This is mandatory for both teams and singles,
meaning that if you are on a team, you AND your partner will need to pay the entry fee,
totalling ten dollars. The same goes if you were to enter in both tournaments, you
would have to pay a fee of ten dollars(five for each tournament).</em></p>
<br />
<p><font size="2">©2006 By Tristan Nolan.</font></p>
<?php
}
?>
</body>
</html>
[/code]
[/quote]
this should work you forgot a semicolon
[code]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>GSmash Tournament registration</title>
</head>
<body>
<?php
// Check to make sure that the user isnt spamming people via the form:
function spamcheck($field)
{
if (
eregi("to:", $field)
||
eregi("cc:", $field)
||
eregi(";", $field)
)
{
return true;
}
else
{
return false;
}
}
function checkType($type)
{
if (
$_POST['type1'] == true
&&
$_POST["type2"] == false
)
{
$type = 1;
}
elseif (
$_POST['type1'] == false
&&
$_POST["type2"] == true
)
{
$type = 2;
}
elseif (
$_POST['type1'] == false
&&
$_POST['type2'] == false
)
{
echo "<font color="red">ERROR: You must select a tournament type.</font>";
}
else
{
$type= 3;
}
return $type;
}
//Make sure the form is filled out:
if(isset($_POST['email']))
{
//check if the email address is invalid
$mailcheck = spamcheck($_POST['email']);
if (
(bool)$mailcheck == true)
{
echo "Sorry, the e-mail you have entered is invalid, please re-enter it.";
}
else
{
//send email if the e-mail is valid
$email = $_POST['email'];
$subject = "Smash Entry For: " . $_POST['name'];
$type = checkType();
$message = $_POST['sname'] . ", " . $_POST['char'] . ", " . $type;
mail("Linkmaster424@aol.com", "Subject: " . $subject, $message, "From: " . $email . "\r\n");
echo "Thanks for your entry!Your data will be sent to the tournament staff.";
}
}
else
{
?>
<h1 align="center">Glenwood SSBM Tournament Form</h1>
<hr />
<br />
<h3 align="center">Fill out the form and click the "Send" button.</h3>
<form method="post" action="ssbm.php">
Email: <input type="text" name="email" /><br />
Name: <input type="text" name="name" /><br />
Smash Name: <input type="text" name="sname" max=4 min=1 size=16><br />
Character: <input type="text" name="char" /><br />
Entry Type(select at least one):<br />
One on One:<input type="checkbox" name="type1"><br />
Teams:<input type="checkbox" name="type2"><br />
</form>
<p><em>Note: In order to join the tournament, you will be required to pay an entry fee
of $5.00 upon entry. This is mandatory for both teams and singles,
meaning that if you are on a team, you AND your partner will need to pay the entry fee,
totalling ten dollars. The same goes if you were to enter in both tournaments, you
would have to pay a fee of ten dollars(five for each tournament).</em></p>
<br />
<p><font size="2">©2006 By Tristan Nolan.</font></p>
<?php
}
?>
</body>
</html>
[/code]