У меня жутко медленно выводятся файлы по средствами функции scandir(), иногда бывало превышало лимит выполнения скрипты.
Долго грузит именно когда перебирается массив и выводится картинкой. Всего файлов в директории - 14, все в jpg форматах. PHP 5-ой версии, ошибок не каких не выдается.
Вот немножко укороченный код программы.
<?php
$allFiles = scandir("./image/data", 1);
?>
<!doctype html>
<html>
<head>
<link rel="stylesheet" href="./css/file.css">
<meta charset="UTF-8">
<title>Files</title>
</head>
<body>
<div class="contant">
<?php
echo("<div class=\"img\">");
foreach ($allFiles as $value) {
if ($value != "." & $value != "..") {
echo("<img src=\"./image/data/$value\" alt=\"\">");
}
}
echo("</div>");
?>
</div>
</body>
</html>
Прошу, подскажите как решить эту беду. Буду премного благодарен!
1. usernew - 21 Мая, 2014 - 19:28:55 - перейти к сообщению
2. 3d_killer - 22 Мая, 2014 - 11:36:27 - перейти к сообщению
сохранять пути к файлам в БД, а не сканировать каждый раз директорию
3. usernew - 22 Мая, 2014 - 12:47:14 - перейти к сообщению
Вариант очень даже хороший, но в эту директорию картинки попадают не только через php-формы. Любой пользователь хостинга может добавить туда картинки. Но всем раздавать логин и пароль базы данных не хочется.
Есть какой-нибудь другой способ?
Есть какой-нибудь другой способ?
4. esterio - 22 Мая, 2014 - 13:50:46 - перейти к сообщению
админка для этого и сушествует чтобы пользователи не лезли в базу и на сервер, а тупо загружали файлики через формочку
5. Ch_chov - 22 Мая, 2014 - 14:54:29 - перейти к сообщению
usernew пишет:
if ($value != "." & $value != "..")
6. usernew - 23 Мая, 2014 - 04:50:01 - перейти к сообщению
Цитата:
админка для этого и сушествует чтобы пользователи не лезли в базу и на сервер, а тупо загружали файлики через формочку
Так мне то нужно чтобы такая возможность и дальше оставалась. Нужно чтоб другие пользователи тоже смогли туда файлы кидать, это обязательно.
Если этого не сделать, то $valuse[0] == . $value[1] == ..