Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / VBS, передать выбранное значение из Select в хранимую процедуру в качестве параметра / 16 сообщений из 16, страница 1 из 1
02.04.2014, 23:41
    #38603621
Sergiy52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBS, передать выбранное значение из Select в хранимую процедуру в качестве параметра
Прошу помощи!
Задача: В первом фрейме выбрано значение strR, не получается передать его во второй фрейм!
Второй фрейм использует хранимку с параметром, значение которого является выбранное из Select первого фрейма:

Код второго фрейма:
<% @ Language=VBScript %>
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=windows-1251">
<TITLE>Razdel</TITLE>
<hr><font face="Times New Roman"></TD>
</HEAD>
<bgcolor="#808000">
<BODY>
<b><font color=#993300></p>Poisk2.html</font>
</bgcolor="#808000">
<%
Response.Expires = 0
Response.AddHeader "pragma", "no-cache"
%>
<%
Set Conn = Server.CreateObject("ADODB.Connection")
' Строка открытия сессии использует нашу глобальную переменную, объявленную
'в файле GLOBAL.ASA (Шаг 2)
Conn.ConnectionTimeout = 15
Conn.CommandTimeout = 30
Conn.Open Session("DBConnectionString")
Set sp = Server.CreateObject("ADODB.Command")
sp.CommandType =1 ' adCmdStoredProc 'adCmdStoredProc '1
Set RS = Server.CreateObject ("ADODB.Recordset")
sp.CommandText = "prRazdel"
Set sp.ActiveConnection = Conn
sp.CommandTimeout = 200
sp.Parameters.Refresh
sp.Parameters("@ParRazdel").Value = strR 'strR '= @Razdel
sp.Execute , , -1
RS.Open cmd
Do While Not RS.EOF %>

<TABLE BORDER=3 BGCOLOR=#ffffff CELLSPACING=0><FONT FACE="Arial" COLOR=#000000><CAPTION></CAPTION></FONT>
<TD Width = 10 ALIGN=LEFT>
<FONT SIZE=+1 face="Times New Roman">
<%= RS("AuthorName") %>
</FONT></TD>

<TD Width = 25 ALIGN=center>
<FONT SIZE=+1 face="Times New Roman">
<%= RS("I") %>
</FONT></TD>


<TD Width = 25 ALIGN=center>
<FONT SIZE=+1 face="Times New Roman">
<%= RS("O") %>
</FONT></TD>

<TD Width = 350 ALIGN=LEFT>
<FONT SIZE=+1 face="Times New Roman">
<%= RS("Journal") %>
</FONT></TD>
<% RS.MoveNext
Loop %>
</TR>
</table>
</BODY>
</HTML>
...
Рейтинг: 0 / 0
03.04.2014, 20:20
    #38604813
user89
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBS, передать выбранное значение из Select в хранимую процедуру в качестве параметра
Sergiy52,

index.htm
Код: html
1.
2.
3.
4.
5.
6.
<html>
<frameset rows='95,*'>
<frame name='MyParams' src='MyParams.htm'>
<frame name='Work' src='Work.htm'>
</frameset>
</html>

MyParams.htm
Код: html
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.
29.
30.
31.
32.
<html>
<body bgcolor=#f2f8ff style="font:10pt sans-serif">
<b>Это фрейм с параметрами</b>
<br><br>
Выберите значение:<br>
<form name="form1" style="float:left;">
<select name="select1" size=1 >
	<option value="a0" selected>-- Не выбрано --</option>
	<option value="a1">Деревня укрылась средь жутких лесов,</option>
	<option value="a2">Туда совершенно случайно попал</option>
	<option value="a3">Один покупатель старинных часов,</option>
	<option value="a4">Он их для музея повсюду искал.</option>
</select></form>
&#160;<button onclick="SendValue()">Передать</button>
</body>

<script LANGUAGE="VBScript">
dim strR
Sub SendValue()
	MyVal = document.form1.Select1.value
	if MyVal = "a0" then
		MsgBox "Не выбрано значение", 16, "Ошибка"
		exit sub
	end if
	MyText = document.Form1.Select1.options(document.Form1.Select1.selectedIndex).text

	set fw = Parent.frames("Work").document
	fw.getElementById("SomeValue").value = MyVal
	fw.getElementById("SomeText").value = MyText
End sub
</script>
</html>

Work.htm
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
<html>
<body style="font:10pt sans-serif">
<b>В этот фрейм будут передаваться параметры из верхнего фрейма</b>
<br><br>
Значение Value из Select
<input name="SomeValue" id="SomeValue" size=5 value=""></input>
<br><br>
Значение Text из Select &#160;
<input name="SomeText" id="SomeText" size=45 value=""></input>
</body>
</html>

