Снова файлы и специальные символы... Но в другом смысле...

  • Автор темы Автор темы Login
  • Дата начала Дата начала

Login

Guest
Снова файлы и специальные символы... Но в другом смысле...

Нужно записать в файл URL:
..... &p=$p&. .... :)
значение $p - неможет быть известно при записи....
если записывать, например, так:
р=\$p
в строке поиска будет .... &p=\$p& .... :)
Спец символ для "$" поискал - ненащел...

Для чего все это? - решил сгенерить меню сайта 1 раз в ручную, нежели делать это для каждого пользователя персонально... Например, после добавления/удаленя группы в MySQL, записать в файл обнавленное меню, потом каждый пользователь будет читать менюшку из этого файла минуя MySql...

Что можете предложть? Заранее спасибо.
 
Login
Может опишешь задачу, а мы поможем подсказать наилучшее решение?
 
Ну, значит, есть переменная в которой хнарится, скажем, номер "темы" (в смысле дизайн - тема) для отображения странички. Тема выбирается пользователем.

Есть база данных, в которой хранится куча всякой всячины и в этой куче есть "группы" и "подгруппы" - заголовки меню первого и всторого уровня соответственно.

Я беру из базы эти группы и подгруппы (Их id и Имя) и формирую меню... Делаю нечто вроде html странички, аля фрейм, содержание которой есть меню сайта.
Потом эту странику пишу в отдельный файл, с тем, чтобы каждый пользователь брал меню из этого файла.

Технически я читаю этот файл либо так:
require "путь_к_файлу_с_меню";
либо так:
include "путь_к_файлу_с_меню";
Потом вызываю функцию вывода меню передався ей все необходимые параметры.

Атеперь суть вопроса:
Когда я пишу в Файл строку:
<A href='www.сайт.ru?proup=$IDgroup$amp;theme=$ выбранная_пользователем_форма'>$NameGroup</A>

Значение переменной $выбранная_пользователем_форма равно нулю. И в файл будет записано:

<A href='www.сайт.ru?proup=0001$amp;theme='>Хлам</A>

Если записывать так:
<A href='www.сайт.ru?proup=$IDgroup$amp;theme=\$ выбранная_пользователем_форма'>$NameGroup</A>

В файле будет:
<A href='www.сайт.ru?proup=0001$amp;theme=$выбранная_пользователем_форма'>Хлам</A> , но вызываться будет страница:
<A href='www.сайт.ru?proup=0001$amp;theme=\$ выбранная_пользователем_форма'>Хлам</A>

----------------------
У меня сейчас мозги вскипят извиняйте, коль что не так :)
 
Когда я пишу в Файл строку:
Значение переменной равно нулю
значит, ты просто неправильно пишешь.

просто исправь свой скрипт так, чтобы он переменную писал - и все.
переменная-то хоть есть?
при error_reporting(E_ALL) скрипт ошибки выдает?

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

-~{}~ 31.12.04 14:31:

собственно, при чем тут вообще файлы?
у тебя неправильно формируется строка.
ну так разберись с этим.

формирование строк - это единственная задача пхп.
все, что он делает - это пишет стрки.
самая, что ни на есть, базовая операция.
Какие с этим могут быть проблемы?
вывел строку - если не такая - исправил. и всего делов.
 
Функция "формирования меню" и "вывод страницы вместе с меню в определенном виде" - это, как говорят в Одессе, две большие разницы :)

Это два совершенно независимых процесса. Давайте так:
Когда я формрую код меню, я незнаю какой дизайн сайта предпочтет пользователь.

И нужномне, чтоб при присоединении выше упомянутого кода, PHP воспринял его так, какбудто я его ручками написал. Те. так:

<A href='www.сайт.ru?proup=$IDgroup$amp;theme=$ выбранная_пользователем_форма'>$NameGroup</A>

- вот.
 
И о каких специальных символах ты говоришь?
какие специальные символы в обычной гиперссылке?
 
:) Незнаю, поэтому и спрашиваю чтоделать :)

Спец символы конечно недля этого...
 
так. понятно.
ты делаешь шаблон?
тогда поясни, пожалуйста, такую вещь.
ты сначала написал, что хочешь сделать его руками, но судя по вопросу - ты генерируешь скрипт скриптом.
Начнем с того, что делать так - плохая практика.
скрипты должны быть написаны один раз программистом. а не генерироваться скриптом.
 
Это тоже понятно в принцепе.
Но как тогда разгрузить MySQL?
Пока пользователей мало, черт с ними, пускай посылают запросы на выборку "групп" и "подгрупп" каждый раз как загружают/перезагружают страницу с сайта. но что делть если их вдруг :) станет очень много?

----------------------------------------------------
Немгого отдохнув и собравшись с мылями:

Даааа.... наворотил....

-~{}~ 31.12.04 14:51:

А, да, этот шаблон я обнавляю вручную, после добавления/удаления/изменения пунктов меню
 
не понял.
какая связь между шаблоном и нагрузкой мускуля?
извини, но ты меня окончательно напутал.
если ты хочешь снять нагрузку с базы, значит, ты, наверное, хочешь генерировать готовый хтмл. но в готовм хтмл нету никаких переменных!
А если ты готовишь шаблон с переменными, то откуда они будут заполняться? Из базы? а при а в чем тогда будет заключаться снижение нагрузки?
 
Еще раз извините за путаницу...
Все верно.
В MySQL нет сведений о том, какую фотму вывода предпочтет пользователь. Поэтому, всетаки я генерю php in html.
По неким причинам куки я немогу использовать, и переменная в которой хранится номер темы сохраняется путем передачи ее значения через URL.
 
Я бы на твоемместе делал шаблон не на пхп, а именно шаблоном.
типа
<A href="?proup=%s&theme=%s">%s</A>
и заполнял бы эту строку через sprintf значениями.
только одно принципиальное отличие.
я бы не писал заполненную строку в файл, а генерировал бы на ее основании меню динамически.

-~{}~ 31.12.04 15:18:

то есть, я так и не понял, какой смысл в записи в файл.
 
Т.е. поступло предложение использовать xml, xhtml?
- извини, я немного понимаю в PHP но ничего не смыслю в xml.

----------------------------------------
Вот, наверно и представился случай изучить.......
 
Не понял. А при чем здесь xml?
Не нужен тебе никакой xml. И вообще не нужен ,и в частности, в твоем вопросе.
прежде, чем искать инструмент - надо определиться с задачей.

Если ты немного понимаешь в пхп, то зачем заморочился таким неочевидным вопросом вообще? Который тебе и самому не до конца ясен?

Начал ты с того, что тебе
Нужно записать в файл URL
потом выяснилось, что записать тебе надо в файл пхп-код.
теперь ты хочешь записать xml

Но еще ни разу ты внятно не объяснил - зачем это все делается. Не было объяснения - а нужен ли тебе файл вообще.
Мне кажется - с этого надо начинать.
 
Сверху