-1

我想在黑客查看源代码时向他们隐藏我的数据库连接详细信息,因为他们可以将恶意代码发送到我的数据库。

例如:

<?php
$con=mysqli_connect("example.com","peter","abc123","my_db");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

mysqli_query($con,"INSERT INTO Persons (FirstName, LastName, Age)
VALUES ('Peter', 'Griffin',35)");

mysqli_query($con,"INSERT INTO Persons (FirstName, LastName, Age) 
VALUES ('Glenn', 'Quagmire',33)");

mysqli_close($con);
?>

黑客现在知道我的数据库的用户名、密码和名称是什么,他可以向我的数据库注入错误代码。我搜索了该网站,但找不到正确的格式来解决我的问题。

4

2 回答 2

3

Php is a server-side language and cannot be read by others unless they have the php file what users see in the browser is the output parsed by the browser.

as long as you don't echo, print or in any way display yoour credentials you should be good.

于 2013-05-07T15:37:17.247 回答
1

他们无法读取数据库信息,除非他们真的入侵或破解了您的网络帐户。您可以对数据库信息进行编码,仅此而已。

正确的方法是阻止对 PHP 代码本身的访问。将包含文件中的数据库信息仅由 Web 服务器读取和写入可以防止非法访问。这样做的缺点是,如果您需要更改信息,您需要 root/admin 帐户来更新信息。

为防止 SQL 注入,您应该对字符串使用 real_escape_string,对数字使用 is_numeric。

于 2013-05-07T15:43:44.807 回答