...
Рейтинг: 0 / 0
03.04.2014, 23:06
    #38604919
Sergiy52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBS, передать выбранное значение из Select в хранимую процедуру в качестве параметра
Огромное спасибо за участие!
Буду изучать.
P.S.Не пойму - как открыть приложенный файл? "К сообщению приложен файл. Размер - 15Kb "
...
Рейтинг: 0 / 0
04.04.2014, 07:56
    #38605037
Sergiy52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBS, передать выбранное значение из Select в хранимую процедуру в качестве параметра
Не получается передать в "Select1" значения из хранимки "prRazdelPodst" !!!

<html>
<body bgcolor=#f2f8ff style="font:10pt sans-serif">
<b>Это фрейм с параметрами</b>
<br><br>
Выберите значение:<br>
<%
Set Conn = Server.CreateObject("ADODB.Connection")
' Строка открытия сессии использует нашу глобальную переменную, объявленную
'в файле GLOBAL.ASA (Шаг 2)
Conn.ConnectionTimeout = 15
Conn.CommandTimeout = 30
Conn.Open Session("DBConnectionString")
Set cmd = Server.CreateObject("ADODB.Command")
cmd.CommandType =1
Set RS = Server.CreateObject ("ADODB.Recordset")
cmd.CommandText = "prRazdelPodst"
Set cmd.ActiveConnection = Conn
RS.Open cmd %>

<form name="form1" style="float:left;">
<select name="select1" size=1 >
<option value="a0" selected>-- Не выбрано --</option>
<% Do While Not RS.EOF %>
<option value ><% =RS("RazdelPodst")%></option>
<% RS.MoveNext
Loop%>

</select></form>
 <button onclick="SendValue()">Передать</button>
</body>

<script LANGUAGE="VBScript">
dim strR
Sub SendValue()
MyVal = document.form1.Select1.value
if MyVal = "a0" then
MsgBox "Не выбрано значение", 16, "Ошибка"
exit sub
end if
MyText = document.Form1.Select1.options(document.Form1.Select1.selectedIndex).text

set fw = Parent.frames("Work").document
fw.getElementById("SomeValue").value = MyVal
fw.getElementById("SomeText").value = MyText
End sub
</script>
</html>
...
Рейтинг: 0 / 0
04.04.2014, 09:22
    #38605086
user89
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBS, передать выбранное значение из Select в хранимую процедуру в качестве параметра
Sergiy52P.S.Не пойму - как открыть приложенный файл? "К сообщению приложен файл. Размер - 15Kb " Это картинка, демонстрирующая результат. Она должна отображаться напрямую, сразу за текстом сообщения. Также её можно увидеть по прямой ссылке http://www.sql.ru/forum/actualfile.aspx?id=15829586


Sergiy52Не получается передать в "Select1" значения из хранимки "prRazdelPodst" !!! 1. Ваша система какую-нибудь ошибку выдает?
2. А поле точно называется RazdelPodst ?
3. Данные возвращаются? Можно проверить RS.RecordCount
4. На всякий случай, после RS.Open сделайте RS.MoveFirst
5. Мой вариант ( index.htm, MyParams.htm, Work.htm ) нормально отрабатывает?
...
Рейтинг: 0 / 0
04.04.2014, 11:17
    #38605197
Sergiy52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBS, передать выбранное значение из Select в хранимую процедуру в качестве параметра
Ваши файлы работают прекрасно!
Но если удалить любую из этих строк:
<option value="a1">Деревня укрылась средь жутких лесов,</option>
<option value="a2">Туда совершенно случайно попал</option>
<option value="a3">Один покупатель старинных часов,</option>
<option value="a4">Он их для музея повсюду искал.</option>
то в поле "Выберите значение" появляются вместо текста прямоугольнички.
...
Рейтинг: 0 / 0
04.04.2014, 12:09
    #38605266
user89
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBS, передать выбранное значение из Select в хранимую процедуру в качестве параметра
Sergiy52,

тогда, наверное кодировка. Надо попробовать открыть Web-страницу или в Windows-1251 или в Юникод UTF-8
...
Рейтинг: 0 / 0
04.04.2014, 13:34
    #38605441
Sergiy52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBS, передать выбранное значение из Select в хранимую процедуру в качестве параметра
user89,
после вставки строки есть прогресс: прямоугольники исчезли, но в поле выбрать значение осталась только одна строка "--не выбрано--"
<html>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=windows-1251">
<body bgcolor=#f2f8ff style="font:10pt sans-serif">
<b>Это фрейм с параметрами</b>
<br><br>
Выберите значение:<br>
<%
Set Conn = Server.CreateObject("ADODB.Connection")
' Строка открытия сессии использует нашу глобальную переменную, объявленную
'в файле GLOBAL.ASA (Шаг 2)
Conn.ConnectionTimeout = 15
Conn.CommandTimeout = 30
Conn.Open Session("DBConnectionString")
Set cmd = Server.CreateObject("ADODB.Command")
cmd.CommandType =1 ' adCmdStoredProc 'adCmdStoredProc '1
Set RS = Server.CreateObject ("ADODB.Recordset")
cmd.CommandText = "prRazdelPodst" 'prAuthorID300 'prRazdelPodst AuthorName
Set cmd.ActiveConnection = Conn
RS.Open cmd
'RS.RecordCount
%>

