Segjum sem svo að þú sért með töflu(frettir) í gagnagrunninum(sidugrunnur) sem geymir fréttirnar á honum er notandanafnið admin og lykilorðið pass.
Í töflunni frettir eru 4 dálkar(erum ekkert að flækja þetta) id, titill, dagsetning, frett.
Ég ætla ekki að vera með neina fimleika heldur bara einfaldleikann uppmálaðann, kannski á kostnað hraða.
Þú býrð til DNS tengingu, sem vísar í grunninn sidugrunnur, og kallar hana frettirdns.
Búðu til þrjár skrár inc.asp og lesafrettir.asp og settu eftirfarandi kóða inní þær.
== inc.asp Byrjar ==
<%
' Opnar tengungu við gagnagrunninn, keyrir sql setninguna og skilar recordset
public function SmidaRs(strsql)
dim oconn,ocmd,ors
set oconn = server.CreateObject("adodb.connection")
set ocmd = server.CreateObject("adodb.command")
set ors = server.CreateObject("adodb.recordset")
oconn.Open "DSN=frettirdns;UID=admin;PWD=pass;"
ocmd.ActiveConnection = oconn
ocmd.CommandText = strsql
set ors = ocmd.Execute
set MakeRs = ors
end function
' Slítur sambandinu við gagnagrunn og tæmir breytur
public function LokaTengingu()
set ocmd = nothing
set oconn = nothing
end function
%>
== inc.asp Endar ==
== lesafrettir.asp Byrjar ==
<!– #include file="inc.asp" –>
<%
Dim strsql, rs
' Sql setningin sem á að nota er lesinn inn í breytu
strsql = "select * from frettir order by dags desc"
' Og svo SmidaRs látin keyra breytuna strsql
set rs = SmidaRs(strsql)
response.write "<table width=""400"">"
' Loopa þangað til EndOfRecordset
do while not rs.eof
response.write "<tr><td><b>" & rs("titill") & "</b></td><td align=""right"">" & rs("dagsetning") & "</td></tr>"
response.write "<tr><td colspan=""2"">" & left(rs("frett"), 200) & "<br>"
response.write "<a href=""ollfrettin.asp?id=" & rs("id") & """>Lesa alla fréttina</a>"
response.write "</td></tr>"
loop
' Kallar á fallið LokaTengingu
LokaTengingu
response.write "</table>"
%>
== lesafrettir.asp Endar ==
== ollfrettin.asp Byrjar ==
<!– #include file="inc.asp" –>
<%
Dim strsql, rs, numId
' Les breytuna id inn í numId og cInt sér um að breytan sé númer
numId = cInt(request("id"))
' Ef numId hefur gildi sem er stærra en 0 þá höldum við áfram í að lesa upp úr grunninum
if (numId > 0) then
' Sql setningin sem á að nota er lesinn inn í breytu
strsql = "select * from frettir where id = " & numId & " order by dags desc"
' Og svo SmidaRs látin keyra breytuna strsql
set rs = SmidaRs(strsql)
response.write "<table width=""400"">"
' Ef recordsettið skilar okkur engu þá er engin frétt með sama id og numId og þá skrifum við villuskilaboð
If (rs.EOF) Then
Response.Write "Engin frétt fannst með þessu númeri."
' annars skrifum við fréttina út
else
response.write "<tr><td><b>" & rs("titill") & "</b></td><td align=""right"">" & rs("dagsetning") & "</td></tr>"
response.write "<tr><td colspan=""2"">" & rs("frett") & "<br><br>"
response.write "<a href=""javascirpt:history.back(-1);"">Til baka</a>"
response.write "</td></tr>"
end if
' Kallar á fallið LokaTengingu
LokaTengingu
response.write "</table>"
' Ef numId hefur ekki gildi sem er stærra en 0 þá skrifum við villuskilaboð.
else
response.write "Þú verður að gefa upp númer þeirrar fréttar sem þú ætlar að skoða!"
end if
%>
== ollfrettin.asp Endar ==
P.s. Það getur verið að einhverjar villur séu til staðar en þá verður bara að hafa það því þetta er soðið saman á 10mín.