Здравствуйте сделал постраничный вывод файлов и вот например задано по скажем 10 файлов на страницу а файлов например 13 выводятся пустые строки как избавиться подскажите пожалуйста
<?php
$site="http://".$_SERVER['SERVER_NAME'];
$files = glob("../data/telegram/*.*");
//sort($files);
//$summa = 0;
$id = 0;
foreach($files as $file){
$name = basename($file);
$arr[$id]['name'] = basename($file);
$arr[$id]['size'] = round(filesize($file)/1024,2);
$arr[$id]['count'] = count(file($file));
$summa += count(file($file));
$id++;
}
$count_file = count($files);
$pages = ceil($count_file/$tnumber);
$page = $_GET['page'];
if(!$page OR $page=='')
{
$nav_min = 0;
$nav_max = $tnumber - 1;
}else{
$nav_min = ($page * $tnumber) - $tnumber;
$nav_max = ($tnumber * $page) - 1;
}
# Вывод
for($i = $nav_min; $i <= $nav_max; $i++)
{
$names = $arr[$i]['name'];
$size = $arr[$i]['size'];
$count = $arr[$i]['count'];
echo "<tr>
<td class=\"par\" style=\"padding:3px 0px 1px 20px; \">$names</td>
<td align=\"center\" width=\"100\" class=\"par\"><b>$size</b> кб</td>
<td align=\"center\" width=\"80\" class=\"par\"><b>$count</b></td>
<td align=\"center\" width=\"50\" class=\"par\"><a href='$site/data/telegram/".$names."' target=\"_blank\" download=\"\" ><img border='0' width='16' src='skin/image/downloads.png' title='Скачать файл'></a></td>
<td align=\"center\" width=\"50\" class=\"par\"><a title='ссылка' href='#' onclick=\"prompt('Ссылка на Файл. Для копирования выделите и скопируйте или нажмите Ctrl+C.','$site/data/telegram/$names'); return false;\"><img border=0 src=skin/image/linck.png title='Ссылка на файл'></a></td>
<td align=\"center\" width=\"50\" class=\"par\"><a href='telegram_delete_file.php?remove=".$names."' onclick='return confirmDelete();' ><img border=0 src=skin/image/b_drop.png title='Удалить файл'></a></td>
</tr>";
}
echo "<tr>
<td align=\"left\" colspan =\"2\" style=\"padding:10px 0px 10px 20px; \">Файлов : <b style='font-size: 14px';>$count_file</b></td>
<td align=\"center\" width=\"100\" ><b>$summa</b></td>
<td colspan =\"3\" width=\"150\" ></td>
</tr>";
?>
<?php
# Навигация
for($fpr = '', $i =1; $i <= $pages; $i++)
{
echo $fpr=(($i == 1 || $i == $pages || abs($i-$page) < 2) ? ($i == $page ? "<b style='font-size: 14px'>[$i]</b> | " : ' <a href="?page='.$i.'">'.$i.'</a> | ') : (($fpr == ' ... ' || $fpr == '')? '' : ' ... '));
}
?>
В данном случае если у файлов всегда есть имя, то можно обойтись простой проверкой на empty($value)
, т.е. выводить на страницу поля у которых есть имя.
# Вывод
for ($i = $nav_min; $i <= $nav_max; $i++) {
$names = $arr[$i]['name'];
$size = $arr[$i]['size'];
$count = $arr[$i]['count'];
if(!empty($names)){
echo "<tr>
<td class=\"par\" style=\"padding:3px 0px 1px 20px; \">$names</td>
<td align=\"center\" width=\"100\" class=\"par\"><b>$size</b> кб</td>
<td align=\"center\" width=\"80\" class=\"par\"><b>$count</b></td>
<td align=\"center\" width=\"50\" class=\"par\"><a href='$site/data/telegram/".$names."' target=\"_blank\" download=\"\" ><img border='0' width='16' src='skin/image/downloads.png' title='Скачать файл'></a></td>
<td align=\"center\" width=\"50\" class=\"par\"><a title='ссылка' href='#' onclick=\"prompt('Ссылка на Файл. Для копирования выделите и скопируйте или нажмите Ctrl+C.','$site/data/telegram/$names'); return false;\"><img border=0 src=skin/image/linck.png title='Ссылка на файл'></a></td>
<td align=\"center\" width=\"50\" class=\"par\"><a href='telegram_delete_file.php?remove=".$names."' onclick='return confirmDelete();' ><img border=0 src=skin/image/b_drop.png title='Удалить файл'></a></td>
</tr>";
}
}
Нужно ограничить цикл не $nav_max
а длинной фактического массива
for($i = $nav_min; $i < count($arr); $i++)
{
$names = $arr[$i]['name'];
$size = $arr[$i]['size'];
$count = $arr[$i]['count'];
echo "<tr>
<td class=\"par\" style=\"padding:3px 0px 1px 20px; \">$names</td>
<td align=\"center\" width=\"100\" class=\"par\"><b>$size</b> кб</td>
<td align=\"center\" width=\"80\" class=\"par\"><b>$count</b></td>
<td align=\"center\" width=\"50\" class=\"par\"><a href='$site/data/telegram/".$names."' target=\"_blank\" download=\"\" ><img border='0' width='16' src='skin/image/downloads.png' title='Скачать файл'></a></td>
<td align=\"center\" width=\"50\" class=\"par\"><a title='ссылка' href='#' onclick=\"prompt('Ссылка на Файл. Для копирования выделите и скопируйте или нажмите Ctrl+C.','$site/data/telegram/$names'); return false;\"><img border=0 src=skin/image/linck.png title='Ссылка на файл'></a></td>
<td align=\"center\" width=\"50\" class=\"par\"><a href='telegram_delete_file.php?remove=".$names."' onclick='return confirmDelete();' ><img border=0 src=skin/image/b_drop.png title='Удалить файл'></a></td>
</tr>";
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Необходимо написать авторизацию через Curl на php, но возникла одна проблемаСайт каким-то образом, кроме данных логина и пароля ещё должен получить...
Есть вопрос: как собрать всех подписчиков определенного аккаунта Instagram? Пробовал сам, получилось только со стороны клиента с помощью JSКак...
Друзья подскажите как быть! Я с помощью Ajax отправляю данные на сервер для добавления в БД, на сервере обычный код с UPDATE