|
|
|
| Здравствуйте!
Прошу вас помочь мне доработать нижеследующий скрипт так, что бы он после выбора товара, способа оплаты, и нажатия кнопки "Оплатить", вместо надписи "Hello2", выводил логотип выбранной платёжной системы (гиперссылка), изображение товара, и текстовый коментарий о товаре и его стоимости.
Данный скрипт выводит текст, но почему-то в чистом окне. И как вставить туда картинку (или картинку с гиперссылкой) ?
Учитывая, что в Java скрипте я совершенно не силён, прошу дать ответ в полностью приведенном заного рабочим скриптом.
Заранее спасибо. | |
|
|
|
|
|
|
|
для: diman
(05.10.2007 в 17:48)
| | Ваш магазин создан на базе ведь? Зачем вам этот скрипт? Не проще ли просто с помощью радиокнопок (ну хотите, пусть селектом) выбирать тип платежа, метод доставки и бог весть, что можно еще. Типам платежа присвоить id, которые и будут содержать эти радиокнопки или опшены селекта в качестве знначения. После нажатия "Оплатить", все это отправляется на сервер, где по id вы и будете знать какой вид оплаты выбран, формировать страничку с логотипом, картиночками и описаниями товаров, их ценой и общей суммой за покупку - покупателю только подтвердить надо будет, а может здесь еще и ввести адрес доставки товара. Короче, можно по разному поступить, но то что вы изобретаете, это... Уж лучше сделать динамическую корзину тогда, это будет посложнее, но более полезно. | |
|
|
|
|
|
|
|
для: sim5
(06.10.2007 в 10:12)
| | sim5
Магазин мой создан не на базе. Кроме HTML там ничего не используется, и сам сайт первоначально скорее всего будет размещаться на бесплатном хостинге без поддержки PHP (кто знает попрёт, или нет, а деньги вкладывать сразу не хочется).
Единственно, что мне нужно, доработать представленную страничку с выбором оплаты. А дальше будет работать шлюз на webmoney, или SMS замок для оплаты. | |
|
|
|
|
|
|
|
для: diman
(06.10.2007 в 10:56)
| | Ну поддержака РНР у вас хотя бы продразумевается, или весь ваш магазин это статические файлы? | |
|
|
|
|
|
|
|
для: sim5
(06.10.2007 в 11:07)
| | sim5
Ни какой поддержки PHP не будет. Все файлы будут тупо выложены с сылками для прямого скачавания на самом сайте и заархивированы паролем Winrar. А вот пароли и будут продаваться. На странице оплаты после выбора платежной системы и нужного товара, должна будет высветиться просто инструкция для оплаты, логотип платёжной систмы (с гиперсылкой) и мини изображение товара.
Неужели для знающего человека это очень трудно сделать на Java скрипт? Если предложенный мною скрипт доработать трудно, то предложите свой вариант плиз... | |
|
|
|
|
|
|
|
для: Diman
(06.10.2007 в 21:45)
| | Вы так говорите, будто изложили изначально все подрбности своей задачи, а для ее решения имеет только одно универсальное средство. Я, например, как покупатель, хотел бы еще перед выбором товара знать, что я выбираю, а потому мини картинки товаров (тем более, если это мини) можно показывать сразу. Ваш скрипт не дорабатывать надо, а перерабатывать. Я бы тогда сделал примерно так:
Логотипы платежных систем загружал в кеш. Если под инструкцией оплаты подразумевается, как осуществить оплату в той или иной из этих платежных систем, то эти инструкции привязал бы (как массив, по индексам) к изображениям их логотипов. Тоже самое и с URL этих платежных систем. Список товаров выводится в виде таблицы (списка) вместе с картиками, а выбор их либо чекбоксами, либо радиокнопками (если разрешено выбрать только один).
При выборе платежной системы, ее логотип, URL и инструкция для пользователя просто бы изменялась в соответсвующем контейнере, другими словами все это было бы доступно сразу, а не после чего-то.
Вот собственно так бы сделал. | |
|
|
|
|
|
|
|
для: sim5
(07.10.2007 в 03:46)
| | Я понял вашу идею, но в моей ситуации, как я думаю, всё немножко подругому. Вашу идею конечно же можно использовать, но тогда мне придётся переделывать весь сайт, и полностью его строить либо на PHP, либо на Java скрипт. А изначально у меня построенно всё так:
На предыдущей странице (до страницы оплаты), размещен список товаров (файлы упакованные Winrar под архив) с миниизображениями , которые можно скачать по прямой ссылке. И также следует инструкция, которая гласит, что для того, чтоб получить пароль к архиву необходимо перейти на страницу оплаты.
На самой странице оплаты предлагается выбрать из списка название скаченного файла и метод оплаты. После этого должен произойти следующее:
1. появиться логотип платежной системы.
2. для напоминания и уточнения того, что был выбран именно нужный файл для оплаты - выводится вновь миниизображение скаченного файла.
3. Выводится стоимость товара (в зависимости от способа оплаты, стоимость будет разной)
4. Выводится инструкция на какой счет перевести деньги, или номер, на который нужно отправить SMS.
Честно говоря, не думал, что это так сложно сделать. На Делфи, или на Бейсике, я такое б за 5 минут написал.
Представленный скрипт я тоже скачал с другого сайта. Там в зависимости от выбора обоих списков, происходил переход на нужную страницу.
В этом скрипте я поменял оператор:
location на document.write и после этого стал происходить вывод на экран указанного текста, а не переход на указанную страницу. Единственно вывод на экран почему-то происходит в новом окне. Может просто существует другой оператор вывода на экран?
Я знаю, что есть вот такой оператор: d.innerHTML = , но не знаю как его правильно совместить с моими данными.
Если мой скрипт доработать сложно, то я приму любые возможные варианты. Хоть с радиокнопками, хоть ещё с чем-нибудь - главное, чтобы работало, и было красиво.
Если сможете помочь, буду безумно благодарен... | |
|
|
|
|
|
|
|
для: Diman
(07.10.2007 в 19:39)
| | Ну собственно можете не менять способ выбоара товара, но, чтобы в следующей странице отобразить выбранный товар, его ведь надо как-то передать на следующую страницу. Сделать это можно через URL. Но тогда зачем еще один выбор товара осуществлять на странице оформления. Я вам уже говорил, оргнизуйте массив содержащий всю необходимую инфрмацию об оплате, и пусть она выводится сразу при выборе типа оплаты. А вот выбранные товары, передавайте (для информации) через URL. Правда на метод GET есть ограничения, поэтому лучше передавать их ID или другие идентификаторы. В общем надо обдумывать все, а тут вам виднее как, я ведь не знаю всего вашего скрипта.
Вместо document.write() действительно лучше использовать innerHTML, но сперва определитесь с решением общих задач.
Ну так как делали вы я бы делать не стал. А еще лучше разместить свой сайт, пусть на бесплатном хостинге, но с поддержкой РНР, иначе это не магазин, а мучение будет. Турдностей будет гораздо больше, чем переписать скрипт магазина. | |
|
|
|
|
|
|
|
для: sim5
(07.10.2007 в 20:37)
| | Сам скрипт прикреплен к самому первому топику. Вы с ним не ознокамливались?
Я, конечно, учту все ваши рекомендации, и обязательно в ближайшем будущем переложу всё на PHP. Но, это в будущем, при условии, что сайт начнёт приносить прибыль.
Я не знаток ни PHP, ни Java, и только процентов на 35 знаком с HTML. Вот в этом вся и трудность. Все странички своего сайта я сделал при помощи редактора Web Page Maker.
Но, он не даёт возможности применить в себе логические условия. Вот поэтому я полез разбираться со скриптами Java.
Вы даёте совет организовать массив содержащий всю необходимую инфрмацию об оплате, но, к сожалению, я не знаю, как это сделать, хотя понимаю, что это хороший вариант.
Если действительно нет возможности, времени, или желании, разобраться со скриптом, который я прикрепил к первому топику, то хотябы объясните, как привильно использовать функцию innerHTML.
У меня есть 2 примера:
1)
<script language="JavaScript">
function doit(th)
{
var v = th.Themes.value;
var d = document.getElementById("id_")
switch(v)
{
case "1": var val = "текст1";break;
case "2": var val = "текст2";break;
case "3": var val = "текст3";break;
}
d.innerHTML = "<input readonly style='font-size:50px;color:#000000;background-color:#ffffff;border:none' type=text name=tool value='" + val + "'>";
}
</script>
<form name="form1" >
<select name="Themes" style="position:absolute;left:35px;top:146px;width:227px;z-index:3">
<option value="1">Вариант-1</option>
<option value="2">Вариант-2</option>
<option value="3">Вариант-3</option>
</select>
<input name="formbutton1" type="button" onclick="doit(this.form)" value="Go" style="position:absolute;left:266px;top:146px;z-index:5">
<br>
<span id="id_"></span>
</form>
2)
<html>
<head>
<title>Untitled</title>
</head>
<body>
<form name="doublecombo">
<p><select name="example" size="1" onChange="redirect(this.options.selectedIndex)">
<option>Technology Sites</option>
<option>News Sites</option>
<option>Search Engines</option>
</select>
<select name="stage2" size="1">
<option value="http://wsabstract.com">Website Abstraction2</option>
<option value="http://www.news.com">News.com3</option>
<option value="http://www.wired.com">Wired News4</option>
</select>
<input type="button" name="test" value="Go!"
onClick="go()">
</p>
<script>
<!--
var groups=document.doublecombo.example.options.length
var group=new Array(groups)
for (i=0; i<groups; i++)
group[i]=new Array()
group[0][0]=new Option("Website Abstraction","http://wsabstract.com")
group[0][1]=new Option("News.com","http://www.news.com")
group[0][2]=new Option("Wired News","http://www.wired.com")
group[1][0]=new Option("CNN","http://www.cnn.com")
group[1][1]=new Option("ABC News","http://www.abcnews.com")
group[2][0]=new Option("Hotbot","http://www.hotbot.com")
group[2][1]=new Option("Infoseek","http://www.infoseek.com")
group[2][2]=new Option("Excite","http://www.excite.com")
group[2][3]=new Option("Lycos","http://www.lycos.com")
var temp=document.doublecombo.stage2
var temp2=document.doublecombo.stage3
function redirect(x){
for (m=temp.options.length-1;m>0;m--)
temp.options[m]=null
for (i=0;i<group[x].length;i++){
temp.options[i]=new Option(group[x][i].text,group[x][i].value)
}
temp.options[0].selected=true
}
function go(){
location=temp.options[temp.selectedIndex].value
}
//-->
</script>
</form><!-- -->
</body>
</html>
Как мне использовать второй Скрипт, имея:
function go(){
location=temp.options[temp.selectedIndex].value
}
чтобы заменить его на функцию из первого Скрипта:
d.innerHTML = "<input readonly style='font-size:50px;color:#000000;background-color:#ffffff;border:none' type=text name=tool value='" + val + "'>";
Я пробовал так:
d.innerHTML = "temp.options[temp.selectedIndex].value"
но так скрипт не работает.
Как правильно будет это сделать??? | |
|
|
|
|
|
|
|
для: Diman
(07.10.2007 в 21:24)
| | Обрамляйте код тегами [сode][сode/] иначе трудно в нем разбираться. innerHTML это свойство элемента, и применяется просто, так как вы и делаете. Но вот в качестве элемента у вас выступает d, который вы определили как объект с id равным id_. Объекта с таким ID у вас я не нашел. Ищите, может в этом и причина. Не записуйте так:
d.innerHTML = "<input readonly style='font-size:50px;color:#000000;background-color:#ffffff;border:none' type=text name=tool value='" + val + "'>";
// пишите просто
d.innerHTML = val;
//а стили - шрифт, цвет фона и другое для элемента определите лучше для его класса.
|
В сети полно готовых скриптов магазинов на РНР, использующих не базу, а файлы. Взяли бы готовый скрипт, если вы практически ни с чем не знакомы. | |
|
|
|
|