gpt4 book ai didi

php - 如何安全地将 MySQL 数据库与使用 PHP 的网页链接和使用?

转载 作者:太空宇宙 更新时间:2023-11-03 11:24:54 25 4
gpt4 key购买 nike

我知道这是一个初学者问题,但我没有找到任何好的教程/建议,所以 StackOverflow 是我最后的希望。

我是编程新手,我正在尝试制作一个网站,该网站使用 MySQL 数据库来存储用户数据,例如登录信息、他们在网站中的内容等。

我想知道的是如何安全、可靠地将 MySQL 数据库链接到我的网站并从中获取数据/向其发送数据。

现在,我的服务器看起来像这样:

www 
|__ public_html (my site html, assets, css and js)
|__ php (where I think I should put my php files, outside the public http)

php 文件夹中,我有一个 config.ini 文件,其中包含数据库的地址、用户名和密码。同样在此文件夹中,我有一个 .php 文件,如下所示:

<?php

function db_connect() {

static $connection;

if(!isset($connection)) {
$config = parse_ini_file('config.ini');
$connection = mysqli_connect($config['host'],$config['username'],$config['password'],$config['dbname']);

}

if($connection === false) {
return mysqli_connect_error();
}
return $connection;
}

我如何在我的网站中启动此连接并以安全的方式使用它(发送/获取数据),这样我就不会通过 SQL 注入(inject)受到攻击?

编辑:我在一家公司托管我的网站,PHP 版本是 7.2,但我可以更改它。我的 root 文件夹中还有更多不是我创建的文件/文件夹,例如 .bash_profilephp.ini.gemrc

最佳答案

您的 .php 文件应放在 public_html 文件夹中,以便您的网络服务器可以处理它们(默认根文件夹应为 public_html)。

DB的连接与SQL注入(inject)没有任何关系,需要注意的是query string。一般的想法是在执行查询之前验证用户的输入。更多详细信息,请访问 How can I prevent SQL injection in PHP?

关于php - 如何安全地将 MySQL 数据库与使用 PHP 的网页链接和使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55232952/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com