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 :: Версия для печати :: вставка txt в php
Форумы портала PHP.SU » » Работа с файловой системой и файлами » вставка txt в php

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

1. aesoem - 16 Октября, 2011 - 13:45:38 - перейти к сообщению
добрый день, есть скрипт который генерирует число и передает его через переменную в tpl файл, и выводит его на дисплей, все работает, но мне нужно что бы скрипт брал это число с txt файла, пробывал incloude но не помогло
2. altermann - 16 Октября, 2011 - 13:51:13 - перейти к сообщению
смотрите работу с файлами: fopen(), file_get_contents(), file()
3. LIME - 16 Октября, 2011 - 15:43:23 - перейти к сообщению
можно и include() но тогда в txt файле число должно храниться в виде пхп кода
например
4. illy - 16 Октября, 2011 - 15:52:21 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $num=3;
  2.  
  3. $f=fopen('num.txt', 'w');
  4. fputs($f,$num);
  5. fclose($f);
  6.  
  7. $s=file('num.txt');
  8. echo $s[0];
5. aesoem - 19 Октября, 2011 - 16:05:32 - перейти к сообщению
LIME этот способ все время возвращает 1
возвращает - 3
(Добавление)
еще раз приведу пример...

файл server.php
$Online = нужно сюда считать содержимое файла
$tpl->SetVar("{online}", $Online);

В файле index.tpl написано Онлайн: {online}

Сама связка работает но у меня именно проблема в самом начале как загрузить в переменную $Online текст с файла?
Если в самом начале переменно присвоить любое число то в файле index.tpl оно стабильно отображается
6. morph-x - 20 Октября, 2011 - 19:37:06 - перейти к сообщению
Вот так:
PHP:
скопировать код в буфер обмена
  1. $file = file_get_contents("file.txt");
  2. $Online = (int)$file;
  3. $tpl->SetVar("{online}", $Online);

В файле file.txt пишете просто нужное вам число.

Я так понимаю ваша цель - вывести ложное число посетителей, да Подмигивание . Тогда можно сделать так:

PHP:
скопировать код в буфер обмена
  1. $Online = rand(200, 800);
  2. $tpl->SetVar("{online}", $Online);


Тогда переменная $Online будет равна случайному числу от 200 до 800. Это число будет меняться после каждой перезагрузки страницы.


Сайт на DLE я так понимаю Радость ?
7. aesoem - 21 Октября, 2011 - 12:51:59 - перейти к сообщению
morph-xда на DLE, не ложные данные а действительные хочу вывести хотябы
PHP:
скопировать код в буфер обмена
  1. $file = file_get_contents("file.txt");
  2. $Online = (int)$file;
  3. $tpl->SetVar("{online}", $Online);
возвращает все время ноль... Однако
8. Stierus - 21 Октября, 2011 - 13:24:11 - перейти к сообщению
aesoem, вам в первом комментарии дали 3 ссылки, вы их открывали?
9. aesoem - 21 Октября, 2011 - 15:13:52 - перейти к сообщению
Stierusчитал, у меня все рвемя 0 возвращает
10. morph-x - 21 Октября, 2011 - 20:15:59 - перейти к сообщению
aesoem,
Насколько я знаю, эти функции возвращают 0 (false) при ошибке. Поэтому, я вижу две возможных причины:
1. Если на файл, из которого вы читает число, не установлены права на чтение, то соответственно его нельзя считать. Установите права на этот файл - 777.
2. Если ваш PHP-код находится в шаблоне, то файл из которого вы читаете должен находится все одно в корне сайта, потому что шаблон подключается в файл index.php и все пути нужно указывать относительно корня.

 

Powered by ExBB FM 1.0 RC1