【问题标题】:Variable not showing first row of the query变量未显示查询的第一行
【发布时间】:2013-04-12 15:37:28
【问题描述】:

这个想法是在一个 javascript 变量中获取一个由 mysql 查询提供的数组。它工作正常,但变量的结果显示比查询负 1 行。

下面我只提供了代码参考问题,跳过所有其余部分,我想不需要。

提前感谢您的帮助!

查询:

$search_qryvalAltnsRotas = "-1";
if (isset($_GET['search'])) {
  $search_qryvalAltnsRotas = $_GET['search'];
}
mysql_select_db($database_connect, $connect);
$query_qryvalAltnsRotas = sprintf("SELECT altn, destino FROM tblalternativos WHERE destino = %s ORDER BY destino ASC", GetSQLValueString($search_qryvalAltnsRotas, "text"));
$qryvalAltnsRotas = mysql_query($query_qryvalAltnsRotas, $sado_leitor) or die(mysql_error());
$row_qryvalAltnsRotas = mysql_fetch_assoc($qryvalAltnsRotas);
$totalRows_qryvalAltnsRotas = mysql_num_rows($qryvalAltnsRotas);

(...) 下面是变量(javascript 函数的一部分):

var alternatesq = 
            <?php               
            while( $row_qryvalAltnsRotas = mysql_fetch_assoc($qryvalAltnsRotas) ) {
                $alternates[] = $row_qryvalAltnsRotas['altn'];
            }

            echo json_encode( $alternates );
            ?>;

【问题讨论】:

    标签: php javascript mysql arrays variables


    【解决方案1】:

    因为你已经调用了两次mysql_fetch_assoc,所以去掉这行

    $row_qryvalAltnsRotas = mysql_fetch_assoc($qryvalAltnsRotas);
    

    只用这个

    while( $row_qryvalAltnsRotas = mysql_fetch_assoc($qryvalAltnsRotas) )
    

    【讨论】:

    • 问题已解决。非常感谢您的帮助@Yogesh Suthar!还没有足够的声望投票。
    • @user1915258 当你有 15 个代表点时,你可以投票,赞成,反对需要 125 个代表点...:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-04-28
    • 1970-01-01
    • 2014-01-12
    • 2011-10-26
    • 2018-08-05
    • 2011-07-26
    • 1970-01-01
    相关资源
    最近更新 更多