Hadd tänkt att ha ett Jaascript intgrerat med asp ..
Det vill säga, när man trycker på en länk så skall det komma en pop-up med information från databasen.. Något man bör tänka på?
Just det ja.. Informationerna kommer att hämtas från flera olika tabeller..
och hadde tänkt mig att använda mig av detta script:
<script>
// PopUp Maker 5.0 by CodeBrain.com
// PopUp Window Script
// Place this script in the <head> of your page.
var doPopUpX = (screen.width/2)-200;
var doPopUpY = (screen.height/2)-200;
var pos = "left="+doPopUpX+",top="+doPopUpY;
function doPopUp(){
doPopUpWindow = window.open("http://xxx.xxx.xxx.xxx/katalog/script.asp?Fråga1=värde1&fråga2=värde2","Album:","width=400,height=400,"+pos);
}
</script>
och Ankar taggen som triggar popupen ser ut så här:
<a href="javascript:doPopUp()">Click Here</a>
Hur får man detta att funka?
Jag förstår att jag måste använda mig av denna typ ungefär:
<script>
// PopUp Maker 5.0 by CodeBrain.com
// PopUp Window Script
// Place this script in the <head> of your page.
var doPopUpX = (screen.width/2)-200;
var doPopUpY = (screen.height/2)-200;
var pos = "left="+doPopUpX+",top="+doPopUpY;
function doPopUp(){
doPopUpWindow = window.open("http://xxx.xxx.xxx.xxx?Fråga1=<%= RS("Värde1") %> %>&fråga2=<%= RS("Värde2")%> ","=<%= RS("Värde1")%> - <%= RS"Värde1") %>","width=400,height=400,"+pos);
}
</script>
Han anänder inte ADODN.RECORDSET
Han använder ju Getrows
Hoppas ni försär vad jag menar..
Hur gör jag för att sätta värdena i URL'en?
om vi säger att man hämtar värdena med strVärde1 osv...
function doPopUp(){
doPopUpWindow = window.open("http://xxx.xxx.xxx.xxx/katalog/script.asp?Artist=värde1&fråga2=värde2","Album:","width=400,height=400,"+pos);
<%
'## -- hämta alla poster --
Function getRecords
Dim m_objConn
Dim m_strConnString
Dim m_strSQL
Dim m_objRS
Dim m_arrRecords
m_strConnString = "provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Server.MapPath("/bypath/totalonanist/bypath.mdb")
'## -- skapa connection object och öppna upp databasen --
Set m_objConn = Server.CreateObject("ADODB.Connection")
m_objConn.Open m_strConnString
'## -- sql-fråga för att hämta alla poster --
'## -- denna ska du ändra så att den stämmer
'## med det som du vill hämta --
m_strSQL = "SELECT * " & _
"FROM Albums " & _
"ORDER BY Artist, AlbumTitle"
'## -- recordset för att hämta alla poster --
Set m_objRS = m_objConn.Execute(m_strSQL)
If Not m_objRS.EOF Then
m_arrRecords = m_objRS.GetRows
getRecords = m_arrRecords
End If
'## -- clean up --
m_objRS.Close
Set m_objRS = Nothing
m_objConn.Close
Set m_objConn = Nothing
End Function
'## -- skriver ut sidnavigeringen --
'## -- skriv ut föregående sida --
Sub PrevPage(ByVal WichPage)
Dim strScriptName
strScriptName = Request.ServerVariables("SCRIPT_NAME")
'## -- skriv ut en länk till föregående sida --
If CInt(WichPage) > 1 Then
Response.Write "<A href='" & strScriptName & "?" & _
"page=" & WichPage - 1 & "'><font face=Verdana Size=1>Previous</font></A> "
Else
Response.Write "<font face=Verdana Size=1>Previous</font> "
End If
End Sub
'## -- skriv ut nästa sida --
Sub NextPage(ByVal HowManyPages, ByVal WichPage)
Dim strScriptName
strScriptName = Request.ServerVariables("SCRIPT_NAME")
'## -- skriv ut en länk till nästa sida --
If CInt(WichPage) < CInt(HowManyPages) Then
Response.Write "<A href='" & strScriptName & "?" & _
"page=" & WichPage + 1 & "'><font face=Verdana Size=1>Next</font></A>"
Else
Response.Write " <font face=Verdana Size=1>Next</font>"
End If
End Sub
'## -- skriv ut sidnummer navigeringen --
Sub PageNumbers(ByVal HowManyPages, WichPage)
Dim strScriptName
Dim I
'## -- kolla om det finns några sidor --
If HowManyPages = 0 Then
Response.Write "0"
Exit Sub
End If
strScriptName = Request.ServerVariables("SCRIPT_NAME")
'## -- skriv ut länkar till sid nummer n.
'## Den sida som visas ska ej vara länkad --
For I = 1 To HowManyPages
If CInt(I) <> CInt(WichPage) Then
Response.Write "<A href='" & strScriptName & "?" & _
"page=" & I & "'><font face=Verdana Size=1>" & I & "</font></A> "
Else
Response.Write "<font face=Verdana Size=1><B>" & I & "</font></B> "
End If
Next
End Sub
'## -- vilken post ska pagingen börja på --
Function getStartID(ByVal PageSize, ByVal ViewPage) ' As Integer
Dim m_intStart
m_intStart = ((PageSize * ViewPage) - PageSize)
getStartID = m_intStart
End Function
'## -------------------------------------------------------------
'## -- räkna ut hur många sidor som ska visas --
'## -- updated: July 14, 2001
'## -- update by: Patrik Berggren, mrwize@mrwize.nu
'## -------------------------------------------------------------
'##
'## -- vid vissa tillfällen returnerades fel sidantal.
'## Felet/Buggen berodde på avrundningen med CInt()
'## och CLng().
'## -- Avrundningen som jag gjorde:
'##
'## m_intTotalPages = CInt((HowManyRecords / PageSize) + 0.5)
'##
'## vart i vissa fall fel och sid antalet vart fler än
'## vad det egentligen skulle vara.
'## Lösningen, hoppas jag, är att kolla hur stor resten
'## blir vid avrundning.
'## Om resten är större än 0 eller mindre än 0.5 så ska en sida
'## läggas till.
'## I annat fall så gäller avrundningen.
'## Har testat flera olika kombinationer med olika records antal
'## och sidstorlekar och ej hittat några buggar.
'## Så nu hoppas jag att denna paging är buggfri *ler*
'## -------------------------------------------------------------
Function countPages(ByVal HowManyRecords, ByVal PageSize)
Dim m_intTotalPages, m_intRest
m_intTotalPages = HowManyRecords / PageSize
If m_intTotalPages < 1 Then
m_intTotalPages = 1
Else
m_intRest = m_intTotalPages - CLng(m_intTotalPages)
If m_intRest > 0 AND m_intRest < 0.5 Then
m_intTotalPages = CLng(m_intTotalPages) + 1
Else
m_intTotalPages = CLng(m_intTotalPages)
End If
End If
'## -- return how many pages --
countPages = m_intTotalPages
End Function
'##***********************************************************************************
Dim arrRecords
Dim intPageSize
Dim intPage
Dim intStartID
Dim I
Dim intId
Dim strNamn
Dim dteDatum
Dim intTotalPages
Dim intTotalRecords
'## -- vilken sida ska visas --
intPage = Request.QueryString("page")
If intPage = "" Then intPage = 1
'## -- hur många poster ska visas per sida --
intPageSize = 25
'## -- hämta alla records, hämtas med metoden getrows och returneras
'## som en array. --
arrRecords = getRecords
'## -- vilken post är den första --
intStartID = getStartID(intPageSize, intPage)
'## -- printa ut sidan som ska visas
'## alla poster finns i arrayen arrRecords som
'## kommer från funktionen getRecords --
If IsArray(arrRecords) Then
'Response.Write "E ju en array<BR>"
'## -- hur många records finns det totalt --
intTotalRecords = UBound(arrRecords,2) + 1
'## -- hur många sidor finns det i recordsetet --
intTotalPages = countPages(intTotalRecords, intPageSize)
For I = intStartID To ((intStartID + intPageSize) -1)
intId = arrRecords(0,I)
strkommando1 = arrRecords(1,I)
strkommando2 = arrRecords(2,I)
strkommando3 = arrRecords(3,I)
strKommando4 = arrRecords(4,I)
strKommando5 = arrRecords(5,I)
%>
<html>
<head><title> Titel....</title><LINK REL=STYLESHEET HREF="bypath.css" TYPE="text/css"><script>
// PopUp Maker 5.0 by CodeBrain.com
// PopUp Window Script
// Place this script in the <head> of your page.
var doPopUpX = (screen.width/2)-200;
var doPopUpY = (screen.height/2)-200;
var pos = "left="+doPopUpX+",top="+doPopUpY;
function doPopUp(){
doPopUpWindow = window.open("http://xxx.xxx.xxx.xxx/katalog/script.asp?Fråga1=värde1&fråga2=värde2","Album:","width=400,height=400,"+pos);
}
</script>
</head>
<body background="../images/bg_color.gif" bgcolor="#FFFFFF">
<center>
<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse; border-left-width:0; border-right-width:0" bordercolor="#111111" width="100%" id="AutoNumber1" height="114">
<tr>
<td width="100%" height="55" bgcolor="#FFFFFF" style="border-left-color: #111111; border-left-width: 1; border-right-color: #111111; border-right-width: 1">
<p align="center">
<img border="0" src="../images/bypath-logo.gif" width="395" height="55"></td>
</tr>
<tr>
<td width="100%" height="1" style="border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-top-style: solid; border-top-width: 1; border-bottom-style: solid; border-bottom-width: 1">
<!-- #include file="menu.inc" -->
</tr>
<tr>
<td width="100%" bgcolor="#FFFFFF" height="38" style="border-left-color: #111111; border-left-width: 1; border-right-color: #111111; border-right-width: 1">
<table width="100%"><tr><td width="23%"><font face="Verdana" Size="1"><b>hmm1</b></font></td><td width="28%"><font face="Verdana" Size="1"><b>hmmm2</b></font></td><td width="19%"><font face="Verdana" Size="1"><b>hmmm3</b></font></td><td width="14%"><font face="Verdana" Size="1"><b>hmmm4</b></font></td><td width="16%"><font face="Verdana" Size="1"><b>hmm5</b></font></td></tr></table>
<% Response.Write " <table width='100%'><tr><td width='23%'><font face='Verdana' Size='1'>" & strkommando1 & "</font></td><td width='28%'><font face='Verdana' Size='1'>" & strkommando2& "</font></td><td width='19%'><font face='Verdana' Size='1'>" & strkommando3& "</font></td><td width='14%'><font face='Verdana' Size='1'>" & strkommando4 & "</font></td><td width='16%'><font face='Verdana' Size='1'>" & strkommando5 & "</font></td></tr></table>"
%>
<%
If I = UBound(arrRecords,2) Then Exit For
Next
Else
'## -- inga poster fanns i db --
intPage = 0
intTotalRecords = 0
intTotalPages = 0
'## -- skriv ut att inga poster hittades --
Response.Write "<P>No records found.</P>"
End If
'## -- skriv ut sidnavigerings menyn --
Call PrevPage(intPage)
Call PageNumbers(intTotalPages,intPage)
Call NextPage(intTotalPages,intPage)
%>
</td>
</tr>
<tr>
<td width="100%" height="4" style="border-left:medium none #111111; border-right:medium none #111111; border-top-style:solid; border-top-width:1; border-bottom-style:solid; border-bottom-width:1">
<p align="center">Admin</td>
</tr>
<tr>
<td width="100%" bgcolor="#FFFFFF" height="12" style="border-left-color: #111111; border-left-width: 1; border-right-color: #111111; border-right-width: 1"><b><font face="Verdana" size="1">Bypath -
indirect or retired path, less important or less direct path.</font></b></td>
</tr>
</table></center>
</body>
</html>
<!-- hide me from old browsers
function openAndCenterWindow
var the_window
{
window.open('the_url','the_window','height=400,width=400');
var window_width = 400;
var screen_height = window.screen.availHeight;
var screen_width = window.screen.availWidth;
var left_point = parseInt(screen_width / 2) - parseInt(window_width / 2);
var top_point = window.screen.height - window.screen.height;
the_window.moveTo(left_point, top_point);
}
// show me -->