2016-07-21 4 views
0

なぜurlencode($ Data)はエンコーディングではありませんか?あるべきurlencodeはHTMLを変換しません

%3Cdiv+id%3D%22main-wrap%22+class%3D%22clearfix%22%3E 

<div id="main-wrap" class="clearfix"> 

アイデア私は私のフォームを投稿すると、データは、データベースに挿入されていますか?

私は、以下のアドバイスとしてこれを試してみましたが、それはまだ動作しません:

$DataEncoded = urlencode($Data); 
echo $DataEncoded; 
echo urldecode($DataEncoded); 
+0

に、不要なと。バインドされたパラメータを使用してHTMLをデータベースに ' 'から取得する場合、' $ stmt-> bindParam(1、$ _POST [' data ']、PDO :: PARAM_STR); ' (おそらく '!empty()'のサニティチェックが必要になるでしょう)。 – CD001

答えて

2

は、あなたはそれをエンコードしないで、データをデコードする必要があります。 urldecodeを参照してください。

+3

...または** no ** **フォームフィールドの** _ POST **データであれば、URLエンコード/デコード機能は全くありません。あなたはそれを必要としません。 – CD001

1

あなたはこのように、符号化されたデータを復号する必要があります。

$html = '<div id="main-wrap" class="clearfix">'; 
$encoded = urlencode($html); 
echo $encoded; 
echo urldecode($encoded); 

この出力:

%3Cdiv+id%3D%22main-wrap%22+class%3D%22clearfix%22%3E 
<div id="main-wrap" class="clearfix"> 
+0

私はこれを試みましたが、それはまだ違いはありません...上の編集済みのQを参照してください。 – DWARFORU

+0

データベースに_goingという値で 'urldecode'を使用する必要があります。ポインタのように扱うことはできません。 – developius

+0

INSERTクエリで ""。urldecode($ Data2) "'を使用しています... – DWARFORU

関連する問題