That did it! Thanks! Michael On Apr 18, 2010, at 2:44 PM, Mari Masuda wrote: > Maybe you could try to assign the return value of preg_replace to a variable so you can use it later, like: > > $name = preg_replace('/−/','-',$name); > > > On Apr 18, 2010, at 11:38 AM, Michael Stroh wrote: > >> Thanks for the advice. I've changed the code to use mysql_real_escape_string. So now it is >> >> $name = mysql_real_escape_string($name); >> preg_replace('/−/','-',$name); >> >> but it's still not replacing the − string. I've also changed the field in the database so that now it is using the collation utf8_general_ci. I've also tried >> >> preg_replace('/−/','-',$name); >> $name = mysql_real_escape_string($name); >> preg_replace('/−/','-',$name); >> >> and that also did not work. Any ideas? >> >> Michael >> >> >> >> On Apr 18, 2010, at 1:08 PM, Michiel Sikma wrote: >> >>> On 18 April 2010 16:46, Peter Lind <peter.e.lind@xxxxxxxxx> wrote: >>> >>>> On 18 April 2010 16:40, Phpster <phpster@xxxxxxxxx> wrote: >>>>> >>>>> >>>>> On Apr 18, 2010, at 8:59 AM, Michael Stroh <stroh@xxxxxxxxxx> wrote: >>>>> >>>>>> I have this form that people use to add entries into a MySQL database. >>>>>> Recently I've had some users insert − in their entries instead of - >>>> which is >>>>>> causing some issues with scripts down the line. I'd like to replace the >>>> − >>>>>> character with -. >>>>>> >>>>>> Originally I had something like >>>>>> >>>>>> $name = mysql_escape_string($_POST["name"]); >>>>>> >>>>>> which would convert the offending character to − before entering >>>> it >>>>>> into the database. It's this encoding that is causing the problems since >>>>>> some scripts send out emails with this entry in their subject line which >>>>>> looks messy. >>>>>> >>>>>> I've tried adding the following line after the previous line to help fix >>>>>> this issue, however, I just got another entry with the same problem. >>>>>> >>>>>> preg_replace('/−/','-',$name); >>>>>> >>>>>> Any suggestions on how others would fix this problem? I'd just like to >>>> fix >>>>>> it before the entry hits the database instead of creating fixes on the >>>> other >>>>>> end of things. >>>>>> >>>>>> >>>>>> Cheers, >>>>>> Michael >>>>>> -- >>>>>> PHP General Mailing List (http://www.php.net/) >>>>>> To unsubscribe, visit: http://www.php.net/unsub.php >>>>>> >>>>> >>>>> One option is to send an HTML email which would have the email reader >>>>> interpret that code correctly >>>>> >>>>> Bastien >>>> >>>> Another option would be to use mysql_real_escape_string and make sure >>>> that your code and the database are using utf-8. Then when the email >>>> is sent, make sure that uses utf-8 as well. >>>> >>>> Regards >>>> Peter >>>> >>>> >>> Make sure the database connection is also utf8: >>> >>> set names 'utf8'; >>> >>> Typically, you should keep everything in utf8 unless you have a very good >>> reason not to. >>> And as Peter mentioned, the proper way to escape MySQL inserts (that is, if >>> you're not already using a framework that does this competently) is >>> mysql_real_escape_string(). >>> >>> Michiel >> >> >> -- >> PHP General Mailing List (http://www.php.net/) >> To unsubscribe, visit: http://www.php.net/unsub.php >> > -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php