我现在正在挣扎,试图找出我应该如何从特定的数据库表读取所有的记录,并在网站上打印出来。我的网站上有一个“新闻馈送”部分。我想显示所有的新闻按最新排序。我的问题不是如何连接和选择数据库,并将数据存储在数组中。
我的问题是在哪里做,怎么做?在显示新闻的同一个文件中,还是在一个将要包含的外部文件中?如果是这样,我应该如何在外部文件中做?
我有一个名为“functions.php”的文件,它包含在每个页面中,看起来像这样:
<?php
if(!isset($_SESSION)){
session_start();
}
function loggedIn(){
if(isset($_SESSION['user_id']) && ($_SESSION['user_id'] != "")){
return true;
}else{
return false;
}
}
if(loggedIn()){
$user_id = $_SESSION['user_id'];
$user_email = $_SESSION['user_email'];
$user_first_name = $_SESSION['user_first_name'];
$user_last_name = $_SESSION['user_last_name'];
$user_newsletter = $_SESSION['user_first_name'];
}
?>
我应该在这里打开mysqli连接并存储数据吗?
mysqli_connect($server, $user_name, $pass_word, $database);
$query = "SELECT * FROM news ORDER BY id";
news_data = mysqli_fetch_array($query);
4条答案
按热度按时间g52tjvyc1#
你可以在你用来显示新闻源的php文件中连接和关闭连接,你可以像这样创建一个foreach循环:
另一种方法是进行Map并使用tablemakerFromArray函数:
这是用php在一个表中显示所有数据的最简单的方法。
mitkmikd2#
是的,您可以将代码放在If(loggedIn())条件中。
当然,有很多更好的方法来组织一个PHP项目,但是对于你所拥有的,这是有效的。
pod7payv3#
这完全取决于你。一般来说,将类似的功能组合到单独的文件/库中被认为是最佳实践。在你的情况下,你可以有一个文件,其中包含与数据库相关的函数。然而,我建议你确保每个请求只调用一次mysqli_connect,以避免创建多个连接。你可以在一个文件中包含mysqli_connect函数,每个请求加载一次。然后在你需要的时候加载函数文件。然后,根据需要调用函数查询数据库。可能有一段时间你只想连接到数据库而不实际进行查询,在这种情况下,分离连接逻辑会使你的项目更模块化一点。有更好的方法来处理这个问题,但是对于一个小的个人项目,这种方法应该不是问题。
根据您的其他注解,您可以有一个包含mysqli_connect(例如mysql_conn.php)函数的文件,另一个包含您的查询函数(例如mysql_funcs. php)。您可以显式地包含mysql_conn.php,或者,您可以使用mysqli连接的文件包含mysql_conn.php脚本,使用require_once,以确保连接只创建一次。
tquggr8v4#
应该使用mysql_query()启动SELECT
并且您应该将DESC或ASC与ORDER BY一起使用