У меня есть блок меню, который содержит некоторые ссылки, такие как: Some_link1: 5 шт., Some_link2: 13 шт., Some_link3: 0 шт., Some_link4: 0 шт.
Я хочу скрыть ссылку «Some_link» со значением 0шт. Я пишу код с запросом MySQL, но он не работает! «Some_link» с 0pcs не скрывает, но показывает значение 0pcs.
Что я делаю не так или в чем моя ошибка? Я не могу понять Спасибо за помощь.
<?
$resultonline = mysql_query("SELECT count(customers_id) from tbl_customers WHERE active='Y' and saled='N'");
$resultonshafasaled = mysql_query("SELECT count(customers_id) from tbl_customers WHERE shafa='Y' and saled='Y'");
$resultonlinenonactive = mysql_query("SELECT count(customers_id) from tbl_customers WHERE active='N' and saled='N'");
$topmenuNotOnShafa = mysql_result($resultonshafasaled, 0);
$topmenuonline = mysql_result($resultonline, 0);
$topmenuoffline = mysql_result($resultonlinenonactive, 0);
$topmenuonlineText = "Some text : ";
$topmenuOnShafaText = "Some text 2 : ";
?>
<?php if ($topmenuonline!=0): ?><?=$topmenuonlineText;?><?php endif; ?>
<?php if ($topmenuonline!=0): ?><a href="some_link" target="_self"><?=$topmenuonline;?></a>
<?php endif; ?>
<?php if ($topmenuoffline!=0): ?> / <a href="some_link" target="_self"><?=$topmenuoffline;?></a>
<br /><?php endif; ?>
<?php if ($topmenuNotOnShafa!=0): ?>
<span class="saled-warning"><a href="some_link" target="_self" ><?=$topmenuNotOnShafa;?></a></span>
<?php endif; ?>
Вы можете проверить, равно ли значение элемента 0 или нет, и распечатать его, только если это не 0:
Пример:
<?php
$items='0';
if(isset($items)){
if($items != 0){
echo "<a href='non_zero_item.php'>Item from menu (".$items.")";
} else {
echo "Oh sorry, there are no items!";
}
} else {
echo "items variable is not declared!";
}
?>
В этом примере вы получите условие else, если вы измените переменную $ items на 1, вам будет напечатан HTML-код. Это небольшой тест, переменная может быть результатом запроса mysql, ручным вводом, подобным этому, и т. Д.
Если вы не хотите печатать что-либо, если значение равно 0 или не объявлено, как я понимаю, вы хотите, чтобы вы могли сделать только это:
<?php
$items='1';
if(isset($items)){
if($items != 0){
echo "<a href='non_zero_item.php'>Item from menu (".$items.")";
}
}
?>
Для отладки я рекомендую всегда использовать условие else.
использование
mysql_num_rows
<?php
$link = mysql_connect("localhost", "mysql_user", "mysql_password");
mysql_select_db("database", $link);
$result = mysql_query("SELECT * FROM table1", $link);
$num_rows = mysql_num_rows($result);
echo "$num_rows Rows\n";
?>