web-dev-qa-db-ja.com

フィルタータイプがrawに設定されている場合でも、Joomlaは送信されたテキストからhtmlタグを削除するのはなぜですか?

Joomlaエディターフィールドを通じて送信されたhtml形式のテキストを取得して保存しようとしています。私はいくつかの利用可能なドキュメント( https://docs.joomla.org/Retrieving_request_data_using_JInput#Getting_Multiple_Values )を調べましたが、残念なことに、JoomlaがテキストからすべてのHMTLタグを削除する理由を理解できませんでした私の努力。既にフィールドのフィルタータイプを「raw」に設定しています。

<field
    name="Message"
    type="editor"
    label="Message"
    rows="10"
    cols="40" 
    filter="raw"
    class="gngcontact"
/>

以下のコードを使用して、送信後にフィールドコンテンツを取得しようとしています。

$input = new JInput;
$post = $input->getArray(array($_POST => 'RAW'));
GNGHelper::dump($post);

しかし、これでもHMTLのない文字列になります。

string(62)「こんにちは!この行にタグはありますか?いくつかありました...」

結果の文字列にタグを保持できるようにするには、他に何が必要ですか?

本当にありがとう! W.

1
wanderlusted

getArray()引数の配列キーとして$_POSTを使用すると、警告が生成されます。

警告:無効なオフセットタイプ

フォームがフォームコントロール(通常はjform)を使用している場合は、次のようにフィルタリングされていないデータを取得できます。

$post = $this->input->get('jform', array(), 'raw');
2
Sharky