![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| gogle |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 2.6.2004 Репутация: нет Всего: нет |
Прогер написал за 5 минут до отъезда на юга скрипт в спешке и свалил.
Скрипт просто переименовывает банеры т.е. есть в дире файлы 1.jpg, 2jpg, 3.jpg, и.т.д Вобщем он должен их переименовывать 1 во 2, 2 в 3, 3 в 1 , ну вобщем цикл. А вместо этого он просто помоему удаляет файл с именем 1.jpg а файл 2.jpg переименовывает в 1.jpg ну и.т.д Вот собственно сам скрипт. <? $bandir = "/home/site/public_html/ban/"; //================== $d = dir($bandir); $cname = ""; $tmp = ""; $tt = 1; while (false !== ($ent = $d->read())) { if ($ent != '.' && $ent != '..') { $fil = pathinfo($ent); $fname = current(explode('.', $fil[basename])); if ($fname == (int)$fname) { $nname = (int)$fname-1; if ($nname!='0') @rename($bandir.$ent,$bandir.$nname.".".$fil[extension]); else { @rename($bandir.$ent,$bandir."tmp.".$fil[extension]); $tmp = "tmp.".$fil[extension]; } if ($tt < (int)$fname) $cname = $ent; } } } $d->close(); if ($cname!='') @rename($bandir.$tmp,$bandir.$cname); ?> |
|||
|
||||
| arial |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 772 Регистрация: 11.3.2003 Где: Архангельская обл . Репутация: 6 Всего: 7 |
А зачем файлы с баннерами переименовывать циклически, если не секрет? Уж не вырезка ли это гланд через задний проход? Баннерокрутилка чтоли?
-------------------- Есть люди, в которых живет Бог. Есть люди, в которых живет дьявол. А есть люди, в которых живут только глисты. (Ф. Раневская) |
|||
|
||||
| gogle |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 2.6.2004 Репутация: нет Всего: нет |
Да не секрет и тем более не вырезка "гланд через задний проход"
Некоторые скрипты просто отсылают та 3 буквы банерокрутилки типа http://www.domain.com/ban.php , им подавай реальную картинку Поэтому я хочу через крон запустить этот скрипт , и пусть меняет мои нколичество баннеров по циклу через нное время. |
|||
|
||||
| gogle |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 2.6.2004 Репутация: нет Всего: нет |
Блин ну ребята , скрипт то простой для програмиста , помогите пожалуйста , надо срочно !!!
|
|||
|
||||
| IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
Попробуй так:
-------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
| arial |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 772 Регистрация: 11.3.2003 Где: Архангельская обл . Репутация: 6 Всего: 7 |
Переименовывание файлов в баннерокрутилке - это вырезка гланд через задницу. Сделай правило в mod_rewrite, и у тебя всегда под именем some_image.gif будет прятаться скрипт, отдающий картинки по циклу. Тут тебе и реальная картинка будет. -------------------- Есть люди, в которых живет Бог. Есть люди, в которых живет дьявол. А есть люди, в которых живут только глисты. (Ф. Раневская) |
|||
|
||||
| gogle |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 2.6.2004 Репутация: нет Всего: нет |
Сделал так , 5 банеров , 3 просто удаляет а остальные 2 удачно переименовывает потом , еслиб без удаления , то былоб просто чудненько
<?php $path = '/home/site/public_html/ban1/'; function newname($ext) { $words = "12345"; $newlen = 1; $n = ''; for($i = 0; $i < $newlen; $i++) { $n .= $words[rand(0, strlen($words) -1)]; } return $n.'.'.$ext; } $d = dir($path); while($f = $d->read()) { if(filetype($path.$f) == 'file') { $bname = basename($path.$f); list(,$ext) = explode('.', $bname); rename($path.$f, $path.newname($ext)); } } $d->close(); ?> |
|||
|
||||
| gogle |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 2.6.2004 Репутация: нет Всего: нет |
2 arial :
имхо, чтоб добавить правило в mod_rewrite , наверное надо права иметь ? А уменя их нет , ломать же сервер чтоб это все сделать , и есть вырезка гланд через задний проход , а если учесть , то что я ломать сервера неумею , то это вырезка гланд через задний проход тупым скальпелем в темной комнате Проще мне кажется заюзать такой скрипт , беда льши в том что он неюзабелен пока Это сообщение отредактировал(а) gogle - 24.8.2004, 11:57 |
|||
|
||||
| Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: 10 Всего: 73 |
Этот срипт дает один и тот же результат или каждый раз новый?
-------------------- Теперь при чем :P |
|||
|
||||
| gogle |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 2.6.2004 Репутация: нет Всего: нет |
Каждый раз новый
|
|||
|
||||
| Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: 10 Всего: 73 |
Угу, у тебя рандомизится имя.
Вот поправленный:
-------------------- Теперь при чем :P |
|||
|
||||
| gogle |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 2.6.2004 Репутация: нет Всего: нет |
Игнат спасибо , это самый лучший вариант , и он делает все правильно , но при каждой сработке файл 1.jpg удалется вместо того чтобы переименовываться в конец очереди.
Подправь еще чуток пожалуйста |
|||
|
||||
| Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: 10 Всего: 73 |
у меня не удаляется - проверял
какие права на папку ban1? Добавлено @ 14:17 ошибки какие-нибудь пишет? -------------------- Теперь при чем :P |
|||
|
||||
| gogle |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 2.6.2004 Репутация: нет Всего: нет |
права 777
файлы 644 у меня он удаляет файл 1.jpg далее переименовывает все остальные как и надо , но первый файл непоявляется в коце очереди под другим именем. вот это выдает после сработки Array ( [dirname] => . [basename] => 1.jpg [extension] => jpg ) Array ( [dirname] => . [basename] => 4.jpg [extension] => jpg ) Array ( [dirname] => . [basename] => 2.jpg [extension] => jpg ) Array ( [dirname] => . [basename] => 3.jpg [extension] => jpg ) |
|||
|
||||
| Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: 10 Всего: 73 |
Непонятно...
Почему 4 идет сразу за 1... Сделай файлам пакетное переименование со счетчиком... -------------------- Теперь при чем :P |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |