数据库查询 table select 从第二行开始而不是第一行
database query table select starts at second row not first
我基本上使用 html、php、Smarty。
当我循环我的结果以显示数据库 table 行时,它忽略了我的数据库 table.
的第一行
所以如果我有一个有 3 行的 table(product_id = 1,product_id = 2,product_id = 3),它只显示 product_id '2' 和 '3'.
我希望能够显示第一行 - (product_id = 1)
.PHP
<?php
$new = ['product_id','product_category','product_price','product_quantity','product_about','product_color'];
//Database connection
$db = mysqli_connect('xxx','xxx','xxx','xxx')
or die('Error connecting to MySQL server.');
//access Smarty template engine
require_once('Smarty-3.1.30/libs/Smarty.class.php');
$smarty = new Smarty();
$smarty->template_dir = 'views';
$smarty->compile_dir = 'tmp';
//query product page
$query = "SELECT * FROM cs_shop";
mysqli_query($db, $query) or die('Error querying database.');
$result = mysqli_query($db, $query);
$row = mysqli_fetch_array($result);
//query an array of products
$rows = array();
//loop start
while ($row = mysqli_fetch_array($result)) {
$rows[] = array(
'product_id' => $row['product_id'],
'product_category' => $row['product_category'],
'product_price' => $row['product_price'],
'product_quantity' => $row['product_quantity'],
'product_about' => $row['product_about'],
'product_color' => $row['product_color']
);
}
//db collect data
$smarty->assign('row', $rows);
//template
$smarty->display('index.tpl');
mysqli_close($db);
?>
.TPL
<div class="test divider">
<ul>
{foreach from=$row item="item"}
<li>{$item['product_id']}</li>
{/foreach}
</ul>
</div>
结果
2
3
现在如何显示 缺少的 ID .. 我对此很陌生,因此非常感谢任何提示或帮助。提前致谢。
预期结果
1
2
3
在查询后立即删除以下行 $result = mysqli_query($db, $query);
:
$row = mysqli_fetch_array($result); // REMOVE ME
它会检索第一个结果,然后在它进入您的 while
循环并获取下一个结果之前您不对其进行任何操作。
我基本上使用 html、php、Smarty。
当我循环我的结果以显示数据库 table 行时,它忽略了我的数据库 table.
的第一行所以如果我有一个有 3 行的 table(product_id = 1,product_id = 2,product_id = 3),它只显示 product_id '2' 和 '3'.
我希望能够显示第一行 - (product_id = 1)
.PHP
<?php
$new = ['product_id','product_category','product_price','product_quantity','product_about','product_color'];
//Database connection
$db = mysqli_connect('xxx','xxx','xxx','xxx')
or die('Error connecting to MySQL server.');
//access Smarty template engine
require_once('Smarty-3.1.30/libs/Smarty.class.php');
$smarty = new Smarty();
$smarty->template_dir = 'views';
$smarty->compile_dir = 'tmp';
//query product page
$query = "SELECT * FROM cs_shop";
mysqli_query($db, $query) or die('Error querying database.');
$result = mysqli_query($db, $query);
$row = mysqli_fetch_array($result);
//query an array of products
$rows = array();
//loop start
while ($row = mysqli_fetch_array($result)) {
$rows[] = array(
'product_id' => $row['product_id'],
'product_category' => $row['product_category'],
'product_price' => $row['product_price'],
'product_quantity' => $row['product_quantity'],
'product_about' => $row['product_about'],
'product_color' => $row['product_color']
);
}
//db collect data
$smarty->assign('row', $rows);
//template
$smarty->display('index.tpl');
mysqli_close($db);
?>
.TPL
<div class="test divider">
<ul>
{foreach from=$row item="item"}
<li>{$item['product_id']}</li>
{/foreach}
</ul>
</div>
结果
2
3
现在如何显示 缺少的 ID .. 我对此很陌生,因此非常感谢任何提示或帮助。提前致谢。
预期结果
1
2
3
在查询后立即删除以下行 $result = mysqli_query($db, $query);
:
$row = mysqli_fetch_array($result); // REMOVE ME
它会检索第一个结果,然后在它进入您的 while
循环并获取下一个结果之前您不对其进行任何操作。