入力領域の新しい行がPHPでエラーを返す

PHPとWordPressについて学び、いくつか問題を抱えています。これは私の使用例です。 私は次のようなテキストエリアを持っています


ユーザーはこのエリアにテキストを入力できます。すべて正常に動作していますが、メッセージを入力しているユーザーが "Enter Key" を押すとテキストエリアの新しい行から開始し、フォームを送信しようとしているときは次の例外があります

ユーザーがフォームを送信すると、URL文字列を作成し、それをJavaスクリプト関数に渡してajax呼び出しで送信します。これは私のものです

PHPコード

$input = "u_email=".$email;
$input .= "&u_subject=" .$subject . "&u_message=" .$message .  "&u_ip=" . $_SERVER["REMOTE_ADDR"] ."&u_name=" .$name;
echo "<script>rtf_submit('$baseURL','$input');</script>";

JSコード

 function rtf_submit(url,requestURL){
}

This was the submitted URL being created by above PHPコード

[email protected]&u_subject=&u_message=Hello World&u_ip=127.0.0.1&u_name=hello

これは私が得る例外です

Error: unterminated string literal
Line: 0, Column: 83
Source Code:
rtf_submit('http://localhost/blog/wordpress/wp-content/plugins/user_feedback/','[email protected]&u_subject=&u_message=Hello

Hello とタイプしてEnterキーを押すと、このスペース/改行がJavaスクリプトコードによって正しく処理されません。

このような事態を避けるためにPHP側でこれを扱うことができますか、またはJavaスクリプトで行う必要がある方法はありますか?

前もって感謝します

1

2 答え

フォーム入力をエンコードする必要がありますので、ブラウザ(またはこの場合はJavascriptコード)によって適切に処理されます。 JavascriptやPHPでこれを行うことができます.Javascriptで行う方法については、をご覧ください。このページ

0
追加された

On server side, you can try using htmlentities: http://www.php.net/manual/en/function.htmlentities.php

0
追加された
PHP - 日本のコミュニティ [ja]
PHP - 日本のコミュニティ [ja]
4 参加者の

このグループではPHPについて話します。 パートナー:kotaeta.com

JavaScript - 日本のコミュニティ
JavaScript - 日本のコミュニティ
2 参加者の

日本人コミュニティのjavascript