是否可以从表单提交将 var 字符串变量发送到 mysql?还是安全漏洞?

Posted

技术标签:

【中文标题】是否可以从表单提交将 var 字符串变量发送到 mysql?还是安全漏洞?【英文标题】:is it Possible to send var string variables to mysql from form submit? Or security breach? 【发布时间】:2015-03-09 18:08:01 【问题描述】:

我正在通过自我过程试错来学习!在我开始弄乱代码并设置 mysql 数据库之前,我只是好奇,是否有可能从 URL 获得一个 php 脚本处理变量并将它们发送到 mysql 数据库?如果是这样,这会成为通过 url 进行 sql 注入的安全漏洞吗?目前,我的表单可以说“page1.php”的输入如下所示.. [timeofsurvey, datepicker, postcode] 目前使用 var SendStrng 将它们发送到“page2.php”并在 url 中发送通过我假设的 GET 方法。

var SendStrng = '&timeofsurvey='+ $("#timeofsurvey :selected").val() + '&datepicker='+ $("#datepicker").val() + '&Postcode='+ $("#Postcode").val() + insuranceplus;

    //alert(SendStrng);
    window.location.href = 'http://Mywebsite.com/Page2.php?'+ SendStrng


所以我的问题是是否有可能让“page2.php”处理这些变量并将它们发送到 MySql 数据库,我之所以这么说是因为当用户访问该网站时“page2.php”有更多的信息与工作等有关的内容。我从统计数据中发现一些用户正在该页面上放置所以没有转换,我希望 MySQL 数据库输入这些变量,这样我们仍然可以看到客户之前输入的内容跟踪整个过程并在“page2.php”上退出但是我不知道由于 sql 注入而使用 url 中发送的变量是否会成为一个大的安全问题。

对不起,如果这个问题很愚蠢,我仍在学习,Stack Overflow 用户对我帮助很大,所以任何进一步的输入/建议将不胜感激:)

谢谢。

【问题讨论】:

How can I prevent SQL-injection in PHP?的可能重复 【参考方案1】:

首先,也许可以考虑为此使用 ajax。 如果你不知道这是什么,这里有一个很棒的视频: https://www.youtube.com/watch?v=zfrq5q98jJ0

否则看看 Jquerys 函数jQuery.param,它需要一个 JSON 对象,并且应该将它变成你想要的。

我希望这会有所帮助, 塞巴斯蒂安

【讨论】:

以上是关于是否可以从表单提交将 var 字符串变量发送到 mysql?还是安全漏洞?的主要内容,如果未能解决你的问题,请参考以下文章

使用链接发送到表单的变量从表单外部的链接提交表单?

在提交按钮上反应原生表单处理

动态 jQuery PHP 表单不会将 POST 数据发送到 PHP var

提交时将对象列表从视图发送到控制器

php中如何防止刷新一次提交一次

如何将数组数据从控制器发送到刀片并访问 javascript 变量中的数据