输入区域中出现PHP错误的新行
New line in the input area giving error in PHP
只是学习PHP和wordpress并遇到一些问题。这是我的用例。我有一个类似的文本区域
<textarea id='contact-message' class='contact-input' name='message' cols='40' rows='4' tabindex='1004'></textarea>
用户可以在该区域输入文本。一切都很好,但如果用户在键入消息时点击"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){
}
这是由上面的PHP代码创建的提交的URL
u_email=dud@dud.com&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/','u_email=dud@dud.com&u_subject=&u_message=Hello
我在键入Hello
后按enter键,java脚本代码没有正确处理这一空格/新行。
有没有什么方法可以在PHP端处理这个问题,以避免这种情况,或者需要在java脚本中完成?
提前感谢
在服务器端,您可以尝试使用htmlentities
:http://www.php.net/manual/en/function.htmlentities.php
您需要对表单输入进行编码,以便浏览器(在本例中为Javascript代码)正确处理它们。您可以在Javascript或PHP中执行此操作——有关在Javascript中执行此任务的一些信息,请查看此页面。
相关文章:
- 如何从rails中的代码中删除新行( )
- 拆分文本以每隔n个字符添加一行新行,并注意空格
- 如何在脚本上添加新行
- 在不刷新整个网格的情况下,向Asp.net网格视图添加新行
- 字符串中的
标记未正确在 HTML 中创建新行 - JavaScript-如果以前不存在文本,如何从文本区域删除新行
- 反应中的新行
- 阻止ReSharper将JavaScript函数参数放到新行中
- HTML表内容:如果行很长,如何在新行中显示部分内容
- dhtmlx添加新行并启动单元格编辑器
- 将新行打印到$mdToast
- 在新行(html)中动态添加更多文本字段
- 使用删除文本创建新行
- 如何在Google Geochart图表的工具提示文本中添加新行
- NodeJS Fork-每次子流程发送新行时都进行React
- 剑道网格 - 单击“添加新行”按钮后,获取剑道网格未捕获的类型错误:无法读取“名称”空的属性
- 输入区域中出现PHP错误的新行
- "未捕获的层次结构请求错误:createTextNode之后的新行标记
- 当值为初始值时,在新行末尾放置错误消息
- 在contenteditable中添加新行时字数错误