【发布时间】:2014-02-14 08:52:15
【问题描述】:
我对整个 python 都是新手。为了学习,我创建了一个小脚本,使用$_GET[''] 方法将python 中的两个值传递给PHP,然后PHP 将它们写入MySQL DB。我正在考虑只使用 python 与 MySQL 数据库通信,但这意味着我不能让我的 MySQL 服务器被列入 IP 白名单。因为如果我在另一个未注册的位置使用此脚本怎么办。
任何人,这是我的 php 脚本:
$v1 = mysql_real_escape_string($_GET['v1']);
$v2 = mysql_real_escape_string($_GET['v2']);
mysql_query("INSERT INTO `values` (ID, value1, value2) VALUES ('', '$v1', '$v2')") or die(mysql_error());
我有 python (value1 = "test1", value2 = "test2") 中的值。但我的问题是,我该如何将它们发送到 Web 服务器,$_GET[''] 是最好的解决方法吗?我想,如果我要学习,为什么不学习正确的方法,对吧?我需要的只是将变量传递给 PHP 并将它们保存到 $value。一旦我将它们放在$value 中,我就可以从那里拿走它。
【问题讨论】:
-
您绝对应该阅读有关 REST、消息传递系统和类似主题的信息。
-
还有,SQL 注入。以及
mysql_*的 PHP 文档中的大红框。 -
注入漏洞存在于您的 PHP 代码中,而不是 Python。您应该永远编写这样的代码,即使是一次性练习脚本也是如此。
-
转义字符串说明你不懂。只需使用prepared statements,让他们担心确保参数安全的艰巨任务。
标签: php python mysql variables