dポイントプレゼントキャンペーン実施中!

openPNEをインストールしたのですが、文字列を登録するとMYSQにはなぜかところどころにバックスラッシュ(円マーク)が付加されて保存されてしまいます。
具体的な例ではたとえば日記などで 「6月頃から」
と入力すると
「6月\頃か\ら」
となってしまいます。
phpMyAdminで確認すると
「6月(バックスラッシュ)頃か(バックスラッシュ)ら」
と保存されています。

どうか解決策を教えてください。
よろしくお願いいたします。

A 回答 (5件)

もうだいぶ前の投稿なので、解決したのかもしれませんが、一応書いて置きます。



原因は、PHP関数で、mysql_real_escape_string と言うのがあるのですが、これが、エスケープをつけてしまっているようです。既に(この質問からずいぶん経つので。。。)PHPでは、INSERTや、UPDATEによる、弊害や、SELECTによるログインハックなど、デフォールトでエスケープされていますので問題ないとは思います。なので、私は、この、mysql_real_escape_string をスキップしてしまいました~。この関数呼び出しの場所は、私はMysqlを使っていますので,
openpne/lib/include/DB/mysql.php の、関数escapeSimple($str)で呼ばれています。ここで、単に$strをそのままリターンさせると、問題なさそうですよ。
    • good
    • 0

ほぉほぉ…



MySqlに問題がありそうですね!
ここを参考に
http://puchiko.lowtech.ne.jp/index.php?itemid=314
やってみていただけます?
    • good
    • 0

んー…



マジッククオート以外で「¥」が付いちゃうような事例が見当たらないですね…
すみません…
お力になれず…;

phpの設定でマジッククオートをチェックするのに簡単なスクリプトです。
--- test.php ---------------------------------------------
<form action="<?= $_SERVER['PHP_SELF']; ?>" method="POST">
<input type="text" name="textbox" value="">
<input type="submit" value="送信">
</form>
入力文字:
<?php
print htmlspecialchars( $_POST["textbox"] );
?>
-----------------------------------------------------------

的外れですみません…;
    • good
    • 0
この回答へのお礼

上記のtest.phpで試してみましたが、ブラウザ上では正常なようです。
openPNEでも入力した後の確認画面までは正常で、更新ボタンを押した後にMYSQLに格納されて\が追加されてしまうようです。

色々と何度もありがとうございました。
また何かお気づきになられましたらよろしくお願いいたします。

お礼日時:2007/05/25 18:29

iniの設定は反映されていますか?



phpinfo()等で確認できますか??

設定変更後のapacheの再起動はできていますか???

連続して質問してすみません…
ちょっと確認してみてください…

この回答への補足

ありがとうございます。
apacheの再起動も反映も確認できています。

ただmagic_quotes_gpcの変更で本件の解決はできませんでしたが、この変更でpostfixadminで不具合が起きた様なので元に戻しました。

引き続き何かわかりましたらお願いいたします。

補足日時:2007/05/25 16:25
    • good
    • 0

PHPの設定ですね。



php.iniの設定でマジッククォートというものがあります。
(詳細はhttp://search.net-newbie.com/php/security.magicq …

その設定をいじっていただく必要があります。

もし仮にレンタルサーバ等でphp.iniを編集する事ができないのであれば
.htaccess
にphp_flag magic_quotes_gpc Off
の一行を追加して実行ディレクトリに保存してみてください。

この回答への補足

ご回答ありがとうございます。

専用サーバーなので早速php.iniの変更で試してみましたが状況は全く変わりませんでした。
他に何か対策はありますでしょうか?
回答に必要な設定値等は分かる範囲で調べますので、どうかよろしくお願いいたします。

補足日時:2007/05/25 15:22
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!