问题标签 [php-pgsql]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
48 浏览

php - 如何获得与 html 中显示的行一样多的输入?

我想在单击按钮时打开一个包含输入的表单的弹出窗口。我这样做没有问题,特殊性是我想要与原始窗口中的一行单元格一样多的输入(以弹出窗口的形式)。

基本上我有page1.php那个输出 SQLSELECT查询。onClick()对于每一行,我都会生成一个按钮,用于在事件中打开一个弹出窗口。我想使用这个按钮让用户可以修改一行。 图像

我以这种方式生成我的表:

我看不到如何inputs连续生成尽可能多的单元格

并且

如何inputs使用已填充的内容设置默认值。

我想从中学习,所以,如果可能的话,向我解释我在这里做错了什么,或者我的方法是否缺乏洞察力。

0 投票
0 回答
42 浏览

postgresql - 类似数据库中的不同 postgrese 行为

我将 PHP 7.1 与 Pgsql 9.2.24 一起使用。拥有两个相似的项目副本(生产和开发)和两个具有相同数据的相似数据库。但是查询在 GROUP BY 情况下的工作方式不同。

我尝试使用 SHOW ALL 查询检查所有 sql 设置,但没有发现任何区别。我知道,重写查询可以解决我的问题,但是使用 GROUP BY 运算符的代码太多。完整的 SQL 版本:x86_64-redhat-linux-gnu 上的 PostgreSQL 9.2.24,由 gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-28) 编译,64 位。尝试运行 sql-query:

SELECT chr.*, usr.image, usr.first_name, usr.second_name, usr.last_activity, CASE WHEN MAX(chrm.created_at) IS NOT NUll THEN MAX(chrm.created_at) ELSE 0 END AS created_m, MAX(chrm.id) AS id_m FROM chat_rooms as chr LEFT JOIN users usr ON chr.author_id = usr.id LEFT JOIN chat_messages chrm ON chr.id = chrm.chat_id LEFT JOIN chat_rooms_user chru ON chr.id = chru.chat_rooms_id WHERE chru.user_id = 1104 AND chru.status = 1 AND ( chrm.status != 10 OR chrm.status IS NULL) AND chr.status = 1 GROUP BY chr.id, usr.id HAVING coalesce(COUNT(chrm.id),0) > 0 ORDER BY created_m DESC LIMIT 10 OFFSET 0

并得到错误(服务器状态 500):未捕获的异常:错误:列“chr.parent_id”必须出现在 GROUP BY 子句中或用于聚合函数中

其他数据库返回给我的不是错误,而是正确的数据结果。

0 投票
0 回答
114 浏览

php - PHP 致命错误:调用未定义函数 pg_pconnect()

我正在运行并且CentOS已经安装了ApachePHPphp-pgsql

运行我的PHP脚本:

作品。但是当通过Apache我调用它时,我在httpd日志中得到了错误:

PHP 致命错误:调用未定义函数 pg_pconnect()

应该php-pgsqlApache?

0 投票
2 回答
469 浏览

php - PHP 的 pg_fetch_assoc() 是否使用迭代器/游标?

PHP 是否在pg_fetch_assoc()内部运行

使用迭代器/游标,还是一次获取所有数据,网络方式?

\PDO使用光标吗?

我的上下文正在获取大量数据,我想知道它是作为一个整体提取还是逐行提取(或者当游标包含完整数据集的子集时,是逐行限制)。

0 投票
1 回答
1003 浏览

php - Postgresql 查询返回引号之间的字符串值 " 如果它包含任何空格字符,或者如果它没有空格字符则不带引号

所以我遇到了这个奇怪的问题,我不知道是什么原因造成的。我们在 PHP 中使用 Charts.js 来绘制一些图表。我们将创建图表所需的参数存储到 PSQL 表中,以便在需要时加载。

我的问题在于标题、组和标签参数,它们都是字符串数组。它们存储在 text[] 表中。问题是,当我查询图形的参数时,如果数组中的字符串有空格,则在引号之间返回,否则作为字符串本身返回。

我有一个关联数组 $graph ,它存储图形的参数并用于将值插入数据库:

插入数据库的字符串数组是这样的:

如果我在数据库中查询我的标签,它们看起来像这样:

在此处输入图像描述

现在要查询数据,我们对所需的每个图形的参数执行“SELECT *”并再次存储它们的值关联数组(用作 Charts.js 绘图仪的参数)。

这就是我的 3 个图表中每个图表的标签的样子:

所以在数据库中,字符串没有引号,如果一个 qstring 有一个空格,它会在引号之间返回,这并不全是坏的,因为我希望我的字符串用引号引起来。

有没有办法强制数组中返回的每个字符串都在所有引号内?

我已经尝试将这样的数组插入数据库:

如果我查看数据库,字符串没有引号,它们会再次像上面一样返回。

0 投票
1 回答
1896 浏览

postgresql - 我无法在 Mac Big Sur 上的 MAMP 中添加 pgsql PDO 驱动程序

我已经用 PGAdmin4 安装了 MAMP 和 PostgreSQL,但是我遇到了一些问题。

我在终端中收到 psql“找不到命令错误”。我已添加export PATH=/Library/PostgreSQL/10/bin:$PATH~/.bash_profile,但每当我重新打开终端时,我都会再次收到相同的错误。

每当我尝试执行composerphp artisan在我的 Laravel 项目中,我都会收到以下错误,但我仍然能够迁移数据库:

Warning: PHP Startup: Unable to load dynamic library 'pdo_pgsql' (tried: /usr/local/lib/php/pecl/20180731/pdo_pgsql (dlopen(/usr/local/lib/php/pecl/20180731/pdo_pgsql, 9): image not found)

Warning: PHP Startup: Unable to load dynamic library 'pgsql' (tried: /usr/local/lib/php/pecl/20180731/pgsql (dlopen(/usr/local/lib/php/pecl/20180731/pgsql, 9): image not found)

PDO Drivers每当尝试浏览项目和列表中的mysql 和 sqlite 可用时,都会出现“找不到驱动程序”错误phpinfo(),但 pgsql 不可用。

MAMP
PostgreSQL 10
PHP:7.3.21
操作系统:MAC Big Sur

0 投票
0 回答
36 浏览

php - Dolibarr 项目模块:DB_ERROR_42803

长话短说:我在 AWS 上启动了一个 EC2 实例来运行 Dolibarr v13,在 RDS 上运行 PostgreSQL 12.4,并在 Ubuntu 20.04 LTS 上运行 Dolibarr 本身。全部 DIY,而不是 Bitnami 的 AMI。

一旦我开始在网络应用程序的控制台上设置模块,我得到了这个:

我在通常的网站上找不到其他人看到这个,但我不能是唯一的。我该如何解决?我不精通PHP,所以我不确定在哪里可以找到试图访问我的数据库的代码行。

0 投票
0 回答
359 浏览

php - 如何为 Apple M1 芯片上 Homebrew 安装的 PHP8.0 添加 Postgres 支持?

我已经用 Homebrew 安装和配置了 PHP8.0(Big Sur 已经附带)。这很好用。但是,我还需要安装对 PostgreSQL 的支持。我该怎么做?

为了使Adminer正常工作,需要PgSQL 和PDO_PgSQL 扩展。以下命令不起作用。

PgSQL 和 PDO_PgSQL 扩展已在 php.ini 文件上启用。但是,Adminer 仍然显示错误:

支持的 PHP 扩展(PgSQL、PDO_PgSQL)均不可用

0 投票
2 回答
53 浏览

sql - Postreg SQL 使用逗号分隔的引号获取所有值

我有存储1,2,3,4,5在数据库中的值。

我想要它回来'1','2','3','4','5'

我正在尝试 string_agg(format('''%s''', ticker_information.user_groups), ',') 但给了我结果'1,2,3,4,5'

有什么解决办法吗?或者让我知道如果我做错了。

谢谢

0 投票
2 回答
43 浏览

php - PHP postgres 启用 ssl 支持

很抱歉就多年前提出的问题回复您。但我真的坚持这一点。我有一个非常旧的遗留应用程序,运行 PHP 5.2.17。我按照本指南设置我的 docker 容器 https://andrewscaya.net/blog/bringing-php-52-back-life

我已经正确设置了一切。我下载并编译了一个 PHP 安装并使用 Apache 进行了配置。并且它与 php 一起工作正常。

但是,我必须为 POSTGRES 连接提供 SSL 支持(在 PHP 中)。根据 PHPINFO,现在默认未启用

我基本上有很多年前其他人遇到的同样问题。Pgsql 的 SSL 支持
请参阅: 为 pgsql 启用 SSL 支持

因此,据我了解,我需要再次重新编译 PHP,但是使用名为 libpg 的包?我从哪里得到这个包,如何用 PHP 源代码编译它?