Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> php из файла не работает, О_о вообщем бредовая проблема... 
V
    Опции темы
DRUG_ADDICT
  Дата 11.7.2010, 13:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 10.8.2007

Репутация: нет
Всего: нет



проблема на примере...

есть два файла: 

123.php
Код

<?
$file = file_get_contents("index");
echo $file;
?>


и если в этом файле index записан скрипт:

Код

<?
$echo = "Привет";
echo $echo;
?>


- ну и более сложный скрипт... 

как быть тогда? как вывести в 123.php файл этот, причем чтоб он отработал... =((( помогите плиз

Это сообщение отредактировал(а) DRUG_ADDICT - 11.7.2010, 13:38
--------------------
ICQ# 23-23-30 What can i do for you ? Paid..."Свобода лечит лучше всего" А.С. Неил. Самерхилт.
PM ICQ Jabber   Вверх
patap
Дата 11.7.2010, 15:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 893
Регистрация: 7.5.2005
Где: Украина, Зп

Репутация: 26
Всего: 40



файл 123.php
Код

include('index.php');


файл index.php
Код

$echo = "Привет";
echo $echo;


?


--------------------
На боку кобура болталась, сзади шашка отцовская звякала. 
Впереди меня все хохотало, а позади все плакало (с)
PM MAIL ICQ   Вверх
DRUG_ADDICT
Дата 11.7.2010, 15:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 10.8.2007

Репутация: нет
Всего: нет



Цитата(patap @ 11.7.2010,  15:00)
файл 123.php
Код

include('index.php');


файл index.php
Код

$echo = "Привет";
echo $echo;


?

не понимаешь там в тексте в index ещё HTML код есть какбэ... ну текст вообще, просто там в тексте переменные вот эти используются и всё такое пхпшное... 

smile 
получается если инклудить то надо и хтмл экранировать а ещё и echo ему давать, а должно выглядеть так: написал текст вставил переменную и ещё чего там сохранил и все... короче я тут типа движек пишу не использующий БД, все данные в файлах хранятся парсяться отудова и т.д. наверн так с echo не получиться... ммм что ещё моно попробовать? подскажите а... ну тоже что то с использованием переменных в тексте... типа тогда самим эти переменные формировать движком чтоле?... ###. всё должно выглядеть просто...
--------------------
ICQ# 23-23-30 What can i do for you ? Paid..."Свобода лечит лучше всего" А.С. Неил. Самерхилт.
PM ICQ Jabber   Вверх
skyboy
Дата 11.7.2010, 15:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



Цитата(DRUG_ADDICT @  11.7.2010,  14:48 Найти цитируемый пост)
получается если инклудить то надо и хтмл экранировать а ещё и echo ему давать

кто тебе такое сказал? и почему ты сам не проверил?
и мануал по-прежнему игнорируешь.
Цитата(php.net/include)

When a file is included, parsing drops out of PHP mode and into HTML mode at the beginning of the target file, and resumes again at the end. For this reason, any code inside the target file which should be executed as PHP code must be enclosed within valid PHP start and end tags. 

PM MAIL   Вверх
DRUG_ADDICT
Дата 11.7.2010, 15:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 10.8.2007

Репутация: нет
Всего: нет



что-то знаешь, что-то типа... {variable} в тексте, но ет уж текст будет прходит через функцию в движке, ет геморно блин. как-то должно быть проще! я пока не знаю как....  smile

Добавлено через 1 минуту и 30 секунд
Цитата(skyboy @ 11.7.2010,  15:53)
Цитата(DRUG_ADDICT @  11.7.2010,  14:48 Найти цитируемый пост)
получается если инклудить то надо и хтмл экранировать а ещё и echo ему давать

кто тебе такое сказал? и почему ты сам не проверил?
и мануал по-прежнему игнорируешь.
Цитата(php.net/include)

When a file is included, parsing drops out of PHP mode and into HTML mode at the beginning of the target file, and resumes again at the end. For this reason, any code inside the target file which should be executed as PHP code must be enclosed within valid PHP start and end tags. 

 smile  =))))))))))

и я проверял! мне выдало ошибку! ща покажу!

Добавлено через 3 минуты и 52 секунды
    Warning: include(<span class="tr3">впфрфрфрфрфрфрфрфр</span><p style="text-indent: 25px;">фрфрфр<strong>«фрфрфрфр»</strong> ыпывпвыпыпывпыпывп.</p&g in C:\Program Files\VertrigoServ\www\index\index.php on line 295

295: include($text);

там етот index =) 
--------------------
ICQ# 23-23-30 What can i do for you ? Paid..."Свобода лечит лучше всего" А.С. Неил. Самерхилт.
PM ICQ Jabber   Вверх
skyboy
Дата 11.7.2010, 16:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



Цитата(DRUG_ADDICT @  11.7.2010,  14:54 Найти цитируемый пост)
include(<span class="tr3">впфрфрфрфрфрфрфрфр

что-то неясно.
ты что, делаешь include на результат замены имен переменных на соответствующее значение?
PM MAIL   Вверх
DRUG_ADDICT
Дата 11.7.2010, 16:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 10.8.2007

Репутация: нет
Всего: нет



и кстати говоря $text; хранит не весь текст файла, а тока его часть, там массив короче, кусок текста, чтоб в страницу вставить... =(

Добавлено @ 16:08
когда через echo вывожу етот текст, то переменые эти как текст выглядят, обычный текст, ну ето и понятно =))) а include вы тут мне сами предлагаете, не думаю что с ним что то получиться, пробовал уже. smile

