Forum Moderators: coopster
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'from email = 'someone@somewhere.com'' at line 1
Here is my complete code:
<?php
function doDB() {
global $conn;
$conn = mysql_connect(someserver.net', 'username', 'password')
or die(mysql_error());
mysql_select_db("database") or die(mysql_error());
}
function emailChecker($email) {
global $conn, $check_result;
$check = "select id from subscription from email = '$email'";
$check_result = mysql_query($check,$conn) or die(mysql_error());
}
if ($_POST[op] !="ds") {
$display_block = "
<form method=POST action=\"$_SERVER[PHP_SELF]\">
<p><strong>Your E-Mail Address:</strong><br>
<input type=text name=\"email\" size=40 maxlength=150>
<p><strong>Action:</strong><br>
<input type=radio name=\"action\" value=\"sub\" checked> subscribe
<input type=radio name=\"action\" value=\"unsub\"> unsubscribe
<input type=hidden name=op value=ds>
<p><input type=submit name=\"submit\" value=\"Submit Form\"></p>
</form>";
} else if (($_POST[op] == "ds") && ($_POST[action] == "sub")) {
if ($_POST[email] == "") {
header("Location: form.php");
exit;
}
doDB();
emailChecker($_POST[email]);
if (mysql_num_rows($check_results) < 1) {
$sql = "insert into subscription values('', '$_POST[email]')";
$result = mysql_query($sql,$conn) or die(mysql_error());
$display_block = "<p>Thanks for signing up!</p>";
} else {
$display_block = "<>You're already subscribed!</P>";
}
} else if (($_POST[op] == "ds") && ($_POST[action] == "unsub")) {
if ($_POST[email] == "") {
header("Location: form.php");
exit;
}
doDB();
emailChecker($_POST[email]);
if (mysql_num_rows($check_result) < 1) {
$display_block = "<p>Couldn't find your address!</p>
<p>No action was taken.</p>";
} else {
$id = mysql_result($check_result, 0, "id");
$sql = "delete from subscription where id = '$id'";
$result = mysql_query($sql,$conn) or die(mysql_error());
$display_block = "<p>You're unsubscribed!</p>";
}
}
?>