Jump to content

how to store " " ' ' characters in a field?


flyclassic

Recommended Posts

Hi, anyone how to store these characters(", ') in a mysql field??

because in the " " is very sensitive, how do we store into mysql field? do we have to replace the " with something else first and when called back, we replace back again? any examples on the functions?


Link to comment
Share on other sites

[quote author=fenway link=topic=99846.msg393603#msg393603 date=1152375444]
Won't that variable declaration throw a parsing error in PHP?  Regardless, addslashes() to escape these special characters in what you need.
[/quote]
Yea, probably. So you could just do:

$var = addslashes("This is "quoted" text");
Link to comment
Share on other sites

[quote author=Daniel0 link=topic=99846.msg394012#msg394012 date=1152458022]
You could also use [url=http://php.net/mysql_real_escape_string]mysql_real_escape_string[/url].
[/quote]
But how do you actually "strip" (or essentially reverse) what this function does, or does the replacement of the extra characters only occur in mysql, and when the value stored in the database is returned, these are returned as normal - allowing you to just use stripslashes?

Furthermore I note some saying check whether your gpc_quotes or whatever is on (the thing that automatically addslashes to your POST/GEt/COOKIES before running an addslashes - to ensure you don't escape things twice - but when you run stripslashes it appears to remove ALL "\" characters, and not just doubled up ones. Presents a problem of also how to preserve a "\" character in the event that it is supposed to be in there too!

Any help with my understanding here would be greatly appreciated, as I am suddenly having to swap a DB from mssql to mysql, and am trying to ensure that I won't stuff it up too badly :P in MSSQL you just did a str_replace("'", "''", $var) - and when it was returned, well - it automatically "lost" the extra ' that was inserted, meaning no formatting required :P
Link to comment
Share on other sites

The escaping is only for MySQL internal storage, so these extra slashes will never appear in the output; but you're right that if you have magic_quotes on you have to "check" to make sure you're not doubling things up.
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.