<form name="form1" style="float:left;">
<select name="select1" size=1 >
<option value="a0" selected>-- Не выбрано --</option>
<% Do While Not RS.EOF %>
<option value ><% =RS("RazdelPodst")%></option>
<% RS.MoveNext
Loop%>
</select></form>
 <button onclick="SendValue()">Передать</button>

</body>

<script LANGUAGE="VBScript">
dim strR
Sub SendValue()
MyVal = document.form1.Select1.value
if MyVal = "a0" then
MsgBox "Не выбрано значение", 16, "Ошибка"
exit sub
end if
MyText = document.Form1.Select1.options(document.Form1.Select1.selectedIndex).text

set fw = Parent.frames("Work").document
fw.getElementById("SomeValue").value = MyVal
fw.getElementById("SomeText").value = MyText
End sub
</script>
</html>
...
Рейтинг: 0 / 0
04.04.2014, 15:08
    #38605576
Sergiy52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBS, передать выбранное значение из Select в хранимую процедуру в качестве параметра
user89,
что-то совсем не пойму: в "MyParams.htm" вставил строку
<%Response.Write "My First Program"%>
- в браузере ее не видно, т.е. конструкция <% ......%> не работает?


<html>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=windows-1251">
<body bgcolor=#f2f8ff style="font:10pt sans-serif">
<b>Это фрейм с параметрами</b>
<br><br>
Выберите значение:<br>
<%Response.Write "My First Program"%>
<%
Set Conn = Server.CreateObject("ADODB.Connection")
' Строка открытия сессии использует нашу глобальную переменную, объявленную
'в файле GLOBAL.ASA (Шаг 2)
Conn.ConnectionTimeout = 15
Conn.CommandTimeout = 30
Conn.Open Session("DBConnectionString")
Set cmd = Server.CreateObject("ADODB.Command")
cmd.CommandType =1 ' adCmdStoredProc 'adCmdStoredProc '1
Set RS = Server.CreateObject ("ADODB.Recordset")
cmd.CommandText = "prRazdelPodst" 'prAuthorID300 'prRazdelPodst AuthorName
Set cmd.ActiveConnection = Conn
RS.Open cmd
'RS.RecordCount
MsgBox RS.Fields("RazdelPodst").Value
%>
<SCRIPT LANGUAGE="VBScript">
MsgBox RS.Fields("RazdelPodst").Value

</SCRIPT LANGUAGE="VBScript">
<form name="form1" style="float:left;">

<select name="select1" size=1 >
<option value="a0" selected>-- Не выбрано --</option>
<% Do While Not RS.EOF
MsgBox RS.Fields("RazdelPodst").Value
%>
<option value ><% =RS("RazdelPodst")%></option>
<% RS.MoveNext
Loop%>
</select></form>
 <button onclick="SendValue()">Передать</button>

</body>

<script LANGUAGE="VBScript">

Sub SendValue()
MyVal = document.form1.Select1.value
if MyVal = "a0" then
MsgBox "Не выбрано значение", 16, "Ошибка"
exit sub
end if
MyText = document.Form1.Select1.options(document.Form1.Select1.selectedIndex).text

set fw = Parent.frames("Work").document
fw.getElementById("SomeValue").value = MyVal
fw.getElementById("SomeText").value = MyText
End sub
</script>
</html>
...
Рейтинг: 0 / 0
04.04.2014, 15:46
    #38605617
Sergiy52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBS, передать выбранное значение из Select в хранимую процедуру в качестве параметра
user89,
переименовал "MyParams.htm" в "MyParams.asp". Сработало.
...
Рейтинг: 0 / 0
04.04.2014, 19:00
    #38605793
Sergiy52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBS, передать выбранное значение из Select в хранимую процедуру в качестве параметра
user89,
данные не считываются в фрейм work.asp.
Вы не могли бы быть столь любезны и посмотреть форму Access (attached), которую я пытаюсь перевести в ASP ?
...
Рейтинг: 0 / 0
04.04.2014, 19:59
    #38605827
user89
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBS, передать выбранное значение из Select в хранимую процедуру в качестве параметра
Sergiy52,

