0

私のワードプレス サイトには、自分で試してみるエディターがあります。問題は、「SOURCE CODE」フィールドに html タグを入力してフォームを送信すると、404:not found エラーが発生することです。しかし、プレーン テキストだけを入力するか、フィールドを空のままにしておくと、すべてが正常に機能します。私が間違っていることがありますか?ここで確認できます: http://www.naijaprogrammer.com/tryit/

tryview_sc.php と index.php の 2 つのファイルがあります。tryview_sc.php のコードは次のとおりです。

if(isset($_POST['code']))
{
    echo $_POST['code'];
    exit;
}
else if(isset($_GET['id']))
{
    $dash=mysql_real_escape_string($_GET['id']);
    $file_query=mysql_query("SELECT code FROM editor WHERE id='$dash'");
    $count=mysql_num_rows($file_query);
    if($count==0)
    {
        return;
    }
    else{
        $file=mysql_fetch_array($file_query);
        echo $file['code'];
    }
}
else
{
    return;
}

index.php ファイルに関心のあるコードは次のとおりです。

<form action="tryview_sc.php" method="post" target="view" id="tryitform" name="tryitform">
     <textarea class="code_input" id="pre_code" wrap="logical"><?php echo $output; ?></textarea>
     <input type="hidden" name="code" id="code" />
     <input type="hidden" id="bt" name="bt" />
    </form>

そしてこのiframe:<iframe style="background-color:#fff;" class="result_output" frameborder="0" name="view" src="tryview_sc.php">

4

1 に答える 1

0

あなたのコードは、いくつかの HTML タグに対して正常に動作しています (例: <b>test</b> は正常に動作します)。

あなたのJavaScriptコードは、非表示のフォーム要素の値に「ソースコード」を保存しています。これは、ソース コードの一部の文字、特に "

ソース コードを Javascript で encodeURIComponent() でエンコードしてから、PHP スクリプトで rawurldecode() でデコードする必要があります。

詳細については、こちらを参照してください: encodeURIComponent()rawurldecode()

于 2013-11-10T09:56:28.440 に答える