Добавлено @ 16:16
Цитата(skyboy @  11.7.2010,  16:05 Найти цитируемый пост)
на результат замены имен переменных на соответствующее значение? 

вот это кстати мне и надо =((( вот в том примере что в самом первом посте, что на что надо заменить? какуюто функцию мож там пхпешную дефолтную поставить, чтоб как рас ето происходило...и кста не только с какой то отдельной переменой объявленной в 123.php или в index, а вообще с кусоком кода допустим... smile 

типа...:

123.php
Код

<?
$text2 = "456";
$file = file_get_contents("index");
echo $file;
?>


index
Код

<strong>Здарсть</strong>
<?
$text = "123";
echo $text.$text2;

?>




Это сообщение отредактировал(а) DRUG_ADDICT - 11.7.2010, 16:21
--------------------
ICQ# 23-23-30 What can i do for you ? Paid..."Свобода лечит лучше всего" А.С. Неил. Самерхилт.
PM ICQ Jabber   Вверх
skyboy
Дата 11.7.2010, 16:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



Цитата(DRUG_ADDICT @  11.7.2010,  15:05 Найти цитируемый пост)
типа...:

ну, и опять тут file_get_contents.
в указанном случае как раз include отлично отработает.
и нет тут никаких переменных в фигурных скобках.

Добавлено через 1 минуту и 20 секунд
Цитата(DRUG_ADDICT @  11.7.2010,  14:54 Найти цитируемый пост)
{variable} в тексте, но ет уж текст будет прходит через функцию в движке

изобретаешь велосипедсвой шаблонизатор? 
а чем не устраивают smarty и twig?
PM MAIL   Вверх
DRUG_ADDICT
Дата 11.7.2010, 16:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 10.8.2007

Репутация: нет
Всего: нет



не правильно пример показал, начить инклуде() просит как правило файл же, ссылку на файл, у меня файла нет, там в $text маси сидит, текст (html, php)... ну моно етот масив конечно отдельно писать как то в  файл О_о и выводить через инклуде, хммм мож попробовать... мож как то в /temp/ писать, чтоб не создавать не удалять файл...

короче по идее файл index выглядит так

Код

[NAME]123[/NAME]
[HEAD]123[/HEAD]
[TEXT]123[/TEXT]
[URL]123[/URL]
[TIME]123[/TIME]


и вот как рас то что между [TEXT] ... [/TEXT] там и содержаться в $text;

как быть?

Добавлено через 1 минуту и 59 секунд
как лучше сделать думаешь? файл сооздавать и туда писать етот $text; и выводить через инклуде или че другое есть? у меня пока ток ето на уме =( 

Это сообщение отредактировал(а) DRUG_ADDICT - 11.7.2010, 16:38
--------------------
ICQ# 23-23-30 What can i do for you ? Paid..."Свобода лечит лучше всего" А.С. Неил. Самерхилт.
PM ICQ Jabber   Вверх
skyboy
Дата 11.7.2010, 17:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



можешь начать использовать eval. когда начнутся проблемы с производительностью(благодаря eval они начнутся довольно скоро), переходи на запись в файл.
мне подход smarty(в twig - не в курсе, как реализовано) нравится, когда всякие самодельные конструкции заменяются на РНР-код и эта уже "скомпилированная" версия кешируется и используется. даже без учета тормозов eval при каждом разе заново парсит неизменный шаблон кажется мне дурной идеей.
PM MAIL   Вверх
DRUG_ADDICT
Дата 11.7.2010, 17:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 10.8.2007

Репутация: нет
Всего: нет



лан спасибо, буду курить инклуд, ща почитал там реал ет должно получиться и создам файл через tmpfile(); ... чето ты мны напугал eval(); функцией =))) не надо мне её юзать =) переходить потом ещё уууу =) не

про smarty и twig ваще первый рас слышу =( не наю даж как оно выглядит и где находиться... ла иа пошел! тема решена корочь! smile 
--------------------
ICQ# 23-23-30 What can i do for you ? Paid..."Свобода лечит лучше всего" А.С. Неил. Самерхилт.
PM ICQ Jabber   Вверх
DRUG_ADDICT
Дата 11.7.2010, 18:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 10.8.2007

Репутация: нет
Всего: нет



всё сделал =) кул 

Код

if (isset($_GET['content']) or isset($_GET['news']) or basename($file) == "index") {
$tmpfname = tempnam("./tmp", "FOO");
$handle = fopen($tmpfname, "w+");
fwrite($handle, $text);
include($tmpfname);
fclose($handle);
unlink($tmpfname);
} else {
print($text);
}


ток чет не стал юзать tmpfile(); а тэ там хз де он папку темп найдёт + к тому же не возвращает её путь ! =( ###
--------------------
ICQ# 23-23-30 What can i do for you ? Paid..."Свобода лечит лучше всего" А.С. Неил. Самерхилт.
PM ICQ Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0753 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.