Перейти к публикации

Помогите переделать модуль вывода случайной картинки!


Рекомендованные сообщения

Нашёл модуль вывода случайной картинки он выводит картинки из новостей, а мне нужно что бы просто из папки выводил сложно ли его переделать?

function dle_img () {

	global $db;

#	$db->query ("set character_set_client='latin1'");

#	$db->query ("set character_set_results='latin1'");

#	$db->query ("set collation_connection='cp1251_general_ci'");


	$result = $db->query("SELECT * FROM dle_images ORDER BY RAND()  LIMIT 1");

	$row = $db->get_row($result);



	$out ="<div align=\"center\"><a href=\"/uploads/posts/{$row['images']}\"><img border=\"0\" src=\"/uploads/posts/{$row['images']}\" width=\"120 \"></a> <br>Автор: {$row['author']}</div>";

	$limit=1;//сколько показывать

#	$out = "1212";


#	$db->query ("set character_set_client='cp1251'");

#	$db->query ("set character_set_results='cp1251'");

#	$db->query ("set collation_connection='cp1251_general_ci'");


return $out;

}

$dle_img = dle_img ();

?>

Ссылка на сообщение
Поделиться на других сайтах

$limit=1;
бесполезная строчка)) на примере вышенапечатанного кода..
function lifestar_img () {

	$imgdir = ROOT_DIR.'/путь до вашей папки';

	$img_arr = Array();

	if (is_dir($imgdir))

	{

		if ($handle = opendir($imgdir)) {

			while (false !== ($file = readdir($handle))) {

				if ($file != "." && $file != "..") {

				array_push($img_arr, $file);

				}

			}

			closedir($handle);

		}

	} else die ('Нет папки');

	srand((float) microtime() * 10000000);

	$rand_key = array_rand($img_arr);

$out =<<< RAGGA

<div align="center">

	<a href="путь до папки/{$img_arr[$rand_key]}">

	<img border="0" src="путь до папки/{$img_arr[$rand_key]}" width="120/>

	</a>

</div>

RAGGA;

return $out;

}

$dle_img = lifestar_img ();

Изменено пользователем lifestar
Ссылка на сообщение
Поделиться на других сайтах

Что то не то, поменял и теперь всё в самый в верх уехало и вот что получается

untitled1pf6.th.jpg

на всякий, из инчтрукции:

-----------------------------------------------------------------------------

1) Открываем файл index.php

----------------------Находим------------------------

$tpl->set('{topnews}',$topnews);

---------------------Добавляем-----------------------

$tpl->set('{dle_img}',$dle_img);

2) Открываем файл init.php он находится в папке engine

----------------------Находим------------------------

require_once ENGINE_DIR.'/modules/calendar.php';

---------------------Добавляем-----------------------

require_once ENGINE_DIR.'/modules/dle_img.php';

3) В вашем шаблоне в main.tpl добавлем тег {dle_img}

-----------------------------------------------------------------------------

Изменено пользователем 4ertik
Ссылка на сообщение
Поделиться на других сайтах

ясен красен!

у вас PHP не выполняется. Вы куда вставили код, что я дал??

Изменено пользователем lifestar
Ссылка на сообщение
Поделиться на других сайтах

Так я его и указал полностью:


<?php

/*

=====================================================

 Проект Web-Script.org - by Barthez

-----------------------------------------------------

 http://web-script.org

-----------------------------------------------------

 Copyright (c) 2007 Barthez

=====================================================

 Данный код защищен авторскими правами

=====================================================

 Версия: 1.0

-----------------------------------------------------

 Файл: dle_img.php

-----------------------------------------------------

 Назначение: Показ случайной картинки

=====================================================

*/

function dle_img () {

	global $db;

#	$db->query ("set character_set_client='latin1'");

#	$db->query ("set character_set_results='latin1'");

#	$db->query ("set collation_connection='cp1251_general_ci'");


	$result = $db->query("SELECT * FROM dle_images ORDER BY RAND()  LIMIT 1");

	$row = $db->get_row($result);



	$out ="<div align=\"center\"><a href=\"/uploads/posts/{$row['images']}\"><img border=\"0\" src=\"/uploads/posts/{$row['images']}\" width=\"120 \"></a> <br>Автор: {$row['author']}</div>";

	$limit=1;//сколько показывать

#	$out = "1212";


#	$db->query ("set character_set_client='cp1251'");

#	$db->query ("set character_set_results='cp1251'");

#	$db->query ("set collation_connection='cp1251_general_ci'");


return $out;

}

$dle_img = dle_img ();

?>

Ссылка на сообщение
Поделиться на других сайтах

Ага, ваш новый код такой:

<?php

/*

=====================================================

Файл: dle_img.php

-----------------------------------------------------

Назначение: Показ случайной картинки

=====================================================

*/

function lifestar_img () {

	$imgdir = ROOT_DIR.'/путь до вашей папки';

	$img_arr = Array();

	if (is_dir($imgdir))

	{

		if ($handle = opendir($imgdir)) {

			while (false !== ($file = readdir($handle))) {

				if ($file != "." && $file != "..") {

				array_push($img_arr, $file);

				}

			}

			closedir($handle);

		}

	} else die ('Нет папки');

	srand((float) microtime() * 10000000);

	$rand_key = array_rand($img_arr);

$out =<<< RAGGA

<div align="center">

	<a href="путь до папки/{$img_arr[$rand_key]}">

	<img border="0" src="путь до папки/{$img_arr[$rand_key]}" width="120/>

	</a>

</div>

RAGGA;

return $out;

}

$dle_img = lifestar_img ();

?>

Ссылка на сообщение
Поделиться на других сайтах

Точно такой же?

Получается изобрёл велосипед)))

а на 4dle.ru мы не тусим - там фигово

Изменено пользователем lifestar
Ссылка на сообщение
Поделиться на других сайтах
  • 4 месяца спустя...

Подскажите, пожалуйста, что нужно изменить, чтобы выводилось несколько случайных картинок (неповторяющихся!)?

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...