Jump to content

StevenJacobs

Members
  • Posts

    22
  • Joined

  • Last visited

Everything posted by StevenJacobs

  1. sure. well i used ur original code matched with love2code and its working nice. if i add the section you gave me with the echo it doesnt work, but this is what it gives me: SELECT `EMAIL` FROM `subscribers` WHERE `EMAIL` = ''art.stevenjacobs@yahoo.com''
  2. Nevermind! i solved it buy doing what you said in your edit, heres what worked: $Result1 = mysql_query($insertSQL,$subscribers); $insert = mysql_affected_rows(); if(!$Result1) { echo "Username and/or password already in use."; } else { echo "You have successfully registered."; } Its working perfectly now! Again thank you everybody! i cant thank you enough for all the help!
  3. yea i just tried it, unless if im doing something wrong it is not working. Its now giving this error if i type in a new email or a email already in the database. Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/steven/public_html/testing.php on line 63 Username and/or password already in use. Line 63 would be this part of the code you gave me: $rows = mysql_num_rows($Result1);
  4. yeah no problem.. i used one of the first codes that jazzman gave me. and its working like a charm now. <?php include ('Connections/subscribers.php'); date_default_timezone_set('America/Chicago'); if (isset($_POST['Submit'])) { if ($_POST['email'] != "") { $email = filter_var($_POST['email'], FILTER_SANITIZE_EMAIL); if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { $errors = "$email is <strong>NOT</strong> a valid email address.<br/><br/>"; } } else { $errors .= 'Please enter your email address.<br/>'; } if (isset($errors)) { echo '<div style="color: red">' . $errors . '<br/></div>'; return false; } if (!function_exists("GetSQLValueString")) { function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") { if (PHP_VERSION < 6) { $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue; } $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue); switch ($theType) { case "text": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "long": case "int": $theValue = ($theValue != "") ? intval($theValue) : "NULL"; break; case "double": $theValue = ($theValue != "") ? doubleval($theValue) : "NULL"; break; case "date": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "defined": $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue; break; } return $theValue; } } if (isset($_SERVER['QUERY_STRING'])) { $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']); } if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) { $insertSQL = sprintf("INSERT INTO subscribers (EMAIL) VALUES (%s)", GetSQLValueString($_POST['email'], "text")); mysql_select_db($database_subscribers, $subscribers); $Result1 = mysql_query($insertSQL, $subscribers) or die(mysql_error()); } } else { ?> <form action="<?php echo $_SERVER['PHP_SELF']; ?>" name="form1" method="POST"> Email Address: <br/> <input type="text" name="email" value="<?php echo $_POST['email']; ?>" size="50"/> <br/><br/> <input type="submit" name="Submit" /> <input type="hidden" name="MM_insert" value="form1" /> </form> <?php } ?>
  5. awesome! that worked!.. lol i feel so stupid, that was very simple.. one question tho, how do i change the message that comes up? its saying: Duplicate entry 'art.stevenacobs@yahoo.com' for key 'EMAIL' Thank everybody again for all the help, i really appreciate it!
  6. ok well when i comment that section it stops giving any errors. it also enters valid emails into the database now, but back to the problem, it allows same emails to keep being entered.
  7. I used his last one (reply #17) modified with reply # 27
  8. Still no luck, didnt change anything.. just saw your edit a few replys ago. not sure what you mean by what action im getting. but after i hit submit, its going to a blank page with the following error: 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 'art.stevenacobs@yahoo.com'')' at line 1
  9. Ok i just saw it, but im not to sure what exactly your saying i should change.
  10. Sure. <?php include ('Connections/subscribers.php'); date_default_timezone_set('America/Chicago'); if (isset($_POST['Submit'])) { if ($_POST['email'] != "") { $email = filter_var($_POST['email'], FILTER_SANITIZE_EMAIL); if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { $errors = "$email is <strong>NOT</strong> a valid email address.<br/><br/>"; } } else { $errors .= 'Please enter your email address.<br/>'; } if (isset($errors)) { echo '<div style="color: red">' . $errors . '<br/></div>'; return false; } if (!function_exists("GetSQLValueString")) { function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") { if (PHP_VERSION < 6) { $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue; } $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue); switch ($theType) { case "text": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "long": case "int": $theValue = ($theValue != "") ? intval($theValue) : "NULL"; break; case "double": $theValue = ($theValue != "") ? doubleval($theValue) : "NULL"; break; case "date": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "defined": $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue; break; } return $theValue; } } if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) { mysql_select_db($database_subscribers, $subscribers); $check_email = sprintf("SELECT `EMAIL` FROM `subscribers` WHERE `EMAIL` = '%s'", GetSQLValueString($_POST['email'], "text")); $result = mysql_query($check_email, $subscribers) or die(mysql_error()); if(mysql_num_rows($result) > 0) { echo 'Sorry, but this email has beed already taken'; return false; } $insertSQL = sprintf("INSERT INTO subscribers (`EMAIL`) VALUES ('%s')", GetSQLValueString($_POST['email'], "text")); echo $insertSQL; exit; $Result1 = mysql_query($insertSQL, $subscribers) or die(mysql_error()); } } else { $editFormAction = $_SERVER['PHP_SELF']; if (isset($_SERVER['QUERY_STRING'])) { $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']); } ?> <form action="<?php echo $_SERVER['PHP_SELF']; ?>" name="form1" method="POST"> Email Address: <br/> <input type="text" name="email" onfocus="if (this.value == 'Email...') {this.value = '';}" onblur="if (this.value == '') {this.value = 'Email...';}" value="<?php echo $_POST['email']; ?>Email..." size="50"/> <br/><br/> <input type="submit" name="Submit" /> <input type="hidden" name="MM_insert" value="form1" /> </form> <?php } ?>
  11. still didnt change anything. and i only have two columns. ID and EMAIL.
  12. well that took away the first error, but still not inserting valid emails. now its just saying: 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 'art.stevenacobs@yahoo.com''' at line 1
  13. oh thats no problem-oh man. thats exactly what i was trying to work with early. but its giving an error code and not inserting valid emails. Notice: Undefined variable: editFormAction in /home/steven/public_html/testing.php on line 59 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 'art.stevenjacobs@yahoo.com''' at line 1 58 if (isset($_SERVER['QUERY_STRING'])) { 59 $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']); 60 }
  14. Sorry to bug you, u have already helped me out tremendously. but i have one last question. how can i validate that the email isn't in the database, to prevent multiple same emails being entered?
  15. awesome that works!.. It is now entering valid emails and not entering null or invalid emails. ill have to check that out, thank you for the help. One question tho. how come after i hit submit the form and submit button now disappear, is there a way to show the error or a success message with the form and submit button still visible?
  16. ok its working fine now if i use a non valid email or empty email, no errors. but its still not entering a valid email into the database and its giving me a new error. Heres the error: Notice: Undefined variable: errors in /home/steven/public_html/testing.php on line 19 Heres the code: 9 if (isset($_POST['Submit'])) { 10 11 if ($_POST['email'] != "") { 12 $email = filter_var($_POST['email'], FILTER_SANITIZE_EMAIL); 13 if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { 14 $errors .= "$email is <strong>NOT</strong> a valid email address.<br/><br/>"; 15 } 16 } else { 17 $errors .= 'Please enter your email address.<br/>'; 18 } { 19 echo '<div style="color: red">' . $errors . '<br/></div>'; 20 } 21 } else {
  17. sweet, that is going to be a useful code. thank you.. so its giving me three errors depending on if i type in an email no email or wrong email. Telling me the same thing, just on different lines. This if i type in an email: Strict Standards: main() [function.main]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Chicago' for 'CST/-6.0/no DST' instead in /home/steven/public_html/testing.php on line17 Notice: Undefined variable: errors in /home/steven/public_html/testing.php on line 17 This if i type in a wrong email: Strict Standards: main() [function.main]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Chicago' for 'CST/-6.0/no DST' instead in /home/steven/public_html/testing.php on line12 Notice: Undefined variable: errors in /home/steven/public_html/testing.php on line 12 and this is i type in no email: Strict Standards: main() [function.main]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Chicago' for 'CST/-6.0/no DST' instead in /home/steven/public_html/testing.php on line15 Notice: Undefined variable: errors in /home/steven/public_html/testing.php on line 15 Heres the lines: 7 if (isset($_POST['Submit'])) { 8 9 if ($_POST['email'] != "") { 10 $email = filter_var($_POST['email'], FILTER_SANITIZE_EMAIL); 11 if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { 12 $errors .= "$email is <strong>NOT</strong> a valid email address.<br/><br/>"; 13 } 14 } else { 15 $errors .= 'Please enter your email address.<br/>'; 16 } { 17 echo '<div style="color: red">' . $errors . '<br/></div>'; 18 } 19 } else {
  18. To make sure im understanding this. you mean change $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; to $theValue = ($theValue != "") ? "'" . $theValue . "'" : FALSE; ? If so, that did not work. Still not getting any data inserted.
  19. Of course.. This is the correct way to post code right? <?php require_once('Connections/subscribers.php'); ?> <?php if (isset($_POST['Submit'])) { if ($_POST['email'] != "") { $email = filter_var($_POST['email'], FILTER_SANITIZE_EMAIL); if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { $errors .= "$email is <strong>NOT</strong> a valid email address.<br/><br/>"; } } else { $errors .= 'Please enter your email address.<br/>'; } { echo '<div style="color: red">' . $errors . '<br/></div>'; } } else { if (!function_exists("GetSQLValueString")) { function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") { if (PHP_VERSION < 6) { $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue; } $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue); switch ($theType) { case "text": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "long": case "int": $theValue = ($theValue != "") ? intval($theValue) : "NULL"; break; case "double": $theValue = ($theValue != "") ? doubleval($theValue) : "NULL"; break; case "date": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "defined": $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue; break; } return $theValue; } } $editFormAction = $_SERVER['PHP_SELF']; if (isset($_SERVER['QUERY_STRING'])) { $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']); } if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) { $insertSQL = sprintf("INSERT INTO subscribers (EMAIL) VALUES (%s)", GetSQLValueString($_POST['email'], "text")); mysql_select_db($database_subscribers, $subscribers); $Result1 = mysql_query($insertSQL, $subscribers) or die(mysql_error()); } } ?> <form action="<?php echo $editFormAction; ?>" name="form1" method="POST"> Email Address: <br/> <input type="text" name="email" value="<?php echo $_POST['email']; ?>" size="50"/> <br/><br/> <input type="submit" name="Submit" /> <input type="hidden" name="MM_insert" value="form1" /> </form>
  20. awesome! thank you for the help, i knew it was going to be something very simple.. that makes alot of sence. thank you for the suggestions as well, i will look into them. sorry for not posting the code correctly, i didnt know. But that fixed the problem and created a new one.. It is not entering non validated information in the database now, but it is also not entering valid information into it either. Any ideas what is going on?
  21. Hey, im new to the forum. I just started getting into php, so im sure this is probably a easy fix. Iv been searching for 2 days for a solution and none of them have worked, starting to get frustrated so I'm hoping somebody can help me out. I have a basic form with a text feild and submit button for subscribing to a email newsletter. Its inserting fine into my database but iv been trying to get it to validate tht it is an email and to prevent null from being enter.. I was just able to get the validation to half work. If you type in a non email it will show an error saying its not valid BUT it still enters it into my database. The code is below. im useing dreamweaver cs6, so im guessing the php code that dreamweaver used to insert the record is being sent first before the validation code, im guessing i need to combine the two somehow and tell it which order to use? or what am i doing wrong? Thank you for any help. <?php require_once('Connections/subscribers.php'); ?> <?php if (isset($_POST['Submit'])) { if ($_POST['email'] != "") { $email = filter_var($_POST['email'], FILTER_SANITIZE_EMAIL); if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { $errors .= "$email is <strong>NOT</strong> a valid email address.<br/><br/>"; } } else { $errors .= 'Please enter your email address.<br/>'; } { echo '<div style="color: red">' . $errors . '<br/></div>'; } if (!function_exists("GetSQLValueString")) { function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") { if (PHP_VERSION < 6) { $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue; } $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue); switch ($theType) { case "text": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "long": case "int": $theValue = ($theValue != "") ? intval($theValue) : "NULL"; break; case "double": $theValue = ($theValue != "") ? doubleval($theValue) : "NULL"; break; case "date": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "defined": $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue; break; } return $theValue; } } $editFormAction = $_SERVER['PHP_SELF']; if (isset($_SERVER['QUERY_STRING'])) { $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']); } if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) { $insertSQL = sprintf("INSERT INTO subscribers (EMAIL) VALUES (%s)", GetSQLValueString($_POST['email'], "text")); mysql_select_db($database_subscribers, $subscribers); $Result1 = mysql_query($insertSQL, $subscribers) or die(mysql_error()); } } ?> <form name="form01" action="<?php echo $editFormAction; ?>" method="POST" id="email"> <input type="submit" name="submit" value="Subscribe:"> <input type="text" name="email" onfocus="if (this.value == 'Email...') {this.value = '';}" onblur="if (this.value == '') {this.value = 'Email...';}" value="<?php echo $_POST['email']; ?>"/> <input type="hidden" name="MM_insert" value="email"> </form>
×
×
  • Create New...

Important Information

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.