私は自分のページの管理者がログインし、さまざまなニュースを投稿するCMSを持っています。書式付きテキストを表示
ページはギリシャ語ですので、私はutf-8エンコーディングを使用しています。
彼らはニュースレターをテキストエリアに書き、投稿をヒットすると次のPHPスクリプトがテキストを作成してmysqlデータベースに保存できるようにします。
$text = $_POST['text'];
$text = htmlentities($text, $quote_style = null, $charset = "UTF-8", $double_encode = null);
$text = mysql_real_escape_string($text);
、ユーザーがページに移動するときに、私は、データベースからテキストを取得し、私はこのような何かに見えるwhickビューファイルが含ま:
<p><?php echo $text; ?></p>
をしかし、テキストが表示されたときに、それがテキストのブロックのように見えますが、改行はありません。
記事の投稿者が入力したテキストを正確に表示するにはどうすればよいですか?
私がhtmlentitiesを使用している理由は、サイト上のニュースを投稿する人々が実際のhtmlコードを投稿できるようにすることを本当に望んでいないからです。それが良い考えでない場合は、私に知らせてください。
は私も使ってみました:$text = $row['text'];
$text = html_entity_decode($text, $quote_style = null, $charset = "UTF-8");
テキストを表示するビューを呼び出す前に、しかし、運が同様。
データベースに書き込む前に改行を置き換えるのは悪い考えです。そのテキストを編集する場合は、それをテキストエリアに出力する前に '
'を置き換える必要があります。 – Corubba
@BloodyWorldあなたが正しいです。 – WoLfulus