PHP - 访问 MS SQL 视图和回显结果

Posted

技术标签:

【中文标题】PHP - 访问 MS SQL 视图和回显结果【英文标题】:PHP - Access MS SQL View and Echo Results 【发布时间】:2013-08-08 16:47:31 【问题描述】:

我正在尝试使用 php 从 MS SQL 数据库中访问和读取视图。现在我只是想在屏幕上显示结果。当我测试时,我的页面什么也没有显示。 这就是我所拥有的:

<?php
$myServer = "localhost";
$myUser = "username1";
$myPass = "password1";
$myDB = "database1";

//connect to database
$dbhandle = mssql_connect($myServer, $myUser, $myPass)
  or die("Couldn't connect to SQL Server on $myServer");

//select database
$selected = mssql_select_db($myDB, $dbhandle)
  or die("Couldn't open database $myDB");

//declare statement
$query = "SELECT ProductId";
$query .= "FROM Inventory ";
$query .= "WHERE UPC='15813658428' and ManufacturerID=465";

//execute the query
$result = mssql_query($query);

$numRows = mssql_num_rows($result);
echo "<h1>" . $numRows . " Row" . ($numRows == 1 ? "" : "s") . " Returned </h1>";

//display results
while($row = mssql_fetch_array($result))

  echo "<li>" . $row["id"] . $row["name"] . $row["year"] . "</li>";

//close
mssql_close($dbhandle);
?> 

【问题讨论】:

【参考方案1】:

当您从 PHP 获得完全空白的输出时,通常是因为服务器在解析或交互您的代码时遇到了问题。当您没有收到其他错误时,处理此问题的最佳方法是删除(或注释掉)大块代码并使用数字回显语句来验证您没有删除的代码是否正在执行。然后慢慢将越来越多的代码添加回去。

在这种特定情况下,我猜问题可能归结为您的 php 文件中 ?&gt; 之后的空格。这可能会使服务器感到困惑。尝试完全删除?&gt;

如果仍然没有输出,则注释掉 $myDB = "database1"; 之后的所有内容,在注释之前添加一条 echo 语句,然后慢慢将代码移回未注释的部分,直到找到导致问题的行。

【讨论】:

以上是关于PHP - 访问 MS SQL 视图和回显结果的主要内容,如果未能解决你的问题,请参考以下文章

如何在PHP中回显已准备好的sql语句的结果

PHP - 仅当余数为 0 时才执行(和回显)操作 - 进入无限循环

Sql注入-6:布尔注入(上)

如何动态回显php $ _GET变量的多个结果

Node.js IO处理输入和回显,以及当今web应用程序的发展史

如何在保持格式的同时从数据库中检索和回显文本[重复]