Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Новое окно с заданными параметрами
 
 автор: Dead_Fenix   (13.11.2005 в 21:10)   письмо автору
 
 

Вообщем, если кто помнит, я делаю простенький магазин, и постепенно усложняю скрипт, теперь мне требуется что бы при нажатии на строчку с товаром, открывалось окно с описанием этого товара. Имеется страница, в ней скрипт, в результате действия которого на странице появляется описание нужного товара.
Описания хранатся не в БД, а в отдельном файле(файлах).
Вот несколько вопросов:
1) Как лучше сделать, что бы описания хранились в одном файле, или нескольких?
2) Если в нескольких, то как сделать что бы страница открывала именно это описание?
3) Если в одном, то как выбрать нужную сторочку?
4) Как должна выглядеть ссылка для открытия нового окна с заданным параметром? так?
<A href="description.php?d=100112" target=_blank>какой-то товар</A>

   
 
 автор: cheops   (13.11.2005 в 23:27)   письмо автору
 
   для: Dead_Fenix   (13.11.2005 в 21:10)
 

Лучше во многих - это позволит избежать проблем с совместным доступом во время редактирования, да и вообще удобно (за исключением пожалуй операции перемещения).

   
 
 автор: Dead_Fenix   (14.11.2005 в 20:44)   письмо автору
 
   для: cheops   (13.11.2005 в 23:27)
 

Ну с этим разобрались.
А как сделать что бы скрипт открывал нужный файл?

   
 
 автор: DDK   (14.11.2005 в 22:09)   письмо автору
 
   для: Dead_Fenix   (14.11.2005 в 20:44)
 

Присвоить каждому товару ID и проименовать соответствующие файлы соответствующими ID...

   
 
 автор: Dead_Fenix   (14.11.2005 в 22:11)   письмо автору
 
   для: DDK   (14.11.2005 в 22:09)
 

Это я понимаю, меня интересует сама реализация. желательно в примере)

   
 
 автор: cheops   (15.11.2005 в 00:55)   письмо автору
 
   для: Dead_Fenix   (14.11.2005 в 22:11)
 

Обычно тут обыгрывается имя файла - файлу, в котором хранится информация присваивается имя, содержащее в своём составе id товара.

   
 
 автор: Dead_Fenix   (15.11.2005 в 01:13)   письмо автору
 
   для: cheops   (15.11.2005 в 00:55)
 

эм... вообщем, имеется ссылка. имеются файлы с описанием. как сделать что бы при нажатии на ссылку, вида description.php?d=10001, открывался нужный файл? как это реализовать на php я не понимаю...

   
 
 автор: cheops   (15.11.2005 в 01:59)   письмо автору
 
   для: Dead_Fenix   (15.11.2005 в 01:13)
 

Информацию по товару сохраняем в файле id10001.txt, а в description.php открываем файл с именем "id".$_GET['id'].".txt".

   
 
 автор: Shorr Kan   (15.11.2005 в 02:01)   письмо автору
 
   для: Dead_Fenix   (15.11.2005 в 01:13)
 

<?
 
if(isset($_GET['d'])){
$file=str_replace("\\","",str_replace(".","",$_GET['d']));
if(
file_exists("about/".$file)){print file_get_contents("about/".$file);}
else{print 
"К сожалению, описание товара недоступно.";}
}
?>

   
 
 автор: Dead_Fenix   (15.11.2005 в 02:21)   письмо автору
 
   для: Shorr Kan   (15.11.2005 в 02:01)
 

во, то что надо=)
только не работает... и еще, где тут поставить расширение файла?

   
 
 автор: Shorr Kan   (15.11.2005 в 02:28)   письмо автору
 
   для: Dead_Fenix   (15.11.2005 в 02:21)
 

Давайте тогда поподробнее. Почему не работает? Что говорит? И зачем вам расширение файла?

А вообще-то, если расширение нужно, то:

<? 
if(isset($_GET['d'])){ 
$file=str_replace("\\","",str_replace(".","",$_GET['d'])).".txt"
if(
file_exists("about/".$file)){print file_get_contents("about/".$file);} 
else{print 
"К сожалению, описание товара недоступно.";} 

?>

   
 
 автор: Dead_Fenix   (15.11.2005 в 02:35)   письмо автору
 
   для: Shorr Kan   (15.11.2005 в 02:28)
 

Пишет: К сожалению, описание товара недоступно.
Файл есть... странно.
А расширение нужно, потому что все описания делаются в блокноте. просто переименовывать 50 фалов тяжеловато..

   
 
 автор: Shorr Kan   (15.11.2005 в 02:56)   письмо автору
 
   для: Dead_Fenix   (15.11.2005 в 02:35)
 

Ну да, в таком случае ошибка ясна... Вы в переменной посылайте не имя файла с расширением, а его же - БЕЗ расширения...

script.php?d=298471


тогда этот скрипт сам добавит .txt - и прочитает сей файл из каталога about

   
 
 автор: Dead_Fenix   (15.11.2005 в 03:02)   письмо автору
 
   для: Shorr Kan   (15.11.2005 в 02:56)
 

именно так и делаю.. но все равно не хочет...
Может надо атрибуты файлов описания изменить?

   
 
 автор: Shorr Kan   (15.11.2005 в 03:05)   письмо автору
 
   для: Dead_Fenix   (15.11.2005 в 03:02)
 

В таком случае, сделайте вот так, и скажите - что напишет?


<? 
if(isset($_GET['d'])){ 
$file=str_replace("\\","",str_replace(".","",$_GET['d'])).".txt"
print 
"!".$file."!";
if(
file_exists("about/".$file)){print file_get_contents("about/".$file);} 
else{print 
"К сожалению, описание товара недоступно.";} 

?> 

   
 
 автор: Dead_Fenix   (15.11.2005 в 03:07)   письмо автору
 
   для: Shorr Kan   (15.11.2005 в 03:05)
 

!298471.txt!К сожалению, описание товара недоступно.

   
 
 автор: Shorr Kan   (15.11.2005 в 03:09)   письмо автору
 
   для: Dead_Fenix   (15.11.2005 в 03:07)
 

В таком случае, в уверены, что рядом со скриптом есть каталог about, внутри которого есть файл 298471.txt ?

   
 
 автор: Dead_Fenix   (15.11.2005 в 03:14)   письмо автору
 
   для: Shorr Kan   (15.11.2005 в 03:09)
 

Все, спасибо)
Действительно досадная ошибка, каталог был неправильно назван. Еще раз спасибо за внимание.

   
 
 автор: Shorr Kan   (15.11.2005 в 03:16)   письмо автору
 
   для: Dead_Fenix   (15.11.2005 в 03:14)
 

Рад помочь... Только я немножко ошибся - $file=str_replace("\\","",str_replace(".","",$_GET['d'])).".txt"; - недурно бы иной слэш затирать... в обратную сторону.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования