webForumDet fria alternativet

Anropa en sub?

11 svar · 296 visningar · startad av Poppe25

Poppe25Medlem sedan apr. 2002255 inlägg
#1

Har laddat ner ett Poll-script från forum, men lyckas inte anropa det.

Till main inkuderar man en sida som innehåller en sub -

           Sub ThePoll(SelectPoll)
                   ' databasuppkoppling,     
                   ' utskrift i tabeller 
           End Sub

Någon som vet hur och var jag ska anropa ThePoll?

Har testat lite olika varianter, men inget funkar.

OlleBoopMedlem sedan feb. 20001 861 inlägg
#2

Generellt anropar du en Sub med Call Namnpåsub(argument)
Vad är SelectPoll? Namn på pollen?

Poppe25Medlem sedan apr. 2002255 inlägg
#3

SelectPoll är namnet som ligger i en tabell, ex "Huvudsida.asp". Fråga mig inte varför den heter " .asp ", det står bara så. Men var gör man anropet i koden ngnstans då? Är suben samma som en funktion?

Poppe25Medlem sedan apr. 2002255 inlägg
#4

När jag skriver följande kod:

<BODY>
<% Call ThePoll("Huvudsida.asp")%>
</BODY>

får jag följande felmeddelande:

Microsoft VBScript runtime (0x800A000D)
Type mismatch: 'ThePoll'
/poll/Main.asp, line 9

@ndersMedlem sedan juni 200032 969 inlägg
#5

Utan kod kan vi inte hjälpa dig.

Poppe25Medlem sedan apr. 2002255 inlägg
#6

Anropet:

<%@ Language=VBScript %>
<!--include file ="Poll/Poll.asp"-->
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
</HEAD>
<BODY>

<%
Call ThePoll("Huvudsida.asp")
%>

</BODY>
</HTML>

Poll.asp:

<%@ Language=VBScript %>
<!--include file ="Poll/Poll.asp"-->
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
</HEAD>
<BODY>

<%
Call ThePoll("Huvudsida.asp")
%>

</BODY>
</HTML>

Poppe25Medlem sedan apr. 2002255 inlägg
#7

Ursäkta, blev fel. Här kommer Poll.asp...vore mtk tacksam för hjälp.

<%
Sub ThePoll(SelectPoll)

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DSN=DSNpoll"
SQLPollID = "Select ID, Namn, Question From Poll Where Namn = '"& SelectPoll &"' "
Set RSPollID = Conn.Execute(SQLPollID)

SQLQuestions = "Select Question, ID From Questions Where PollID = "& RSPollID("ID") &" Order By ID Asc"
Set RSQuestions = Conn.Execute(SQLQuestions)
%>
<table Border="0" CellSpacing="1" CellPadding="0" BgColor="Black">
<tr>
<td>
<table Border="0" CellSpacing="0" CellPadding="2">
<tr>
<td ColSpan="2" Align="Center" Background="Bilder/Overline.gif">
<font face="Tahoma" Size="-1" Color="Yellow"><b>
<%= RSPollID("Question")%>
</b></font>
</td>
</tr>

\<% 
cLoop = 0
Do While Not RSQuestions.EOF
cLoop = cLoop + 1
%\>

\<tr BgColor="White"\>
	\<td\>
		\<a href="javascript:SelectOne(\<%= RSQuestions("ID")%\>)" OnFocus="blur();"\>\<img Border="0" Src="Bilder/Button.jpg" Name="Bild\_\<%= RSQuestions("ID")%\>" WIDTH="20" HEIGHT="20"\>\</a\>
	\</td\>
	
	\<td\>
		\<font face="Tahoma" Size="-2" Color="Black"\>
			\<%= RSQuestions("Question")%\>
		\</font\>
	\</td\>
\</tr\>

\<% 
RSQuestions.MoveNext
Loop
%\>	

\<% If InStr(Request.ServerVariables("HTTP_USER_AGENT"), "MSIE") Then %\>
	\<tr BgColor="White"\>
		\<td Valign="Bottom" Align="Left"\>
			\<a href="#" OnClick="javascript:window.open('../Poll/Resultat.asp?PollID=\<%= RSPollID("ID")%\>','Resultat','scrolling=no,resizable=yes,width=300,height=300')"\>\<img Src="Bilder/Resultat.Jpg" Border="0" WIDTH="50" HEIGHT="14"\>\</a\>\</td\>
		
		\<td Align="Right" Valign="Bottom"\>
			\<a href="javascript:SubmitWindow()"\>\<img Src="Bilder/Vote.Jpg" Border="0" WIDTH="45" HEIGHT="14"\>\</a\>\</td\>
	\</tr\>		
\<% Else %\>
	\<tr BgColor="White"\>
		\<td Valign="Bottom" Align="Left"\>
			\<a href="#" OnClick="javascript:window.open('../Poll/Resultat.asp?PollID=\<%= RSPollID("ID")%\>','Resultat','scrolling=no,resizable=yes,width=300,height=300')"\>\<img Src="Bilder/Resultat.Jpg" Border="0" WIDTH="50" HEIGHT="14"\>\</a\>\</td\>
		
		\<td Align="Right" Valign="Bottom"\>
			\<a href="#" OnClick="SubmitWindow()"\>\<img Src="Bilder/Vote.Jpg" Border="0" WIDTH="45" HEIGHT="14"\>\</a\>\</td\>
	\</tr\>		
\<% End If %\>

</table>
</td>
</tr>
</table>

<script Language="Javascript">
var SelectedOne;
var Submitted = false;

function SelectOne(Which)
{
if(SelectedOne != null)
{
ThePic = "Bild_" + SelectedOne
document.images[ThePic].src = '../Poll/Bilder/Button.jpg';
}
SelectedOne = Which;

ThePic = "Bild\_" + Which;
document.images\[ThePic\].src = '../Poll/Bilder/Button_1.jpg';

}

function SubmitWindow()
{
if(Submitted != true && SelectedOne != null)
{
TheLink = "../Poll/Poll_Vote.asp?QuestionID=" + SelectedOne;
window.open(TheLink, 'Poll', 'scrollbars=no,resizable=no,width=200,height=100');
Submitted = true;
}
else
{
if(Submitted == true)
alert("Du kan bara rösta en gång!");
else
alert("Du måste göra ett val innan du kan rösta!");
}

}
</script>

<%
Set RSPollID = Nothing
Set RSQuestions = Nothing
Conn.Close
Set Conn = Nothing

End Sub
%>

@ndersMedlem sedan juni 200032 969 inlägg
#8

Vilken är rad 9?

Poppe25Medlem sedan apr. 2002255 inlägg
#9

Raden som felmeddelandet gäller är i anropet:

Call ThePoll("Huvudsida.asp")

(Numera rad 10, råkat ändra lite...)

@ndersMedlem sedan juni 200032 969 inlägg
#10

Du har glömt ett # i ditt include-direktiv på den sidan. Det är inte helt omöjligt att det är det som strular till det. :)

<!--[b]#[/b]include file ="Poll/Poll.asp"-->

Mvh,

Poppe25Medlem sedan apr. 2002255 inlägg
#11

TAAACK!!!! Jättetack...det är så man kan bli galen, men det är helt underbart att kunna låta ngn annan titta på sin kod....

John mMedlem sedan nov. 200448 inlägg
#12

Var i koden, eller var är koden som skriver in resultatet av ens röst i databasen? :q Har lite problem med den här koden.

133 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)