如何创建 Web 前端以在后台访问 Postgres 数据库?

Posted

技术标签:

【中文标题】如何创建 Web 前端以在后台访问 Postgres 数据库?【英文标题】:How do I create a web front end to access a Postgres database behind-the-scenes? 【发布时间】:2017-07-18 06:27:52 【问题描述】:

我在 CentOS 7.3 服务器上安装了 php、Apache Web 服务器和 Postgres。 PHP 独立工作。 Apache Web 服务器独立工作。 Postgres 独立工作。

我创建了一个 PHP 脚本来对 Postgres 数据库进行身份验证。但它不会通过网络浏览器呈现给用户。此文件不接受用户输入。

我想创建一个接受用户名和密码并通过 Postgres 数据库进行身份验证的网页。我有各种 Postgres 凭据。如何创建网页以让用户访问 Postgres 数据库(例如,服务器端、后端身份验证)?

我希望用户从 Web 前端访问数据库。我希望经过身份验证的用户从网站运行搜索。这些搜索将由幕后的 select 语句支持。也许我不需要 Apache Web 服务器。

【问题讨论】:

【参考方案1】:

从你粗略的信息中我了解到,我可以给你一些粗略的建议:

    您需要 Apache 或 nginx 网络服务器将 PHP 服务器页面提供给客户端的网络浏览器

    您可以创建一个简单的登录界面并使用以下函数对 PostgreSQL 进行身份验证: http://php.net/manual/en/function.pg-connect.php 该函数在登录失败时返回 FALSE。

    如果函数返回 TRUE,则需要:

    a/ 将用户凭据保存到 $_SESSION 或 PHP_AUTH

    b/ 向用户显示一个简单的界面来运行搜索

    c/ 在后端它将是带有用户“搜索”输入的自定义 SQL 命令,例如 SELECT * FROM products WHERE name LIKE '%whatever%'

    d/ 并将结果从数据库显示到一个简单的 html 表格中。

    e/ 记得避开搜索查询 - XSS 预防 :)

【讨论】:

3a 怎么做?

以上是关于如何创建 Web 前端以在后台访问 Postgres 数据库?的主要内容,如果未能解决你的问题,请参考以下文章

如何创建 PHP SOAP 客户端以在 SSL 下调用 WCF Web 服务?

asp.net 如何在后台访问链接?

web前端性能优化总结

web前端性能优化总结

web前端性能优化总结

web前端页面性能优化小结