0

OK、PHP を使用して XML ファイルを解析し、そのコンテキストを HTML に表示しています。これがコードです。サンプル テキストは - Don't Give Up!

$xml = simplexml_load_file('data/quotes.xml');
            foreach ($xml as $quote) {
                $text = $quote->text;
                echo '<div class="itemWrapper">'.
                            '<div class="quoteHolder">'.
                                    '<p class="quote">'.$text.'</p>'.
                            '</div>'.

                            '<form class="selectionButtons">'.
                                    "<input type='hidden' value='$text' name='quote'>".
                                    '<input class="submitButton" type="button" value="create your design">'.
                            '</form>'.
                     '</div>';
            }

したがって、段落で $text 変数を使用すると、正しく表示されますが、それをフォームの非表示フィールドに渡すと、次のようになります: Don (そのため、単一引用符の直前で停止します) 引用符を持つすべてのテキストで発生します。それはなぜで、何が間違っているのでしょうか?

4

2 に答える 2

1

これを使ってみてください...

$this_text = "Don't give up!";
$text = htmlspecialchars($this_text, ENT_QUOTES);

echo "<input type='text' value='$text' />";

私はすでにテストしました..

于 2013-08-07T02:46:20.187 に答える
1

HTMLinputフィールドでは、コンテンツをエスケープする必要があります。便利なことに、PHP にはすべての作業を行う関数があります。

$display_text = "Don't give up!";
$input_text = htmlspecialchars($text);

参照

于 2013-08-07T02:36:10.440 に答える