Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何防止在数组中插入代码?_Javascript_Arrays - Fatal编程技术网

Javascript 如何防止在数组中插入代码?

Javascript 如何防止在数组中插入代码?,javascript,arrays,Javascript,Arrays,就my Template.JS具备数组和克隆功能而言,我担心黑客可能会将恶意脚本输入数组,并使用恶意数据输入创建另一个克隆框。如何防止有人将恶意数据输入阵列 这是我对框、数组数据和“功能”按钮的克隆所做的修改 如果有一个插件或脚本,我可以输入,以防止恶意数据在阵列中,这将是可怕的!我知道有一件事你不能在输入中插入代码。但是我担心任何浏览器中的console.log可能会干扰…?假设数据来自您的服务器,而不是用户输入,那么“黑客”最糟糕的做法就是使用自己的浏览器。这一点没有多大意义 也就是说,您

就my Template.JS具备数组和克隆功能而言,我担心黑客可能会将恶意脚本输入数组,并使用恶意数据输入创建另一个克隆框。如何防止有人将恶意数据输入阵列

这是我对框、数组数据和“功能”按钮的克隆所做的修改


如果有一个插件或脚本,我可以输入,以防止恶意数据在阵列中,这将是可怕的!我知道有一件事你不能在输入中插入代码。但是我担心任何浏览器中的console.log可能会干扰…?

假设数据来自您的服务器,而不是用户输入,那么“黑客”最糟糕的做法就是使用自己的浏览器。这一点没有多大意义

也就是说,您不应该使用内联事件处理程序

理想情况下,您应该将HTML传递给加载到DOM中的元素(有些人认为使用
createElement
等构建它会更好),并将事件处理程序附加到包含的元素,即使用事件委派


但这只是实现细节。你的问题的关键答案是——假设数据来源可信(即没有用户生成的数据)——那么你就不必担心“恶意”用户可能会输入什么。当收到表单提交时,您的服务器应该验证发送的任何内容,以确保其有意义。

我也遇到过类似的问题,现在我正在学习PHP以创建更安全的网页。但是,该数组只能在客户端使用控制台或类似工具进行编辑。因此,即使有人更改了该值,当另一个客户端加载该页面时,该值仍将保持不变。也就是说,如果要将值提交到另一个页面或服务器,那么无论如何都必须使用服务器端语言,以便在服务器端语言中使用某种形式的正则表达式来防止任何修改的输入

$string_exp = "/^[A-Za-z .'-]+$/";
if(!preg_match($string_exp,$client_name)) {

  $error_message .= 'The First Name you entered does not appear to be valid.<br />';

}
if(strlen($error_message) > 0) {

died($error_message);

}
$string_exp=“/^[A-Za-z.-]+$/”;
如果(!preg_匹配($string_exp,$client_name)){
$error_message.='您输入的名字似乎无效。
; } 如果(strlen($error_message)>0){ 死亡($error_message); }

上面是我的PHP提交表单中的一个小示例,它检查以确保值仅使用允许的字符,然后在名称使用无效字符时设置“$error\u message”。稍后会检查通常为空的“$error\u message”,如果它不是空的或null,则脚本退出并将错误消息发布到页面。

这是前端代码吗?你真的无法阻止任何人在他们自己的浏览器中修改js。我在你的小提琴上看不到任何模板或克隆。你在说什么?如果你问是否有办法阻止某人在他们自己的浏览器中篡改页面,答案是否定的。你能做的最好的办法是修改代码,使其难以分辨代码的作用,并确保在服务器端进行验证。通过“克隆”,我使用数组的长度创建框或模板来插入图像、标题,价格和按钮功能