2011-02-01 56 views
1

因此,本周我将尽可能地保护我的PHP应用程序。我从数据库中检索数据很多,所以我需要一些基本技巧来帮助我保护下面的代码。使用PHP保护获取的数据

谢谢,我只是一个新手。

<?php 

mysqli_select_db($connect,"users"); 
$select="select * from members"; 
$result=mysqli_query($connect,$select); 
$row=mysqli_fetch_array($result); 


//this is what i want to secure -- down 

$a = $row['name']; 
$b = $row['add']; 
?> 

谢谢。

+0

你认为什么是不安全的?您正在将数据存储在服务器上的PHP变量中。什么都没有发送到浏览器呢。 – 2011-02-01 19:47:10

+1

你想以什么方式保护它?据我所知,这里根本没有任何漏洞。现在,可能会有更大的代码,但您需要指定您正在讨论的内容 – ircmaxell 2011-02-01 19:47:15

回答

1

编码所有内容来自您要在浏览器中显示的用户输入/数据库htmlspecialchars()以避免XSS

0

您基本上需要在将数据发送到数据库之前(针对SQL注入)以及在输出到html之前(针对XSS)来确保安全。这些事情很重要,而在你的脚本内几乎所有东西几乎都是无害的(并可能导致后续代码出错,顺便说一句)。

0

首先,在数据库中输入数据时是否有安全性? 如果您在插入数据库时​​没有清理数据,那么您的代码可能会浪费到SQL Injection。为此 - 检查此功能http://php.net/manual/en/mysqli.real-escape-string.php

另一件事是,html和javascript可以插入到您的数据库中,并且如果您不转义它并使用将该数据打印到HTML,则您可以虚拟到Cross-Site-Scripting。你应该使用http://bg.php.net/manual/en/function.htmlentities.php来逃避你的数据。或http://bg.php.net/manual/en/function.htmlspecialchars.php

安全性是一个很大的话题,但这可以成为你的开始 - 首先逃避你的输入,然后照顾输出。