【问题标题】:Connecting to MSSQL database with ADO and PHP使用 ADO 和 PHP 连接到 MSSQL 数据库
【发布时间】:2023-04-07 08:31:01
【问题描述】:

我有一个 MSSQL 数据库。我写了一个 php 页面来连接并从中检索数据。该代码适用于我的本地主机。

$strCon = "提供者=SQLOLEDB;数据源=本地;数据库=测试;uid=sa;pwd=go;"; $strAlias = "乔治"; $strSql = "SELECT LINK FROM LINKS WHERE ALIAS = '" 。 $str别名。 "'"; $Con = new COM ("ADODB.Connection") 或 die("无法启动 ADO"); $Rs = new COM ("ADODB.Recordset") or die("Cannot start ADO"); $Con->open($strCon); $Rs->open($strSql,$Con,1,3); if (!$Rs->EOF && !$Rs->BOF) { $strTargetLink = $Rs->字段['LINK']; 回声 $strTargetLink; } $Rs->关闭(); $Con->关闭(); $Rs = 空; $Con = null;

当我在服务器上运行此代码时,我收到一些错误?当回显 $strTargetLink; row 被执行,word

对象

在发送的 html 页面以及该页面的源代码中收到。

我在 IIS 上将 PHP 作为 FastCGI 应用程序运行。支持 PHP 4.4.7 和 5.2.6。

有什么想法吗?这个Object文字是什么意思?

谢谢。

我现在尝试了,而不是使用 echo

var_dump($strTargetLink);

并收到信息

object(COM)(1) { [0]=> (COM) 类型的资源(3) }

【问题讨论】:

  • 请始终引用您遇到的确切错误

标签: php sql-server iis ado


【解决方案1】:

尝试使用 var_dump 代替 echo。它至少会为您提供有关$strTargetLink 中包含的对象的更多信息。

【讨论】:

  • 谢谢。我试了一下并收到: object(COM)(1) { [0]=> resource(3) of type (COM) } 我不是 php 程序员。通常我使用asp,但我只需要一个php页面即可运行。这个新代码是什么意思?我现在能做什么?
  • 我不熟悉在 php 中使用 adodb,所以我想说的是继续 vardumping 对象,比如 vardump($strTargetLink[0])
【解决方案2】:

我找到了一个解决方案,现在它可以工作了。因此,以防万一您想与 ADO 建立联系,我正在写我所做的。

代替

$strTargetLink = $Rs->Fields['LINK']; 

我写的

$strTargetLink = $Rs->Fields(0);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-06-24
    • 1970-01-01
    • 1970-01-01
    • 2012-09-25
    • 1970-01-01
    • 2018-01-12
    • 2013-04-13
    相关资源
    最近更新 更多