Автор Тема: проблема с путями  (Прочитано 4014 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн oksale

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 17
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
проблема с путями
« : 18 Января 2003, 11:11:50 »
Доброе утро.
У меня есть обычный html-файл с формой, где action=”shop.php”
Для навигации по сайту предназначены картинки и на них. И если у меня уже есть некая переменная, делать ничего не нужно, иначе – нужно получить эту переменную из БД и изменить все прописанные пути в этом файле. Здесь-то  у меня и возникла проблема. Насколько я понимаю, это делается при помощи регулярных выражений. Мой вариант такой:
$a = ereg_replace("ref=$i", $var, "
http://localhost/shop/Shop.php?ref=$i&id_temp=$id_temp\'");

Ищется ref=$i, так как эта переменная обязательно входит в путь. Я указала в качестве строки поиска произвольную перемнную $var, но я не знаю, как указать, что искать нужно во всем html-файле? Это первый вопрос.

Второй вопрос: как я могу сама формировать путь(у меня версия 4.0), а не пользоваться тем, что мне предоставляют get и post?

Спасибо.

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
проблема с путями
« Ответ #1 : 18 Января 2003, 12:20:27 »
Я правильно понял, что ты, перед отдачей файла пользователю, сначала его считываешь, и заменяешь в нем ссылки, а потом выдаешь? Оригинальный способ.
А почему бы тебе не сделать из html php, ко всем ссылкам добавить переменнюу $link, и в начале скрипта просто определять ее? Не надо ниего считывать, ничего заменять...
Вообще, мне кажется, что ты свою задачу решаешь гораздо сложнее, чем можно сделать.

Второй вопрос не понятен вообще. Какой путь? гет и пост тебе ничего не формируют. Не хочешь пользоваться - не пользуйся. Только лучше пример приведи. что тебе предоставляют гет и пост и что ты хочешь получить

Оффлайн oksale

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 17
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
проблема с путями
« Ответ #2 : 18 Января 2003, 21:49:41 »
По первому вопросу:
у меня первая страничка - html. И как только польз-ль что-нибудь на ней делает - запускается скрипт php. Так вот, если он что-нить нажмет, добавится его временный id, потом, если он выберет категорию для просмотра - добавится id_cat, и т.д. И чем дальше он пойдет - тем больше должен быть путь. А если просто прописать кучу переменных с самого начала - как-то некрасиво будет - куча переменных - и все пустые..

А по второму: насколько я понимаю, при нажатии на кнопку на форме в командную строку прописываются все переменные, которые считываются с формы. А чего я хочу? Например, на форме есть два элемента с именами: id_cat и id_sub_cat. Соответственно, в командной строке будет написано что-то типа http://myjob.php?id_cat=1&id_sub_cat=2
А могу я задавать, что будет в этой самой командной строке? Ну, например, не хочу выводить id_sub_cat, а хочу добавить id_temp. То есть писать то, что хочу?

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
проблема с путями
« Ответ #3 : 18 Января 2003, 22:35:32 »
Оксаночка.
По первому вопросу я ничего не понял.
Уж больно хитро у тебя сделано. Сам я - малый примитивный, стараюсь сделать попроще. И тебя понимаю с трудом.
Например, я так и не понял связь между этим первым,и, как я понял, единственным html файлом, скриптами, которые "сразу запускаются" и ссылками, которые надо заменять. А так же между картинками с линками и кнопками с формами.

Поэтому, пожалуй, я перейду сразу ко второму вопросу, а к первому вернусь по зрелом размышлении.

Так вот. Должен тебя разочаровать. PHP к формированию пути не имеет никакого отношения. Потому, что он - на сервере. И знать ничего не знает ни о каких путях. PHP понимает только данные HTTP запроса, которые ему передал вебсервер от браузера. Такие дела.

Путь формирует браузер. На основании того, что написано в HTML. Вот написано у тебя в форме method=POST - и ничего в строке не видно. Написано GET - и все переменные, которые есть в форме, передаются в адресной строке. Добавлена к адресу какая-то переменная - значит, она и будет в строке.
Все очень просто и логично.

Немножко, Вам, девушка, надо бы подучить HTML, HTTP - очень поможет в будущем. Как-то оно лучше получается, когда знаешь, как работает то, что ты делаешь.

И еще один совет. Есть в любом браузере такая команда- просмотр исходного кода html. Так вот очень рекомендую походить по сайтам и ей попользоваться. Увидел что-то интересное - и сразу посмотреть. Очень расширяет кругозор.
« Последнее редактирование: 18 Января 2003, 22:41:21 от RomikChef »

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
проблема с путями
« Ответ #4 : 18 Января 2003, 23:02:56 »
Кстати, с путями твои проблемы ничего общего не имеют. Не запутывай общественность. Тебя интересует строка запроса, а не путь.

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

Так и с путями. Путь - это адрес скрипта. Куда браузеру идти. А все, что после знака вопроса - это уже авоська с переменными.

Оффлайн oksale

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 17
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
проблема с путями
« Ответ #5 : 20 Января 2003, 10:17:26 »
Блин, уж и не знаю, как объяснить-то :(
Смотри, у меня есть html-файл, на котором есть восемь кнопок(у меня они сделаны картинками с a href). Есть форма, у которой . Как только польз-ль на этой страничке нажимает кнопку, запускается этот самый 1.php. В этом 1.рhp я делаю шаблон при помощи class FastTemplate (Я вычитала, что это корректный способ написания сайтов). Этот шаблон выглядит так же, как и html-файл(то есть это он же и есть, только разбит на три куска: top, text,bottom). Ну нажимает польз-ль, например, первую кнопку и переходит в раздел “бытовая техника”(у меня сайт-магазин). Я думала тут же дописать в командной строке id_sub_cat=1. Дальше по этому id из БД выбираются все категории товаров. Например, есть миксеры и фены. Они и выводятся в в виде таблицы и делаются ссылками. Если польз-ль выбирает фены, в командной строке дописывается id_cat=2 и по id_cat выбираются фирмы-производители этих фенов. Ну и т.д. Так я и думала находить прописанный a href  и заменять его на другой путь. А если польз-ль нажмет на другую кнопку, например, аудио. Должна поменяться id_sub_cat. А id_sub_cat вообще не должно быть.
Ты считаешь, что это неправильно? Я не хочу ничего усложнять. Наоборот, мне через неделю сдавать этот курсовой, так что надо очень быстро делать все это.
Очень надеюсь, что сейчас понятнее описала все это.

А насчет второго вопроса: пусть не путь, пусть строка запроса, но я могу ее менять?(кроме как hidden-ом)?

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
проблема с путями
« Ответ #6 : 20 Января 2003, 12:21:48 »
использовать fastkmplate для маленьких сайтов, для курсовых, и если ты вообще не понимаешь, что такое веб-сайт - это самый некорректный способ делать сайты.

Ездить на формуле1 - это самый быстрый способ езды. Посади тебя за руль - много ты наездишь?

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

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

Напиши хотя бы, для начала, что у тебя нв этом шаблоне написано в href у кнопок. Хочется мне, знаешь ли, знать, что именно ты хочешь заменять. Вот такое странное желание возникло.

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

Оффлайн oksale

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 17
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
проблема с путями
« Ответ #7 : 20 Января 2003, 13:21:27 »
Ну блин раскритиковал :))
Может, я тебе скрипт по мейлу кину, а?
Это проще, чем сюда кидать. Только ты б адрес кинул, а?

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28