Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Подчитать и сравнить названия фоток
 
 автор: midav   (07.02.2006 в 00:21)   письмо автору
 
 

У меня в файле сохраняется вся инфа о пользователях! Так получилось что фотки мне пришлось не в отдельную директорию добавлять а в ту самую где все файлы! Ну вот мне надо Найти все графические файлы (фотки) и сравнить их названия с теми что у написаны в файле инфе пользователей! Если название фоток не соответствует, то вывести на страницу эти фотки и при нажатии на них чтоб они удалялись :)

   
 
 автор: cheops   (07.02.2006 в 03:43)   письмо автору
 
   для: midav   (07.02.2006 в 00:21)
 

Правильно ли я понял - нужно найти все названия графических файлов, которые не упомянаются в текстовом файле и удалить? Графические файлы какое расширение имеют? И какова структура текстового файла (не могли бы вы привести пару записей)?

   
 
 автор: midav   (07.02.2006 в 10:40)   письмо автору
 
   для: cheops   (07.02.2006 в 03:43)
 

Ну не совсем так! В файле допустим так

имя|фамилия|пароль|пароль|ник|название фотки|
имя|фамилия|пароль|пароль|ник|название фотки|
имя|фамилия|пароль|пароль|ник|название фотки|
имя|фамилия|пароль|пароль|ник|название фотки|


А допустим у меня в директории не 4 фотки а 5. Значит ктото поменял себе фотку и старая осталась на серваке! Вот я хочу сравнить названия фоток, и та которая не соответствует названия вывести на страницу, и сделать так чтоб при нажатии на эту фотку она удалилась с сервака :)

   
 
 автор: cheops   (07.02.2006 в 13:39)   письмо автору
 
   для: midav   (07.02.2006 в 10:40)
 

Обычно при смене фотографии проверяют имеется ли у владельца фотография и если имеется, то удаляется старая.

   
 
 автор: midav   (07.02.2006 в 20:20)   письмо автору
 
   для: cheops   (07.02.2006 в 13:39)
 

Ну у меня свои принципы :) Надо же чтото менять, чтоб не сказали что скаталю я вот сайт сам построил, токо вот с защитой мало работал http://midav.ilva.lv

   
 
 автор: midav   (07.02.2006 в 20:24)   письмо автору
 
   для: midav   (07.02.2006 в 20:20)
 

Для теста можете использовать: ник и пароль - m

   
 
 автор: cheops   (08.02.2006 в 02:42)   письмо автору
 
   для: midav   (07.02.2006 в 20:20)
 

А фотографии какие расширения имеют .jpeg, .jpg или что-то ещё?

   
 
 автор: midav   (08.02.2006 в 13:12)   письмо автору
 
   для: cheops   (08.02.2006 в 02:42)
 

да jpg, JPG, gif :)

   
 
 автор: cheops   (08.02.2006 в 18:36)   письмо автору
 
   для: midav   (07.02.2006 в 00:21)
 

Можно поступить примерно так
<?php 
  
// Читаем содержимое файла с данными пользователей
  
$content file_get_contents("user.txt");

  
// Имя директории с фотографиями
  
$dir_name "photoes"
  
// Разрешённые форматы 
  
$arr = array(".gif"".jpeg"".jpg"); 
  
// Открываем директорию 
  
$dir opendir($dir_name); 
  
// В цикле считываем её содержимое 
  
while(($file readdir($dir))) 
  { 
    
// Если текущий объект является графическим
    // файлом - проверяем его 
    
if(is_file($dir_name."/".$file)) 
    { 
      
// Извлекаем из имени файла расширение 
      
$ext strtolower(strrchr($file".")); 
      if(
in_array($ext,$arr))
      {
        
// Да это графический файл, проверим, 
        // имеется ли он в $content
        
if(strpos($contents$file) === false)
        {
          
// Такого файла нет - удаяем его
          
unlink($dir_name."/".$file);
        }
      } 
    } 
  } 
  
// Закрываем директорию 
  
closedir($dir); 
?>

Мне не начем было проверить скрипт, поэтому предварительно погоняйте его на локальной машине, чтобы не удалить чего лишнего.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования