php - 缺少特殊字符

标签 php jquery

我在 html 表中有一个相机名称列表。如果需要,您可以点击编辑按钮来编辑相机名称。

这将打开一个表单(以及许多其他选项),其中相机名称现在可编辑。

var edit = function(t, to, cameratype, cameraname, ...)
{
   var mydiv = js("#editform");

   if (mydiv.find("form").length) {
      mydiv.show();
   } else {
    // fields
    var $myform = js("<form id='EditCameraForm' name='' method='post' action='" + to + "'></form>");
    var $myfieldset = js("<fieldset><legend>Edit camera settings</legend></fieldset>");
    var $myinput = js("<input type='hidden' name='camera_type' value='" + cameratype + "' />");
    var $mylabel = js("<label for='CameraName'>Camera name:&nbsp;</label>");
    var $myinput2 = js("<input id='CameraName' name='camera_name' size='25' value='" + cameraname + "'  />");

    $myform.append($myinput, $mylabel, $myinput2, ...);
}

我的问题是传入相机名称。我允许特殊字符。所以你可以调用相机 Joe's camera

当我点击编辑按钮时,相机名称显示为 Joe

这与首次创建相机名称时我在 php 中的验证函数有关......我相信:

function check_input($data)
{
            $data = trim($data);
            $data = stripslashes($data);
            $data = mb_convert_encoding($data, 'UTF-8', 'UTF-8');
            $data = htmlentities($data, ENT_QUOTES, 'UTF-8');

            return $data;
 }

相机名称通过按钮点击传入:

<button id="editbutton" onClick='edit(this, "<?php echo htmlentities($_SERVER['REQUEST_URI']); ?>", "<?php echo $result_cameras[$i]["camera_type"]; ?>", "<?php echo $result_cameras[$i]["camera_name"]; ?>", ...)'>Edit</button>

如果您查看此页面的源代码,它将显示:Joe's camera。所以我想也许我必须使用 decodeURIComponent(cameraname) 在 JS 代码中对此进行解码,但这不起作用。感谢您的帮助!

最佳答案

与其像现在这样构建输入框,不如尝试使用更多的 Jquery。

var $myinput = js('<input/>').attr('type','hidden').attr('name','camera_type').val(cameratype);

您的问题很可能是您在 value='"+ cameratype + "' 部分创建了双引号问题。

关于php - 缺少特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9812540/

相关文章:

php - MySQL 5.7 & only_full_group_by

java - 使用 Java 获取页面源仅读取第一行

javascript - 语义 UI 表单验证怪癖

javascript - 检查是否进行了 radio 选择

php - 根据列值获取mysql信息

php - 将 PHP 数组转换为用户对象?

php - Laravel:具有关系的查询构建器

javascript - jQuery计算插件: Summing subtotals to create grand total

javascript - jquery 或 javascript 图像 onclick div fadein/link onclick div fadeout

javascript - Bootstrap 不使用 jquery 动态创建的元素呈现