Jump to content

mysql_real_escape_string adds 3 slashes


NathanLedet

Recommended Posts

I found this function and it works well

$dbh=mysql_connect ("localhost", "user","pass") or die(mysql_error());
function escape_data ($data) {
        global $dbh; 
        if (ini_get('magic_quotes_gpc')) {
            $data = stripslashes($data);
        }
        return mysql_real_escape_string(trim($data), $dbh);
    } 
$firstname = escape_data($_POST['firstname']);

 

Now...is it considered bad practice to put data into a database with \' or \" ? I would say yes, because Now I have to use stripslashes($firstname) whenever I'm pulling it out just so it looks right...but how do I put $firstname into the database and ensure it's safety?

Link to comment
Share on other sites

The escape characters \ in a query are not inserted into the database. However, if you are getting \ in data after it has been retrieved from a database, it is because of the magic_quotes_runtime setting, which should be turned off as well.

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • 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.