Re: Slashes or no slashes
| From: | Karl DeSaulniers | Date: | Tue, 24 Aug 2010 01:49:58 +0000 |
| Subject: | Re: Slashes or no slashes | ||
| References: | 1 2 3 4 5 6 7 | Groups: | php.db |
| Request: | Send a blank email to php-db+get-47321@lists.php.net to get a copy of this message | ||
On Aug 23, 2010, at 8:35 PM, Chris wrote:
Thanks Again Chris, To be more specific. Is this correct? function confirmUP($username, $password){ $username = mysql_real_escape_string($username);If you want to compare, you're doing a query - so use mysql_real_escape_string: $query = "select blah from table where name='" . mysql_real_escape_string($_POST['name']) . "'"; When you print results, you use htmlspecialchars: echo "Your search for " . htmlspecialchars($_POST['name']) . " returned X results<br/>"; --Postgresql & php tutorials http://www.designmagick.com/ --PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.phpYou use mysql_real_escape_string for queries on the way in. $query = "select * from table where name='".mysql_real_escape_string($_POST['name'])."'"; You use htmlspecialchars on the way out: $value = htmlspecialchars($row['name']); -- Postgresql & php tutorials http://www.designmagick.com/ -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.phpAh.. thanks Chris. If I want to compare that value I get from the database to what a user entered, do I escape the value they entered or add htmlspecialchars to it before comparing it to what comes out of the database. Sorry this is such a PHP 101 question. If you have time to respond, please do, otherwise no worries, I am sure I will figure it out.
/* Verify that user is in database */
$q = "SELECT password FROM TBL-U WHERE username = '$username'";
$result = $this->query($q);
if(!$result || (mysql_numrows($result) < 1)){
return 1; //Indicates username failure
}
/* Retrieve password from result */
$dbarray = mysql_fetch_array($result);
$dbarray['password'] = htmlspecialchars($dbarray['password']);
$password = mysql_real_escape_string(md5($password));
$password = htmlspecialchars($password);
/* Validate that password is correct */
if($password == $dbarray['password']){
return 0; //Success! Username and password confirmed
}
else{
return 2; //Indicates password failure
}
}
The password was added to the database with md5() applied after escaping.
Thank you for responding so quickly.
Karl DeSaulniers
Design Drumm
http://designdrumm.com