Что я хочу, если результат не найден из запроса select, я хочу показать еще функцию вроде:
else {
$html .= 'You have not added stock at all';
}
Потому что в этом случае я использовал строку html
, я не знаю, как эхо-выражение else.
Более или менее мои коды выглядят так прямо сейчас (Есть много частей, которые я удалил с тех пор, как он слишком длинный)
<?php
include("../actions/config.php");
$resultsClaim = $mysqli->query("SELECT");
$orders = array();
$html = '';
if ($resultsClaim) {
while($obj = $resultsClaim->fetch_object()) {
$orders[$obj->id_cart][$obj->items] = array('status' => $obj->status ...);
}
foreach ($orders AS $order_id => $order) {
$orderCount = count($order);
$html .= '<tbody><tr><td rowspan="' . count($order) . '">' . $order_id . '</td>';
$row = 1;
foreach ($order AS $item => $data) {
if ($row > 1) { $html .= '</tr><tr>'; }
$html .= '<td>' . $item . '</td>';
$row++;
}
$html .= '<div>
<div class="member-popUpeStock'.$data['id'].' member-PopUp">
<div class="member-PopUp-box">
<a href="" title="Close" class="close">X</a>
<div class="tablePopUp">
<div class="table-row">
<div class="col">: '.$data['method'].' </div>';
///HERE WHERE I WANT TO DO THAT////
else {
echo 'Nothing';
}
echo $html;
?>
Кто-нибудь может мне помочь! Заранее спасибо.
Поскольку вы берете без заказов в переменную, вы можете использовать это непосредственно, чтобы узнать, существуют ли ордера или нет.
$orderCount = 0; //Define orderCount in the beginning.
//Rest of the code, till foreach
foreach(){
//Rest of the code here
}
if(intval($orderCount) <= 0) //Using intval, for the case the for loop is not executed at all
{
$html = "Nothing";
}
Здесь вам не нужно конкатенировать его до $ html, так как вы показываете содержимое таблицы, если порядок существует, или вы показываете "Nothing". Таким образом, $ html будет либо иметь содержимое таблицы, либо "Nothing".
Надеюсь это поможет.
Notice: Undefined variable: orderCount in...
$orderCount = 0;
Попробуйте
<?php
include("../actions/config.php");
$resultsClaim = $mysqli->query("SELECT");
$orders = array();
$html = '';
if (!empty($resultsClaim)) {
while ($obj = $resultsClaim->fetch_object()) {
$orders [$obj->id_cart][$obj->items] = array('status' => $obj->status);
}
foreach ($orders AS $order_id => $order) {
$orderCount = count($order);
$html .= '<tbody><tr><td rowspan="' . count($order) . '">' . $order_id . '</td>';
$row = 1;
foreach ($order AS $item => $data) {
if ($row > 1) {
$html .= '</tr><tr>';
}
$html .= '<td>' . $item . '</td>';
$row++;
}
$html .= '<div>
<div class="member-popUpeStock' . $data['id'] . ' member-PopUp">
<div class="member-PopUp-box">
<a href="" title="Close" class="close">X</a>
<div class="tablePopUp">
<div class="table-row">
<div class="col">: ' . $data['method'] . ' </div>';
}
}
///HERE WHERE I WANT TO DO THAT////
else {
echo 'Nothing';
}
echo $html;
?>
Сначала получите количество $orders
if (! empty($orders)) {
foreach ($orders AS $order_id => $order) {
// YOUR CODE HERE
}
}
else {
$html .= 'Nothing'; // Append your 'no records found' message to the '$html' variable:
}
foreach ($orders AS $order_id => $order) { } else {}
Так что "}" отсутствует для цикла foreach. Надеюсь, это сработает для вас. Дайте мне знать, если вам нужна дополнительная помощь.
php
добавляет else
ветку foreach
?
if($orders){foreach($orders ...){...}} else {}