how to insert special character in mysql via php and display on html page

后端 未结 4 1172
半阙折子戏
半阙折子戏 2020-12-17 06:17

how to insert special characters into a database(MySQL) like

Registered symbol ( ® ) OR Copyright sign ( © ) OR Trade Mark sign ( ™ )<

4条回答
  •  失恋的感觉
    2020-12-17 06:58

    Just simply add those symbols to your text, and execute it as SQL query:

    INSERT INTO tbl_name VALUES ("Here's my text: ©®");
    

    When you want to display it one the website don't do anything with these symbols (but remember to escape at least <, >, & (using htmlspecialchars()) cause those has special meaning in XML/SGML (HTML) documents)

    PS. Also remember to escape text passed to SQL query using mysql_real_escape_string() to avoid any SQL Injection problems. If your server has magic_quotes_gpc enabled disable it or at least filter your GET/POST/COOKIE data to its raw value. You should always consciously escape values.

    EDIT:

    According to your comment... I don't remember whether magic_quotes_gpc are enabled by default but you can easily undone magic quotes effect. Just on the very beginning of your PHP code add something like this:

    if (get_magic_quotes_gpc()) {
      array_walk_recursive($_GET, 'stripslashes');
      array_walk_recursive($_POST, 'stripslashes');
      array_walk_recursive($_COOKIE, 'stripslashes');
    }
    

    Now each GPC value should be always raw - without quotes - so you have to escape it manually before passing any variable into query.

提交回复
热议问题