草庐IT

pg_typeof

全部标签

php - 如何倒回 pg_fetch_assoc($result, null) 迭代器

我正在使用pg_fetch_assoc迭代SQL查询的结果,但我需要多次执行此操作,而且我找不到“倒回”迭代器的方法。while($record=pg_fetch_assoc($result,null)){if($record["position"]==$position_cell){echo"J".$record["order"]."";};}所以,如果这个$result包含4行,我将遍历其中的四个,但是当我再次执行这段代码时,它什么也不会做。我知道我可以用一个整数而不是空值进行迭代,但是我必须计算行数,我发现这种语法非常方便,所以如果你能告诉我一个方法就太好了去做。非常感谢。

php - pg_exec 可持续吗?

pg_exec()可用还是弃用?我继承了一个正在使用它的脚本,它似乎可以工作,但php.net引用是a404.我也不是在谈论PDOpg_execute。RandomreferenceI'vefoundonthefunction 最佳答案 现在它被称为pg-query:http://www.php.net/manual/en/function.pg-query.php来自手册:Thisfunctionusedtobecalledpg_exec().pg_exec()isstillavailableforcompatibilityrea

php - pg_prepare() 准备好的语句(不是 PDO)是否可以防止 SQL 注入(inject)?

我正在处理的目标系统不支持PDO,尽管我在上使用PHP5.1.x寻求防止SQL注入(inject)的解决方案PostGres-DB8.2+。目前没有切换到PDO的机会。我目前的解决方案是pg_prepare-prepared语句://TryingtopreventSQL-Injection$query='SELECT*FROMuserWHERElogin=$1andpassword=md5($2)';$result=pg_prepare($dbconn,"",$query);$result=pg_execute($dbconn,"",array($_POST["user"],$_POS

php - pg_connect - php 脚本从命令行工作,但不能从网页工作

我有一个CentOSapache网络服务器,我已经设置它来访问我们的数据库服务器(也是CentOS)。在数据库服务器上的pg_hba.conf中有一个Web服务器条目。我可以在运行网络服务器的机器的命令行(使用bash下的“php-a”)上毫无问题地进行连接。这是我的脚本(凭据损坏)if(pg_connect("host=192.168.6.11port=5432dbname=C_testuser=Cuserpassword=c1811wet")){echo'connected';}else{echo'not';}当从命令行运行此脚本时,我得到“连接”。当我作为网页运行时(http:/

php - pg_close 在使用持久的 postgres 连接时?

当使用pg_pconnect连接从php连接到postgres时,pg_close是否:真的关闭连接(破坏持久效果)?将连接移交给pconnect池? 最佳答案 与PHP.ini配置有关,如标签pgsql.allow_persistent设置为true那么pg_close将不会关闭连接,因为它是持久的,否则如果你将它设置为falsepg_close将关闭连接。文档说明pg-pconnect:pg_close()willnotclosepersistentlinksgeneratedbypg_pconnect()

php - pg_escape_string 不工作

我想使用pg_escape_string在我的password谁能告诉我它是如何使用的?在我的postgresqlinsert表格$query="insertintovmobjects(guid,ipaddress,username,password,hostid,vmname,guestostype)values('".$guid."','".$ip."','".$username."','".$password."','".$hostid."','".$name."','".strtolower($os)."')";我正在使用$escaped=pg_escape_string($p

php - pg_free_result() 是否必要,即使结果超出范围?

PHP文档对pg_free_result()有这样的说法:Thisfunctionneedonlybecalledifmemoryconsumptionduringscriptexecutionisaproblem.Otherwise,allresultmemorywillbeautomaticallyfreedwhenthescriptends.http://www.php.net/manual/en/function.pg-free-result.php我会(也许天真地)期望通过调用pg_query()返回的资源在超出范围时被垃圾回收。在这样的假设函数中:functionselec

php - 在 PHP 中使用 pg_fetch_row 引用列名

如何使用PHP的pg_fetch_row引用列名?Example关于我们一直在用Cha调试的代码。$dbconn=pg_connect("host=localhostport=5432dbname=noauser=noapassword=123");$result_titles_tags=pg_prepare($dbconn,"query777","SELECTquestion_id,titleFROMquestionsWHEREquestion_idIN(SELECTquestion_idFROMquestionsORDERBYwas_sent_at_timeDESCLIMIT50)

PG14:adminpack 插件源码分析

adminpack提供了大量支持功能,pgAdmin和其他管理工具可以使用这些功能提供额外功能,例如远程管理服务器日志文件。默认情况下,只有数据库超级用户才能使用所有这些功能,但其他用户也可以使用GRANT命令使用这些功能。我们先来看一下他支持的函数,可以通过\dx+adminpack来进行查看functionpg_file_rename(text,text)重命名文件functionpg_file_rename(text,text,text)重命名文件,如果新文件存在,将将其命名为第三个参数的名字functionpg_file_sync(text)文件刷入磁盘functionpg_file_

PG14:auth_delay 插件源码分析

auth_delay让服务器在报告身份验证失败前短暂暂停,以增加对数据库密码进行暴力破解的难度。需要注意的是,这对阻止拒绝服务攻击毫无帮助,甚至可能加剧攻击,因为在报告身份验证失败前等待的进程仍会占用连接。要使用这个模块必须要在postgresql.conf中配置参数shared_preload_libraries='auth_delay'auth_delay.milliseconds='500'这个代码比较简单,一共分为三个部分。hook函数在libpq中定义了一个ClientAuthentication_hook函数指针,代码如下:typedefvoid(*ClientAuthentica