为数据库中的每条记录写php页面

时间:2014-04-13 04:48:00

标签: php loops

我只是通过一个简单的员工项目来学习PHP。我想学习如何为数据库中的每条记录创建一个php页面。我使用while循环在页面中为每个员工页面创建链接。但我不能手动创建每个员工的页面。 我读了这个帖子:How do I create file on server?

我想运行一个循环函数,里面会有一个每个细节应该在哪里的布局,比如这里的名字,这里的id等等,函数应该为数据库中的每条记录循环,编写php文件。它应该保存为employeename.php,无论名称是什么。怎么可能?

3 个答案:

答案 0 :(得分:1)

您可能希望拥有一个可以读取$_GET全局的PHP脚本,并根据脚本参数有条件地加载员工数据,而不是创建许多PHP文件。这是一些伪代码:

   /* employee.php */
    switch($_GET['e']) {
        case 'john-smith':
            $info = getInfoFromDatabase('John Smith');
            break;
        case 'jane-doe':
            $info = getInfoFromDatabase('Jane Doe');
            break;
        /* ... etc ... */
    }

    displayInfo($info);

正如您所看到的,这个虚构的文件将在employee.php?e=john-smith访问时加载John Smith的信息,并在employee.php?e=jane-doe访问Jane Doe的信息,依此类推。然后,您可以根据需要在数据库中拥有尽可能多的员工记录,而且您永远不必更改任何内容。

答案 1 :(得分:0)

您可以使用get变量来使用单个PHP文件。 例如:

网址:example.com/employees/?employee=Jhon_Doe

代码:

$employee = $_GET["employee"];

最后,您使用该名称来识别您的特定员工记录,并显示他们的信息。

因此:

<h1><?php echo $employeeData["name"]?></h1>

请注意,以下建议是先进的,可能对初学者来说很难,我只是出于兴趣而添加它。 如果你想拥有干净的网址(没有?标记),那么使用单个文件并不明显,你可以使用重写规则:

将此文件添加到您的.htacces文件中,该文件位于服务器的根目录中。

RewriteEngine on RewriteRule ^ / employees /([.]+)/$ / employees /?employee = $ 1

答案 2 :(得分:0)

我知道这个答案并没有直接解决你的问题,但在阅读你的问题和随后的评论时,我想给你一个我希望我在PHP初学者时得到的答案

使用框架学习PHP,例如Yii Framework

专业人士从框架开始

  1. 您获得了良好的结构并学习了PHP-最佳实践
  2. 你会有很多例子 - 我发现很容易从例子中学习。
  3. 缺点

    1. 学习曲线更加陡峭。我花了几天时间才开始工作,但最终还是值得的。