Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

14.08.2009, 22:41
|
|
Новичок
Регистрация: 11.03.2007
Сообщений: 24
Провел на форуме: 109679
Репутация:
7
|
|
Доброго вечера всем.
Вообщем есть скрипт листинга директории, скрипт генерирует ссылки на файлы.
вопрос, какой функцией можно сделать сокращение имени файла
само собой ниже сам скрипт
Код:
<?php
$thelist = array();
$dir = './upload/ftp/';
if ($handle = opendir($dir)) {
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != ".." && $file !="index.php" && $file !=".ftpquota") {
$file = $file;
$thelist[] = array('file' => $file, 'filemtime' => filemtime($file), 'filesize' => filesize($file));
}
}
closedir($handle);
}
?>
<?php
for($i = 0; $i < count($thelist); $i++) {
?><a href="sitename/<?=$thelist[$i]['file']?>"><?=$thelist[$i]['file']?></a><?php
}
?>
|
|
|

14.08.2009, 22:44
|
|
Участник форума
Регистрация: 05.04.2007
Сообщений: 150
Провел на форуме: 771228
Репутация:
77
|
|
|
|
|

14.08.2009, 22:49
|
|
Новичок
Регистрация: 11.03.2007
Сообщений: 24
Провел на форуме: 109679
Репутация:
7
|
|
зачётно, но раньше в этой строчке было что то ещё (ну тоесть не было $file = $file  , я честно говоря не помню что, но строчка осталась, спасибо за внимательность.
|
|
|

14.08.2009, 23:18
|
|
Постоянный
Регистрация: 27.07.2008
Сообщений: 614
Провел на форуме: 4532332
Репутация:
1196
|
|
сюда глянь:
Код:
false !== ($file = readdir($handle)
какой функцией можно сделать сокращение имени файла
никак ,с другим именем ссылка работать не будет.
но разве что на выводе
<?=substr($thelist[$i]['file'],0,length)?>
length -максимальная длина.
|
|
|

15.08.2009, 00:26
|
|
Постоянный
Регистрация: 24.11.2008
Сообщений: 416
Провел на форуме: 910902
Репутация:
100
|
|
у меня вопрос как реализуется вывод данных из таблицы по 10 штук к примеру...допустим записей 20 сначало первые 10 вывел потом, вторые по нажатии на кнопку
PHP код:
<?php i=$_SESSION['n']; do {
/*вывод полей*/
}
while ($comment = mysql_fetch_array($result1)
and $i<>$_SESSION['n']+10)
?>
потом после цикла сделать что то типа $_SESSION['n']=i; или как подскажите пожалуйста?
и если обратно надо, т.е. предидущие 10 то есть какой нибудь DownTO аналог или как делать  Down это про меня 
|
|
|

15.08.2009, 00:31
|
|
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
Провел на форуме: 3178262
Репутация:
389
|
|
Для создания типа списка с листами используется запрос
Код:
SELECT * FROM table WHERE field="value" LIMIT start,count
где start - начальная позиция в базе, count - количество выбираемых строк
при генерации ссылки на страницы генерируется page * count для каждой страницы, что указывает на начало выборки, типа
Код:
<a href="view.php?start=0">1</a>
<a href="view.php?start=10">2</a>
<a href="view.php?start=20">3</a>
Если же просто нужно подсчитать, то в цикле for или в while - добавить счётчик....
Обратно отлистать - нельзя! Только повторить запрос и заного сосчитать до заданного количества...
Последний раз редактировалось FireFenix; 15.08.2009 в 00:33..
|
|
|

15.08.2009, 00:41
|
|
Постоянный
Регистрация: 24.11.2008
Сообщений: 416
Провел на форуме: 910902
Репутация:
100
|
|
FireFenix, спасибо я вот тут еще нашел  далеко гугл запрятал ответ  запарился искать 
|
|
|

15.08.2009, 12:12
|
|
Познающий
Регистрация: 16.03.2009
Сообщений: 82
Провел на форуме: 148667
Репутация:
23
|
|
Сообщение от SaiRus
у меня вопрос как реализуется вывод данных из таблицы по 10 штук к примеру...допустим записей 20 сначало первые 10 вывел потом, вторые по нажатии на кнопку
PHP код:
<?php i=$_SESSION['n']; do {
/*вывод полей*/
}
while ($comment = mysql_fetch_array($result1)
and $i<>$_SESSION['n']+10)
?>
потом после цикла сделать что то типа $_SESSION['n']=i; или как подскажите пожалуйста?
и если обратно надо, т.е. предидущие 10 то есть какой нибудь DownTO аналог или как делать  Down это про меня 
Можно еще так сделать:
PHP код:
$num = mysql_num_rows($result);
$num2 = $num;
$start = 0;
for ($i = $start; $i<$num; $i++)
{
if ($num > $start + 10){$num = $start + 10;}
if ($row = mysql_fetch_array($resalt))
{
echo' '.$row['message'].'<br>';
}
}
if ($num < $start + 10)
{
if ($start != 0)
{
print "<div align=left><A href=guest_book.php?start=".($start - 10).">Попередні</A></div>";
}
}
if ($num2 > $start + 10)
{
print "<div align=right><A href=guest_book.php?start=".($start + 10).">Наступні</A></div>";
}
Должно работать но точно не обещаю так как в своем случае читал не из базы а из файла.
|
|
|

15.08.2009, 12:31
|
|
Новичок
Регистрация: 13.07.2009
Сообщений: 3
Провел на форуме: 32541
Репутация:
0
|
|
Вопрос ламерский но все же)))как менять шрифт,размер,стиль букв када выводиш слова на страницу
|
|
|

15.08.2009, 12:51
|
|
Познающий
Регистрация: 10.04.2008
Сообщений: 51
Провел на форуме: 78866
Репутация:
0
|
|
Это делается при помощи CSS.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|