Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Помогите пожалуйста новичку! [2]
Форумы портала PHP.SU » Разное » Прочее » Помогите пожалуйста новичку!

Страниц (2): « 1 [2]
 

16. Russer - 16 Декабря, 2015 - 07:12:33 - перейти к сообщению
Если нет базы, я бы сделал через файл:
Создаем файл , block_image.txt в котором пишем: место хранения картинки;ссылка;
CODE (htmlphp):
скопировать код в буфер обмена
  1. images/river/1.jpg;http://ссылка1/
  2. images/clouds/1.png;http://ссылка2/
  3. images/mountains/1.gif;http://ссылка3/

Далее создаем функцию:
PHP:
скопировать код в буфер обмена
  1. function image_random(){
  2. $handle = @fopen("block_image.txt", "r");//Открываем фаил
  3. if ($handle) {
  4.     while (($buffer = fgets($handle, 4096)) !== false) { // Считываем построчно
  5.         $image_array[]=explode(';',$buffer); // Создаем массив картинок и ссылок
  6.     }
  7. }
  8. $random=rand(0,count($image_array)-1); // Выбираем случайную картинку
  9. return "<a href=".$image_array[$random][1]."><img src=".$image_array[$random][0].">  </a>";// Отдаем html картинку
  10.  
  11.     }

Далее где нужно в шаблоне просто вставляем:
CODE (html):
скопировать код в буфер обмена
  1. <?php echo image_random();?>
17. higub - 16 Декабря, 2015 - 08:27:53 - перейти к сообщению
незнаю это вопрос для про Растерялся
(Добавление)
kjk
18. evgenijj369 - 16 Декабря, 2015 - 20:06:25 - перейти к сообщению
Вообще ничего не выводит таким образом(((
Тем не менее благодарен за помощь!
Спасибо!
19. Russer - 16 Декабря, 2015 - 20:28:51 - перейти к сообщению
Странно, у себя проверил все работает... Название файла txt и название в скрипте совпадают? Функция должна быть выше вывода! Покажите содержимое txt файла, может там ошибка у вас.
20. evgenijj369 - 16 Декабря, 2015 - 21:31:02 - перейти к сообщению
Вот это сообщение я писал намного выше. Не знаю почему оно сюда влезло.
*****Вообще ничего не выводит таким образом(((
*****Тем не менее благодарен за помощь!
*****Спасибо!

Russer, Ваш способ я ещё не пробовал, но обязательно сейчас буду пробовать.
Спасибо!
21. Denkill - 17 Декабря, 2015 - 01:21:38 - перейти к сообщению
Все исправил, потестил, сейчас должно работать
PHP:
скопировать код в буфер обмена
  1. <?
  2. $folder_mas = array('img');
  3. $dir = $folder_mas[rand(0,( count($folder_mas)-1) )]; //Название папки
  4. $array_value = array();//Массив с ссылками.
  5. $file = scandir($dir);
  6.         foreach ($file as $key => $value){
  7.             if(is_file($dir."/".$value) AND $value!=='desktop.ini'){
  8.                 $a = explode(".", $value);
  9.                 $array_value[$key] = $a[0].".php";
  10.             }  
  11.         }
  12. foreach ($array_value as $key => $value) {
  13.         echo "<a href='".$array_value[$key]."'><img width='150px' src='".$dir."/".$file[$key]."'><b>".$array_value[$key]."</b></a>";
  14. }
  15. ?>


В массив $folder_mas добавьте свои директории.
22. evgenijj369 - 21 Декабря, 2015 - 07:19:29 - перейти к сообщению
Всем большое спасибо!
Всё сделал)))
При чём мне пригодились два способа (один переделал в другое русло).
Russer и Denkill благодарю Вас, добрые люди!
Спасибо!

 

Powered by ExBB FM 1.0 RC1