Php 通过PDO获取所有记录

Php 通过PDO获取所有记录,php,pdo,Php,Pdo,尝试从表中提取所有数据,但既不显示数据也不显示任何错误。我知道我错过了一些东西,但我不知道到底是什么 <?php $st = $pdo->prepare("SELECT plan_id, plan_name, zone_id, operator_price, selling_price, validity, plan_type FROM plan_tbl"); $st->execute(); $cnt=$st->rowCount(); $user_record=$st-&

尝试从表中提取所有数据,但既不显示数据也不显示任何错误。我知道我错过了一些东西,但我不知道到底是什么

<?php
$st = $pdo->prepare("SELECT plan_id, plan_name, zone_id, operator_price, selling_price, validity, plan_type FROM plan_tbl");
$st->execute();
$cnt=$st->rowCount();
$user_record=$st->fetchAll();
}
catch (PDOException $ex) {
    echo  $ex->getMessage();
}
$rowdata="<tbody>";
foreach($plan_record as $plan_record1){
    $rowdata.="<tr>";
    $sr_no = $plan_record1['plan_id'];
    $plan_name = $plan_record1['plan_name'];
    //$user_fullname = $user_record1['fname'] . " " . $user_record1['mname'] . " " . $user_record1['lname'];
    //echo $user_fullname;
    $zone_id = $plan_record1['zone_id'];
    $operator_price = $plan_record1['operator_price'];
    $selling_price = $plan_record1['selling_price'];
    $validity = $plan_record1['validity'];
    $plan_type = $plan_record1['plan_type'];
    $icon="<i class='fa fa-pencil-square-o pad' aria-hidden='true'></i><i class='fa fa-times pad' aria-hidden='true'></i>";
    $rowdata.="</tr>";
}
?>
使用$user\u记录而不是$plan\u记录,因为您没有在代码中声明它

foreach($user_record as $plan_record1){
    $rowdata.="<tr>";
    $sr_no = $plan_record1['plan_id'];
    $plan_name = $plan_record1['plan_name'];
    //$user_fullname = $user_record1['fname'] . " " . $user_record1['mname'] . " " . $user_record1['lname'];
    //echo $user_fullname;
    $zone_id = $plan_record1['zone_id'];
    $operator_price = $plan_record1['operator_price'];
    $selling_price = $plan_record1['selling_price'];
    $validity = $plan_record1['validity'];
    $plan_type = $plan_record1['plan_type'];
    $icon="<i class='fa fa-pencil-square-o pad' aria-hidden='true'></i><i class='fa fa-times pad' aria-hidden='true'></i>";
    $rowdata.="</tr>";
}

我会使用有意义的变量名,比如$plans和$plan。还要注意的是,你不是

<?php
$st = $pdo->prepare("SELECT plan_id, plan_name, zone_id, operator_price, selling_price, validity, plan_type FROM plan_tbl");
$st->execute();
$cnt=$st->rowCount();
$plans=$st->fetchAll();
}
catch (PDOException $ex) {
    echo  $ex->getMessage();
}
$rowdata="<tbody>";
foreach($plans as $plan){
    $rowdata.="<tr>";
    $rowdata .= "<td>{$plan['plan_id']}</td>";
    $rowdata .= "<td>{$plan['plan_name']}</td>";
    $rowdata .= "<td>{$plan['zone_id']}</td>";
    $rowdata .= "<td>{$plan['operator_price']}</td>";
    $rowdata .= "<td>{$plan['selling_price']}</td>";
    $rowdata .= "<td>{$plan['validity']}</td>";
    $rowdata .= "<td>{$plan['plan_type']}</td>";
    $rowdata .= "<td><i class='fa fa-pencil-square-o pad' aria-hidden='true'></i><i class='fa fa-times pad' aria-hidden='true'></i></td>";
    $rowdata.="</tr>";
}
$rowdata .= "</tbody>";

echo $rowdata;
退出循环后,请确保使用以下内容显示循环:

echo $rowdata

我还带出了youclosing?>标记,因为如果它位于文件的末尾,可能会导致一些问题

塔克斯!它现在工作得很好。。!塔克斯!现在我的记录已被提取,但未显示在表中!你把我的prblm弄对了??是的,$sr_no中存储的数据每次回到foreach循环时都会被擦除。因此,您只会得到$sr_no变量中检索到的最后一个值。相反,只需像我上面展示的那样将数据附加到$rowdata即可。明白了!!现在工作完美!!非常感谢。我错过了下面的部分!这是完美的代码!!谢谢你的帮助!我也会尝试接球,因为它是,因为它是
$sr_no = $plan['plan_id'];
echo $rowdata