Home > Archives > 2007年03月19日

2007年03月19日

magic_quotes_gpc のせいではまる…

phpプログラムに dat=<?xml version="1.0" encoding="UTF-8"?> というクエリを URLエンコードして POST で送ったら,あるサーバでは echo $_REQUESTdat; の結果が <?xml version="1.0" encoding="UTF-8"?> になり,別のサーバは <?xml version=\"1.0\" encoding=\"UTF-8\"?> のようにクオーテーションがエスケープされてしまった.んで,原因がまったくわからず自分のプログラムがおかしいと思って無駄な時間を費やし…

結論としては magic_quotes_gpc などというものが勝手にエスケープしてくれていると.てきとうに調べると次のようなコードが見つかったので使ってみた.get_magic_quotes_gpc() というのがフラグになってるのねと.

<?php
 function gpc_stripslashes($st) {
 if (get_magic_quotes_gpc()==1) {  
  return stripslashes($st);  
 } else {  
  return $st;  
 }  
} 

参考:

http://www.spencernetwork.com/Forums/bin/YaBB.cgi?board=cgi;action=display;num=1122598707

Home > Archives > 2007年03月19日

Search
Feeds

Page Top