简体   繁体   English

PHP转义双引号onclick与onclick

[英]PHP Escaping double Quote on echo with onclick

Please notice the addslashes($model->subject) part in the code below. 请注意下面代码中的addslashes($model->subject)部分。 If the subject contains single quote, it works fine but if it has double quote, javascript generates error and treats that the onclick method ends on the double quote character. 如果主题包含单引号,则工作正常,但如果具有双引号,则javascript会生成错误,并将onclick方法以双引号字符结尾。 How to solve that error? 如何解决该错误?

    $string.=" <a href='#' class='' data-toggle='modal' "
    . "onclick=\"to_edit('" . $model->id . "','" . $model->doc_type_level_1 . "','" . $model->doc_type_level_2 . "','" . $model->doc_type_level_3 . "','" . addslashes($model->subject) . "','" . $model->date . "',"
    . "'" . $model->date_release . "','" . $model->is_confidential . "'"
    . ")\" "
    . "data-target='#modal_doc' ><span class='fa fa-pencil'></span></a>";

在此处输入图片说明

在此处输入图片说明

您应该使用htmlspecialchars转换这些实体,并使用以下代码:

htmlspecialchars($model->subject, ENT_QUOTES);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM