Я пытаюсь использовать PDO таким образом и повторно использовать шаблон вывода:
selected_products_show .= '<div class="'.$product_id.'">'.$product_name.'</div>';
Используется для двух запросов, которые будут выполнены, так как оба $ order = 1 & $ shipped = 1,Проблема в разделе вывода:
<?php if ($ordered == 1) { echo $selected_products_show;}?>
<?php if ($shipped == 1) { echo $selected_products_show;}?>
$ selected_product_show перезаписывается вторым циклом, где $ shipped = 1.Как вытащить правильный запрос (что происходит сейчас) и прикрепить правильный цикл с правильным отображением переменной для этого цикла (все с одним циклом while, при повторном использовании одного и того же шаблона вывода)?
Воткод:
$ordered = 1;
$shipped = 1;
if ($ordered == 1) {
$queryEnd = "WHERE product_id IN (?,?,?)";
}
if ($shipped == 1) {
$queryEnd = "ORDER BY product_id DESC LIMIT 5";
}
$query = "SELECT product_id, product_name FROM products $queryEnd";
if ($ordered == 1) {
$ordered_products = array(1,2,3);
$selected_products = $dbh->prepare($query);
$selected_products->execute($ordered_products);
}
if ($shipped == 1) {
$selected_products = $dbh->prepare($query);
$selected_products->execute();
}
while($row = $selected_products->fetch(PDO::FETCH_ASSOC)){
$product_id = $row["product_id"];
$product_name = $row["product_name"];
$selected_products_show .= '<div class="'.$product_id.'">'.$product_name.'</div>';
}
<?php if ($ordered == 1) { echo $selected_products_show;}?>
<?php if ($shipped == 1) { echo $selected_products_show;}?>
Есть идеи, как этого добиться?