Sywooch 0 Опубликовано: 25 января 2007 Рассказать Опубликовано: 25 января 2007 Создаем файл \engine\modules\random_image.php Со следующим содержанием: <? if(!defined('DATALIFEENGINE')) { die("Hacking attempt!"); } $random_image = "<center><img src=\"/r_images/".rand(1,10).".jpg\"></a></center>"; // rand(1,10) Количество картинок с 1 по 10-ю должны иметь адреса 1.jpg - ... - 10.jpg ?> Далее открываем файл engine\init.php Находим: include_once $tpl->dir.'/login.tpl'; После добавляем include_once ENGINE_DIR.'/modules/random_image.php'; Далее открываем index.php в корневой папке и находим там: $tpl->set('{speedbar}', $tpl->result['speedbar']); После добавляем: $tpl->set('{random_image}', $random_image); Теперь сами рисунки. Их вы добавляете в папку "r_images" которую нужно создать в корневой директории. В эту папку залейте рисунки, в данном случае 10 Имена рисунков должны быть от 1.jpg до 10.jpg Вот и все. Остается только в нужном месте в шаблоне вставить переменную {random_image} Данный материал не на что не претендует.... Хотел показать как можно интегрировать простейший стрипт в движок. PS/ Делал на ДЛЕ 5.3 Ссылка на сообщение Поделиться на других сайтах
Rizza 0 Опубликовано: 25 января 2007 Рассказать Опубликовано: 25 января 2007 А вот из такого скрипта сможешь сделать тоже самое? <?php /* Небольшая модификация скрипта от REDSHIFT SOFTWARE Автор модификации: Guru.eXe/tPORt WWW: http://guru-exe.ripgames.org/ */ if (!isset($path) || empty($path)){ $mydir = "img"; } else { if ($dir = @opendir($path)){ $mydir = $path; } else { $mydir = "img"; } } if ($dir = @opendir($mydir)) { while (($file = readdir($dir)) !== false) { if (eregi('.(jpg|gif|png|jpeg|bmp|jpe)$',$file)) $files[] = $file; } closedir($dir); } srand(time()); $file = $files[rand()%sizeof($files)]; if (eregi('.(jpg|jpeg|jpe)$',$file)) { header( "Content-Type: image/jpeg" ); } elseif (eregi('.gif$',$file)) { header( "Content-Type: image/gif" ); } elseif (eregi('.bmp$',$file)) { header( "Content-Type: image/bmp" ); } else { header( "Content-Type: image/png" ); } header ("Content-Length: ".filesize($mydir."/".$file)); readfile($mydir."/".$file); ?> Чем он лучше? да тем что он берет картинки не зависимо от названия, количества, расшерения. Если есть какие то идеи прошу помочь ;-) за ранее спасибо! Ссылка на сообщение Поделиться на других сайтах
gun 0 Опубликовано: 25 января 2007 Рассказать Опубликовано: 25 января 2007 Я одно время пользовался этим скриптом Ссылка на сообщение Поделиться на других сайтах
Sywooch 0 Опубликовано: 25 января 2007 Рассказать Опубликовано: 25 января 2007 Автор Ну конечно можно и из этого сделать. Дело в том что я это все написал дабы многие поняли сам принцип!!! И это естественно не лучший вариант ротации А простейший. ЗЫ. Приду домой и посмотрю Ваш скрипт. ЗЫЫ, Хотя тут тоже самое все только смените код у файла random_image.php на свой!!! Ссылка на сообщение Поделиться на других сайтах
Sywooch 0 Опубликовано: 25 января 2007 Рассказать Опубликовано: 25 января 2007 Автор В этом топике, надеюсь кому то будет полезен, я попытался привести пример создения простенького модулы (Блока) Но если провести ряд манипуляций, можно сделать полноценный модуль со своим шаблоном!!! Тоесть если вы хотите реализовать что нибудь конкретное. Например модуль погоды. Берете грабер, Создаете файл модуля, по схеме выше, Добавляете несколько переменных для подгружения щаблона (например клонированного из статической странчки) Ставите переменные для линка чтот типа case "wether" : include ENGINE_DIR.'/modules/wether.php'; break; И все такое.... Тоесть все достаточно просто. Остается только немного поlключить фантазию. Главное не лениться и все получится. Ссылка на сообщение Поделиться на других сайтах
Rizza 0 Опубликовано: 25 января 2007 Рассказать Опубликовано: 25 января 2007 Про какой код идет речь? Сдесь представлено два кода ;-) Ссылка на сообщение Поделиться на других сайтах
Sywooch 0 Опубликовано: 25 января 2007 Рассказать Опубликовано: 25 января 2007 Автор В первом посте в код вместо этой строки: $random_image = "<center><img src=\"/r_images/".rand(1,10).".jpg\"></a></center>"; Вставьте свой код остальные операции посторите...... Ссылка на сообщение Поделиться на других сайтах
Rizza 0 Опубликовано: 25 января 2007 Рассказать Опубликовано: 25 января 2007 После: Далее открываем файл engine\init.php Находим: include_once $tpl->dir.'/login.tpl'; После добавляем include_once ENGINE_DIR.'/modules/random_image.php'; двиг вообще отказывается работать... Может все заново, на основе моего скрипта все объясним? ;-) За ранее говорю вам СПАСИБО! Ссылка на сообщение Поделиться на других сайтах
Sywooch 0 Опубликовано: 28 января 2007 Рассказать Опубликовано: 28 января 2007 Автор Да ведь просто все. Вот вам рабочий вариант с вашим кодом Все сделать как в первом посте только замените код в файле \engine\modules\random_image.php на приведенный ниже. <? if(!defined('DATALIFEENGINE')) { die("Hacking attempt!"); } ob_start(); if (!isset($path) || empty($path)){ $mydir = "image_rnd"; } else { if ($dir = @opendir($path)){ $mydir = $path; } else { $mydir = "image_rnd"; } } if ($dir = @opendir($mydir)) { while (($file = readdir($dir)) !== false) { if (eregi('.(jpg|gif|png|jpeg|bmp|jpe)$',$file)) $files[] = $file; } closedir($dir); } srand(time()); $file = $files[rand()%sizeof($files)]; if (eregi('.(jpg|jpeg|jpe)$',$file)) { header( "Content-Type: image/jpeg" ); } elseif (eregi('.gif$',$file)) { header( "Content-Type: image/gif" ); } elseif (eregi('.bmp$',$file)) { header( "Content-Type: image/bmp" ); } else { header( "Content-Type: image/png" ); } echo "<img src=".$mydir."/".$file.">"; $random_image=ob_get_contents(); ob_end_clean(); ?> Ссылка на сообщение Поделиться на других сайтах
Sywooch 0 Опубликовано: 28 января 2007 Рассказать Опубликовано: 28 января 2007 Автор Чуть не забыл: Создайте в корне сайта папку image_rnd В ней и будут храниться Изображения. Ссылка на сообщение Поделиться на других сайтах
Rizza 0 Опубликовано: 29 января 2007 Рассказать Опубликовано: 29 января 2007 ХМ.. терь вот что пишет: Изображение “http://site.ru/” не может быть показано, так как содержит ошибки. При чем это пишет не на месте где вставлено {random_image} а просто при заходе на сайт появляеться эта надпись и ничего более... Ссылка на сообщение Поделиться на других сайтах
podpolschik 0 Опубликовано: 29 января 2007 Рассказать Опубликовано: 29 января 2007 что-то страшно,особенно после последних комментариев, такое вставлять в движок... Ссылка на сообщение Поделиться на других сайтах
Sywooch 0 Опубликовано: 29 января 2007 Рассказать Опубликовано: 29 января 2007 Автор Странно!!! Все работает отлично! Конечно я не могу гарантировать что у вас оно будет работать! Может вы просто невнимательно что то вписали? У меня работает отлично. Правда на локалхосте. А на сайте я использую свой вариант. появляеться эта надпись и ничего Вы не меняли код который я приводил 4 топика выше???? Скорее всего вы влепили туда вот эту гадость!!! header ("Content-Length: ".filesize($mydir."/".$file)); readfile($mydir."/".$file); Если не будет рыботать и далее я сделаю копии файлов! Ссылка на сообщение Поделиться на других сайтах
Rizza 0 Опубликовано: 30 января 2007 Рассказать Опубликовано: 30 января 2007 Все сделано как вы описали... один в один Ссылка на сообщение Поделиться на других сайтах
magasoft 0 Опубликовано: 30 января 2007 Рассказать Опубликовано: 30 января 2007 предлагаю доработать и сделать картинки со ссылами на новость. т.е. к новости подгружаем картинку она попадает в ротатор, а ротаторе как ссылка на новость. хотя... есть мысль сделать это средствами самого скрипта. Ссылка на сообщение Поделиться на других сайтах
kolyma 2 Опубликовано: 30 января 2007 Рассказать Опубликовано: 30 января 2007 Хотя бы сделать просто возможность формировать ссылки, которые вручную прописываются в коде ротатора Ссылка на сообщение Поделиться на других сайтах
magasoft 0 Опубликовано: 30 января 2007 Рассказать Опубликовано: 30 января 2007 вобщем, если делать силами самого скрипта, предлагаю следущий вариант. 1. добавляем доп. поле новости текстовое, куда будем ставить ссылку на нужную нам для ротации картинку 2. в нужном месте ставим тег {custom} и делаем ему спец. шаблон 3. в шаблоне не кастома пишем <img scr="[xvalue_image]"> и он нам должен выводить ряд картинок. теперь осталось сделать ему ротацию, думаю в том же шаблоне кастома можно приделать пхп код, вы как думаете? Ссылка на сообщение Поделиться на других сайтах
gopal 0 Опубликовано: 31 января 2007 Рассказать Опубликовано: 31 января 2007 а можно сделать вот пишеш дату: дату и время и в это время показывает картину а еще указываеш время и в это время показывает ту картинку? Ссылка на сообщение Поделиться на других сайтах
Rizza 0 Опубликовано: 1 февраля 2007 Рассказать Опубликовано: 1 февраля 2007 Итак рабочая версия от Sywooch'a: 1. Создаем файл \engine\modules\random_image.php Со следующим содержанием: <? if(!defined('DATALIFEENGINE')) { die("Hacking attempt!"); } if (!isset($path) || empty($path)){ $mydir = "image_rnd"; } else { if ($dir = @opendir($path)){ $mydir = $path; } else { $mydir = "image_rnd"; } } if ($dir = @opendir($mydir)) { while (($file = readdir($dir)) !== false) { if (eregi('.(jpg|gif|png|jpeg|bmp|jpe)$',$file)) $files[] = $file; } closedir($dir); } srand(time()); $file = $files[rand()%sizeof($files)]; $random_image = "<img src=".$mydir."/".$file.">"; ?> 2. Далее открываем файл engine\init.php Находим: include_once $tpl->dir.'/login.tpl'; После добавляем include_once ENGINE_DIR.'/modules/random_image.php'; 3. Далее открываем index.php в корневой папке и находим там: $tpl->set('{speedbar}', $tpl->result['speedbar']); После добавляем: $tpl->set('{random_image}', $random_image); 4. Картинки заливаем в папку "image_rnd", предварительно создав ее в корневой папке сайта! Ссылка на сообщение Поделиться на других сайтах
Just_Smile 0 Опубликовано: 4 февраля 2007 Рассказать Опубликовано: 4 февраля 2007 интересно а эти модификацый создают допольнительные запросы? Ссылка на сообщение Поделиться на других сайтах
Zdraff 4 Опубликовано: 5 февраля 2007 Рассказать Опубликовано: 5 февраля 2007 интересно а эти модификацый создают допольнительные запросы? нет. Ссылка на сообщение Поделиться на других сайтах
domeni 2 Опубликовано: 6 февраля 2007 Рассказать Опубликовано: 6 февраля 2007 а вот такой ещё вопрос, а как сделать чтоб несколько картинок одновременно было в ротации к примеру, 1 картинка и у неё цифры от 1 до 10 2 картинка у неё цифры от 11 до 20... т.е. залил 20 картинок, и не беспокоешься, что они повтоятся... как реализовать ? Ссылка на сообщение Поделиться на других сайтах
nils 0 Опубликовано: 11 февраля 2007 Рассказать Опубликовано: 11 февраля 2007 Последний скрипт отображает картинки только на главной, в категориях не отображает. И путь до картинки имеет вид например такой http://сайт.ru/category/soft/image_rnd/6.jpg А должен быть http://сайт.ru/image_rnd/6.jpg Т.е. получается нужно создавать папки для каждой категории и помещать туда картинки. Какой в этом смысл. Ссылка на сообщение Поделиться на других сайтах
DyuS_Novikov 0 Опубликовано: 31 мая 2007 Рассказать Опубликовано: 31 мая 2007 Just_Smile, запросы чего? кто пойдет в магазин? к базе нет а вот к папке где лежат картинки да, при каждом обращении к странице сайта... ЖЕСТКОВАТО... nils, попробуй поставить путь относсительно твоего домена... Вместо: $mydir = "image_rnd"; вот это: $mydir = "/image_rnd"; гнезнаю сам не проверял, попробуй Ссылка на сообщение Поделиться на других сайтах
Гость Опубликовано: 7 июня 2007 Рассказать Опубликовано: 7 июня 2007 <#thank#> Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Архивировано
Эта тема находится в архиве и закрыта для публикации сообщений.