Админ интерфейс для редактирования прайса на странице.

Ответить
Аватара пользователя
Jekamajor

Админ интерфейс для редактирования прайса на странице.

Сообщение Jekamajor »

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

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

Если можете помогите, если можно, хотя бы пример кода для изменения одной ячейки. Спасибо!
Аватара пользователя
Prisoner

Re: Админ интерфейс для редактирования прайса на странице.

Сообщение Prisoner »

Скажем тот же MS Excel умеет сохранять табличку (односложную, то есть само тело прайса, без всяких наворотов вроде шапки с картинкой и адресом) в формате csv - там строки это строки, а вот разделители ячеек скажем символ ;. Таким образом надо написать скрипт который будет на основе разбора такого файла генерировать страничку с прайсом. Файл можно заливать вручную или написать маленький интерфейс защищенный паролем.
Аватара пользователя
Jekamajor

Re: Админ интерфейс для редактирования прайса на странице.

Сообщение Jekamajor »

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

Вот эти вот переменные или что это x:str, потом слова между символами . Это к чему? Просто нужно разобраться как генерировался на этой странице прайс...

Код: Выделить всё

Сначала вот это: 
<!-- #BeginEditable "(:%3E4 ?5@54 BM3%3E%3C HTML)" --><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!-- #EndEditable --><HTML><!-- InstanceBegin template="/Templates/template.dwt" codeOutsideHTMLIsLocked="false" -->
<HEAD>
<!-- InstanceBeginEditable name="doctitle" --> 
<TITLE>???????? ??????? - ????</TITLE>
<!-- InstanceEndEditable --> 
<!-- InstanceBeginEditable name="head" -->
Потом вот это:
<table x:str border=1 cellpadding=0 cellspacing=0 width=566 style='border-collapse:
 collapse;table-layout:fixed;width:406pt'>
                      <col class=xl24 width=152 style='mso-width-source:userset;mso-width-alt:5558;
 width:114pt'> <col class=xl24 width=25 style='mso-width-source:userset;mso-width-alt:914;
 width:19pt'> <col class=xl24 width=29 style='mso-width-source:userset;mso-width-alt:1060;
 width:22pt'> <col class=xl24 width=21 style='mso-width-source:userset;mso-width-alt:768;
 width:16pt'> <col class=xl24 width=28 style='mso-width-source:userset;mso-width-alt:1024;
 width:21pt'> <col class=xl24 width=21 style='mso-width-source:userset;mso-width-alt:768;
 width:16pt'> <col class=xl24 width=27 style='mso-width-source:userset;mso-width-alt:987;
 width:20pt'> <col class=xl24 width=22 style='mso-width-source:userset;mso-width-alt:804;
 width:17pt'> <col class=xl24 width=25 style='mso-width-source:userset;mso-width-alt:914;
 width:19pt'> <col class=xl24 width=21 style='mso-width-source:userset;mso-width-alt:768;
 width:16pt'> <col class=xl24 width=30 style='mso-width-source:userset;mso-width-alt:1097;
 width:23pt'> 
                      <tr class=xl139 height=18 style='mso-height-source:userset;height:13.5pt' bgcolor="#CCFFCC"> 
                        <td height=47 class=xl129 style='height:13.5pt' width="171"> 
                          <font face="Arial, Helvetica, sans-serif" size="2">????? 
                          - ????????????<span
  style='display:none'>?:</span></font></td>
                        <td colspan=2 class=xl130 style='border-right:.none' solid black;border-left:
  none' height="47">
Аватара пользователя
mar

Re: Админ интерфейс для редактирования прайса на странице.

Сообщение mar »

это не скрипт, это статический html, полученный путем отдаленной гибридизации страницы, сгенерированной word-ом (mso-width-source:userset;mso-width-alt:914) и dreamwiever-а (директивы #BeginEditable)



я бы использовала либо php (скажем phplib)  шаблоны и вставки на на php, если надо все это счастье вводить из броузера, либо, как предложил Prisoner - csv, причем можно просто злобно и цинично одеть его текс тегами pre Изображение
Аватара пользователя
Jekamajor

Re: Админ интерфейс для редактирования прайса на странице.

Сообщение Jekamajor »

mar

Правильно, не скрипт! Я вот и хотел узнать как генерируется это файл html.

А на счет шаблонов Вы что имели ввиду? готовый скрипт на php? Его можно найти в интернете?
Аватара пользователя
Prisoner

Re: Админ интерфейс для редактирования прайса на странице.

Сообщение Prisoner »

А как получают электроэнергию? Правильно, различными способами. Так и тут. Можно с помощью различных WYSIWYG редакторов или применяя языки программирования (почти какие угодно). Самое главное чтобы на выходе был корректный html код. Например - perl, php, c. В вашем случае mar углядела применение редакторов MS Word и DreamWiever.

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

Re: Админ интерфейс для редактирования прайса на странице.

Сообщение Jekamajor »

С этим вопрос уже улажен.

Prisoner, спасибо, что всегда помогаете дельными советами.



А мой очередной вопрос такой:

Подскажите пожалуйста как можно сделать, чтобы скрипт определил, если

нажали на одну ссылку, то включать, допустим, файл text1.txt, а если

на другую, то, допустим, text2.txt

2 ссылки - это допустим:

?module=text1 *и *?module=text2 на одной

странице



Ну что-нибудь типа:
Аватара пользователя
Jekamajor

Re: Админ интерфейс для редактирования прайса на странице.

Сообщение Jekamajor »

Кому интересно, я нашел решение:

if(isset($_GET['module']))

{

   if($_GET['module']=='text1')

   {

      include('text1.txt');

   }else if($_GET['module']=='text1')

   {

      include('text1.txt');

   }

}
Аватара пользователя
Prisoner

Re: Админ интерфейс для редактирования прайса на странице.

Сообщение Prisoner »

Jekamajor

Подобная проблема обсуждалась
тут
. Что разобрались - гуд, рад за вас. А за спасибо - спасибо Изображение.

Однако в вашем коде вложенное условие проверяет тоже самое, что и внешнее да и реакция такая же.

Кроме того можно написать и так:



Код:

Код: Выделить всё

if (@$_GET['module'] == 'text1')
  {
    include_once('text1.txt');
  }

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

Re: Админ интерфейс для редактирования прайса на странице.

Сообщение Jekamajor »

Да поправляюсь:

if(isset($_GET['module']))

{

* if($_GET['module']=='text1')

* {

* * *include('text1.txt');

* }else if($_GET['module']=='text2')

* {

* * *include('text2.txt');

* }

}



Забыл циферки поменять. Ну и конечно можно проверять не только 2, но и больше ссылок Изображение else if else if else if Изображение

Но почему-то когда я убирал внешнее условие, скрипт не работал...



[s]Исправлено: Jekamajor, 11:30 23-04-2004[/s]
Ответить

Вернуться в «Вебмастеру»