архив распаковал, но двоичный файл .ADP не знаю чем открыть :(
Возможно Access, но я его почти не знаю (да и не установлен он у меня), а с ASP - вообще не работал.
Может создать новую тему в профильном форуме? http://www.sql.ru/forum/asp-net
...
Рейтинг: 0 / 0
04.04.2014, 20:05
    #38605832
user89
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBS, передать выбранное значение из Select в хранимую процедуру в качестве параметра
Sergiy52,

архив распаковал, но двоичный файл .ADP не знаю чем открыть :(
Возможно Access, но я его почти не знаю (да и не установлен он у меня), а с ASP - вообще не работал.
Может создать новую тему в профильном форуме? http://www.sql.ru/forum/asp-net
Только код лучше оформлять тегами [SRC ] [ /SRC], а то могут и не понять...
...
Рейтинг: 0 / 0
04.04.2014, 21:30
    #38605871
Sergiy52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBS, передать выбранное значение из Select в хранимую процедуру в качестве параметра
user89,
хотелось бы минимум сложностей, т.е. самый простой вариант для WEB-страницы, без всяких ASP.NEt, требующих огромный VisualStudio;

Задача: из фрейма MyParams получить значение, например, "Сердце" и передать в фрейм Work (напоминающий одиночную форму), в котором должнен отразиться Recordset c 20 журнальными статьями по теме "Сердце". Каждая статья имеет поля Автор, Год издания, Журнал, название статьи и т.д. Эти данные выбираются из хранимки "prRazdel", которая вызывается с параметром "parRazdel" - например, parRazdel="Сердце".

Может, сделать специальную страницу "Razdel" и переходить к ней после выбора значения из Select1?
...
Рейтинг: 0 / 0
04.04.2014, 21:50
    #38605880
Sergiy52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBS, передать выбранное значение из Select в хранимую процедуру в качестве параметра
user89,
например, страница на сайте https://sites.google.com/site/nechaevsite/creativity
...
Рейтинг: 0 / 0
05.04.2014, 13:21
    #38606063
Sergiy52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBS, передать выбранное значение из Select в хранимую процедуру в качестве параметра
user89,
утренний 5 апреля 2014 код файла Work.asp

<%@ Language=VBScript %>
<html>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=windows-1251">

<body style="font:10pt sans-serif">

<b>В этот фрейм будут передаваться параметры из верхнего фрейма. <%Response.Write "My First Program."%> </b>
<br><br>
Значение Value из Select
<input name="SomeValue" id="SomeValue" size=5 value=""></input>
<br><br>
Значение Text из Select  
<input name="SomeText" id="SomeText" size=45 value=""></input>

<%
Set Conn = Server.CreateObject("ADODB.Connection")
' Строка открытия сессии использует нашу глобальную переменную, объявленную
'в файле GLOBAL.ASA (Шаг 2)
Conn.ConnectionTimeout = 15
Conn.CommandTimeout = 30
Conn.Open Session("DBConnectionString")
'dim strR
'strR=fw.Myval
Set sp = Server.CreateObject("ADODB.Command")
sp.CommandType =1 ' adCmdStoredProc 'adCmdStoredProc '1
Set RS = Server.CreateObject ("ADODB.Recordset")

sp.CommandText = "prAuthorID300" ' "prRazdel" 'prAuthorID300 prRazdelPodst
Set sp.ActiveConnection = Conn
sp.CommandTimeout = 200
' sp.Parameters.Refresh
'sp.Parameters("@ParRazdel").Value = strR Вместо strR нужно подставить выбранный в MyParams.asp Значение Text из 'select например "КФДА"
sp.Execute , , -1
RS.Open sp
Do While Not RS.EOF %>
<TABLE BORDER=3 BGCOLOR=#ffffff CELLSPACING=0><FONT FACE="Arial" COLOR=#000000><CAPTION></CAPTION></FONT>
<TD Width = 10 ALIGN=LEFT>
<FONT SIZE=+1 face="Times New Roman">
<%= RS("AuthorName") %>
</FONT></TD>

<TD Width = 25 ALIGN=center>
<FONT SIZE=+1 face="Times New Roman">
<%= RS("I") %>
</FONT></TD>


<TD Width = 25 ALIGN=center>
<FONT SIZE=+1 face="Times New Roman">
<%= RS("O") %>
</FONT></TD>

<TD Width = 350 ALIGN=LEFT>
<FONT SIZE=+1 face="Times New Roman">
<%= RS("Journal") %>
</FONT></TD>
<% RS.MoveNext
Loop %>
</TR>
</table>
</body>
</html>
В прикрепленном файле - как выглядит сейчас Work.asp
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / VBS, передать выбранное значение из Select в хранимую процедуру в качестве параметра / 16 сообщений из 16, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]