Выбор картинки после загрузки на сервер

Статус
Закрыто для дальнейших ответов.

minority

generator randomly php
Регистрация
02.05.2010
Сообщения
443
Не сталкивался пока с этим некогда, загрузку знаю как сделать, а как делается выбор картинке с сервера, принце как это делается без реализации, пока в голове крутится сделать так сканировать директорию, после имена файлов в ссылки подставлять. Может что то есть лучше.
 

marker

Well-Known Member
Регистрация
23.10.2010
Сообщения
399
По другому никак если ты не добавлял информацию о файлах в бд.
Если все же добавлял name, type, size, path то доставай запросом и выводи, все функции удаления и копирования применяй по uniq id
 

minority

generator randomly php
Регистрация
02.05.2010
Сообщения
443
Есть у кого нибудь готовые решения выбора изображений с сервера?
 

FiRеFоX

V.I.P.
Регистрация
07.08.2010
Сообщения
744
Не сталкивался пока с этим некогда, загрузку знаю как сделать, а как делается выбор картинке с сервера, принце как это делается без реализации, пока в голове крутится сделать так сканировать директорию, после имена файлов в ссылки подставлять. Может что то есть лучше.
Возможно вот так:
Код:
<?
class calc_dir
{
var $a_fname=array();
var $a_fsize=array();
var $a_fdir =array();
var $cofiles;
function init(){
$this->cofiles=0;
}
function calc_files($in_dir){
if ($dir_handle = opendir($in_dir)){
while($file = readdir($dir_handle)){
if ($file!=".." && $file!="." && is_dir($file)){
$this->calc_files($in_dir."/".$file);
}
//Проход по файлам
if (is_file($in_dir."/".$file) && $file!=".." && $file!="."){
$this->a_fname[$this->cofiles]=$file;
$this->a_fsize[$this->cofiles]=filesize ($in_dir."/".$file);
$this->a_fdir [$this->cofiles]=$in_dir;
$this->cofiles++;
}
}
}
}
function show(){
$a_size=0;
for ($i=0;$i<count($this->a_fname);$i++){
echo 'Файл: <a href="'.$this->a_fdir[$i].'/'.$this-> a_fname[$i].'">'.$this-> a_fname[$i].'</a><br>Размер: '.$this->a_fsize[$i].'<br>Папка: '.$this->a_fdir[$i].'<br><br>';
$a_size+=$this->a_fsize[$i];
}
echo 'Общее: '.$a_size;
}
}
$d=new calc_dir;
$d->init();
//Прописываем название папки из которой вывести список файлов
$d->calc_files("papka/papka2/");
$d->show();
?>
А уж если удалить или переместить файл нужно, то можно присвоить временный ему id, примерно так:

Код:
<?
class calc_dir
{
var $a_fname=array();
var $a_fsize=array();
var $a_fdir =array();
var $cofiles;
function init(){
$this->cofiles=0;
}
function calc_files($in_dir){
if ($dir_handle = opendir($in_dir)){
while($file = readdir($dir_handle)){
if ($file!=".." && $file!="." && is_dir($file)){
$this->calc_files($in_dir."/".$file);
}
//Проход по файлам
if (is_file($in_dir."/".$file) && $file!=".." && $file!="."){
$this->a_fname[$this->cofiles]=$file;
$this->a_fsize[$this->cofiles]=filesize ($in_dir."/".$file);
$this->a_fdir [$this->cofiles]=$in_dir;
$this->cofiles++;
}
}
}
}
function show(){
$a_size=0;
for ($i=0;$i<count($this->a_fname);$i++){
echo 'Файл: <a href="'.$this->a_fdir[$i].'/'.$this-> a_fname[$i].'">'.$this-> a_fname[$i].'</a><br>Размер: '.$this->a_fsize[$i].'<br>Папка: '.$this->a_fdir[$i].'<br><a href="?id='.($i+1).'">Удалить </a><br><br>';
$a_size+=$this->a_fsize[$i];
}
echo 'Общее: '.$a_size;
}
}
$d=new calc_dir;
$d->init();
//Прописываем название папки из которой вывести список файлов
$d->calc_files("papka/papka2/");
$d->show();
?>
И теперь на страничке сканируем опять папку и сопостовляем id в ГЕТ и id с номером файла и удаляем, если такой найден... Это уже думаю легко написать... Хотя можно сделать и без временного id, просто удалять по имени файла.
А вообще правильно вам подсказали - лучше сделать через БД...
 
Статус
Закрыто для дальнейших ответов.
Верх Низ