webForumDet fria alternativet

Admin sida

ASP

23 svar · 543 visningar · startad av jwradhe

Medlem sedan juni 2002711 inlägg
Frågan#1

hur gör man en admin sida till en gb????

jag vill veta hur jag ska göra för att kunna svara på inlägg och ta bort oönskade inlägg.

nån som vet hur man gör just det..?

Medlem sedan mars 20016 260 inlägg
#2

ja?
vad är det du behöver veta?
börja göra en sida som har lösenordskydd...
fortsätt med att göra en kopia av gästboken, fast med möjligheten att kunna radera och svara.. dvs två knappar där du hämtar ID:et på på gästboksinlägget..
du kanske får lägga till ett till fält i databasen som heter nånting liknande SvarID..

vet inte exakt vad du är ute efter men men

Medlem sedan sep. 2002538 inlägg
#3

Skrev ihop ett script åt dig som tar bort inlägg..

Delete.asp

<!-- #include file="adovbs.inc" -->
<%	Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath ("db.mdb")

	Set RecSet = Server.CreateObject("ADODB.Recordset")
   Radera = "SELECT * FROM tblGastbok WHERE ID = " & Request.QueryString("id_nr") & " "

   RecSet.Open Radera, Connect, adOpenStatic, adLockOptimistic 

   RecSet.Delete

	RecSet.Close
	Connect.Close
	Set RecSet = nothing
	Set Connect = nothing 
	%>
Posten är nu borttagen...

Admin.asp

<!-- #include file="adovbs.inc" -->
<%

Set Connect = Server.CreateObject("ADODB.Connection") 
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("db.mdb")&";"

Set RecSet = Server.CreateObject("ADODB.Recordset")
Visa = "SELECT * FROM tblgastbok ORDER BY Id DESC"
RecSet.Open Visa, Connect, adOpenStatic, adLockOptimistic 
%>

<% Do Until RecSet.EOF%>
  <b>
    <a href="Delete.asp?id_nr=<%=RecSet("Id") %>">
     <%=Recset("Rubrik") %>
           </a>
   
 <%	RecSet.MoveNext
	Loop%>
	RecSet.Close
	Connect.Close
	Set RecSet = nothing
	Set Connect = nothing

Orkar inte förklara så mycket..
Men du får ändra databasens namn, tabellernas namn samt kolumnernas namn till dina namn på allt :D

Har inte orkat testat det ännu emn jag tror det ska fungera..

Medlem sedan jan. 20022 440 inlägg
#4
<%
Select Case = Request("cmd")

Case ""

If Session.Contents("Admin") = Empty Then
Response.Redirect("gb.asp")

SQL=" select titel, innehall, id from gb order by id DESC
set rs = Conn.Execute(SQL)

Dim id, titel, innehall
id = rs("id")
titel = rs("titel")

Response.write "Här är listan på alla inlägg"
While NOT rs.EOF
response.write titel &" ||| "_
"<a href=""admin.asp?cmd=tabort&id=" & id & ">kasta</a> | "_
"<a href=""admin.asp?cmd=svara&id=" & id & ">svara</a>"
rs.movenext
wend

Det kanske hjälper dig att komma igång ?

Medlem sedan jan. 20022 440 inlägg
#5

alj man ska inte öppna ett recordset när man updaterar eller tar bort ur databasen ;)

Medlem sedan sep. 2002538 inlägg
#6

Huh?!
Har jag alltid gjort , visserligen är jag ganska ny på asp, men berätta vad är det för del med det?!

Edit:
Eller menar du att man bara kan göra en Execute sats?
Jo, det vet jag emn jag envisas med att göra recordset's :P

Medlem sedan juni 20019 024 inlägg
#7

Lite skillnad blir det (om man bortser från prestandavinsten): ;)

[b]Recordset-variant[/b]
<!-- #include file="adovbs.inc" -->
<%	Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath ("db.mdb")

	Set RecSet = Server.CreateObject("ADODB.Recordset")
   Radera = "SELECT * FROM tblGastbok WHERE ID = " & Request.QueryString("id_nr") & " "

   RecSet.Open Radera, Connect, adOpenStatic, adLockOptimistic 

   RecSet.Delete

	RecSet.Close
	Connect.Close
	Set RecSet = nothing
	Set Connect = nothing 
	%>
Posten är nu borttagen...
[b]Utan recordset[/b]
<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath ("db.mdb")
Connect.Execute("DELETE FROM tblGastbok WHERE ID = " & Request.QueryString("id_nr")),,128
Connect.Close
Set Connect = nothing 
%>
Posten är nu borttagen...
Medlem sedan sep. 2002538 inlägg
#8

Jaha då har jag lärt mig något nytt idag då.
Tack alla :)

Medlem sedan mars 20016 260 inlägg
#9

Men frågan är hur mycket han som skrev inlägget har lärt sig, igenom att skriva hela lösningen kommer han bara komma och fråga nästa gång också... Tycker man iaf får försöka själv, och sen kan man komma hit och fråga om kodspecifika fel eller lösningar, men inte få dom upp och ner.

/Ni kanske inte skrev hela lösningen men ändå =)

Medlem sedan juni 20019 519 inlägg
#10

Pace skrev:

[b]Utan recordset[/b]
<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath ("db.mdb")
Connect.Execute("DELETE FROM tblGastbok WHERE ID = " & Request.QueryString("id_nr")),,128
Connect.Close
Set Connect = nothing 
%>
Posten är nu borttagen...

Häftigt.. ska testa detta också.. yey lärt mej något nytt idag :)

Medlem sedan feb. 200112 078 inlägg
#11

Pace:s andra kod-exempel är väl att föredra i alla lägen när det gäller borttagning av data? Både prestanda- och kodmässigt.

Medlem sedan juni 20019 519 inlägg
#12

det fungera väll med update också?

Medlem sedan feb. 200112 078 inlägg
#13

Ja, det fungerar med update också. :)

Medlem sedan juni 20019 519 inlägg
#14

Blir sidan fortare?

Medlem sedan feb. 200112 078 inlägg
#15
Connect.Execute("DELETE FROM tblGastbok WHERE ID = " & Request.QueryString("id_nr")),,128

Om man gör på ovanstående sätt (utdrag ur Pace:s kod), så har iallafall jag den bestämda uppfattningen och erfarenheten av att sidan exekveras snabbare, ja.

Detta med tanke på att execute är mer effektiv än update-metoden samt att ,,128 används, som gör att inget tomt recordset skapas, som det annars gör.

Medlem sedan juni 20019 519 inlägg
#16

vad betyder ),,128 då?

Medlem sedan mars 20015 287 inlägg
Medlem sedan apr. 20021 203 inlägg
#18

voigtann1 skrev:

vad betyder ),,128 då?

"Att inget tomt recordset skapas, som det annars gör."
Det ger en prestandavinst eftersom RecordSet:et ändå inte används.

:)

Medlem sedan juni 20019 519 inlägg
#19

okey.. :) du OveRRidE sidan går inte fortare :( tror jag inte.. har timer.. tror jag får samma tid..

Medlem sedan juni 200032 967 inlägg
#20

Skillnaden är försumbar vid låg belastning. Att man ser till att den kod man använder är hyfsat optimerad på de flesta ställen kan vara skillnaden mellan liv och död på en välanvänd applikation.

Skriv bra kod, och du skall belönas. ;)

256 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
120 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)