繁体   English   中英

PHP脚本仅返回SELECT语句的第一行

[英]PHP script only returns first row of SELECT statement

我有一个PHP脚本来运行mssql查询。 当我运行“ SELECT first_name,last_name,mi FROM users”之类的查询时,我得到的只是“ first_name”。 这是脚本:

<?php

require '../../scripts/database_connection.php';

$query_text = $_REQUEST['query'];
$result = mssql_query($query_text);

 if (!result) {
   die("<p>Error: " . $query_text ."</p>");
}

$return_rows = true;
 if (preg_match("/^\s*(CREATE|INSERT|UPDATE|DELETE|DROP)/i,
   trim(strtoupper($query_text)))) {
  $return_rows = false;
}

if ($return_rows) {
 echo "<p>Results from your query:</p>";
 echo "<ul>";

while ($row = mssql_fetch_row($result)) {
 echo "<li>{$row[0]}</li>";
}

 echo "</ul>";
}

 else {

  if ($result) {
   echo "<p>Your query was processed successfully.</p>";
   echo "<p>$query_text</p>";
 }
}

?> 

有什么建议么?

$ row是一个数组,其中包含您选择的所有列。 只需迭代foreach或使其内爆:

while ($row = mssql_fetch_row($result)) {
    echo "<li>".implode(" - ", $row)."</li>";
}

您可能还想使用mssql_fetch_assoc获取相应的列名:

您是否尝试访问$ row [1]和$ row [2]?

    while ($row = mssql_fetch_row($result)) {
     echo "<li>{$row[0]} - {$row[1]} - {$row[2]}</li>";
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM