Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/272.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
在php脚本中屏蔽真实用户名、密码和数据库名_Php_Mysqli - Fatal编程技术网

在php脚本中屏蔽真实用户名、密码和数据库名

在php脚本中屏蔽真实用户名、密码和数据库名,php,mysqli,Php,Mysqli,我正在使用000webhost站点托管一个数据库,我可以从android应用程序访问该数据库。我创建了这样一个php脚本 <?php $connection = mysqli_connect("localhost", "my_user", "my_password", "my_db"); ... 您的php ini设置为E_ALL&~E_NOTICE,而display_errorsini指令设置为1。这就是它将失败的mysqli请求打印为纯文本的原因。这在测试环境中可能是可取的,

我正在使用000webhost站点托管一个数据库,我可以从android应用程序访问该数据库。我创建了这样一个php脚本

<?php
    $connection = mysqli_connect("localhost", "my_user", "my_password", "my_db");
...

您的php ini设置为
E_ALL&~E_NOTICE
,而
display_errors
ini指令设置为1。这就是它将失败的mysqli请求打印为纯文本的原因。这在测试环境中可能是可取的,但在生产中肯定不是

如果可以编辑php.ini文件,则可以将
display\u errors
指令设置为
0

如果无法更改ini文件,则需要在脚本顶部包含以下代码:

error_reporting(E_ALL);
ini_set("display_errors", 0); 

这将防止向用户显示mysql登录失败等错误。在php文件中有实际的用户名和密码是安全的

普通访问者看不到php文件的源代码,他们只看到这些文件生成的输出。你不应该从android应用程序访问你的数据库,这是一个巨大的安全问题。相反,您应该使用json或xml或其他方法来检索信息,并使用一些RESTAPI从另一方接收信息,检查这个框架或类似的东西。他们难道不能解码.php文件吗?我还想知道为什么“my_user”不是“a80023423_as22”dono,他们不能解码php文件,他们可以解码android应用程序,因为他们有代码,但php受服务器保护。嗯,我想知道db详细信息的人都没有潜在的威胁。但有没有办法掩盖它们?与访问第一个代码段中的默认值一样,在生产环境中设置不同的错误报告级别并不是唯一的原因。还有很多理由让它与开发中的保持一致。在开发中,它应该是E_all,然后完全删除
错误报告
行。好吧,虽然它与答案无关,但在代码中,无论如何都应该保留,所以最好保留。@Blogger你能验证这是否有效吗?请使用PHP文件中的实际用户名和密码,并尝试登录。
error_reporting(E_ALL);
ini_set("display_errors", 0);