Avatar billede jens_k Nybegynder
07. juli 2001 - 23:47 Der er 22 kommentarer og
2 løsninger

SIMPEL ASP

Hejsa..

Jeg står her med noget ASP.. Hvor jeg sikkert har lavet en IDIOT FEJL....

Scriptet kan ses på http://212.242.78.47

Problemet er.. Jeg kan fint oprette news.. Men hvis jeg vælger Redigere.. Kan den også fint liste de nyheder som er at vælge imellem.. Men når jeg så trykker på en.. Så sker der ikke mere.. Ingen ASP fejl eller noget.. Source Code ser såledees ud. :

<%@ Language=VBScript %>
<HTML>
<HEAD>
<META NAME=\"GENERATOR\" Content=\"Microsoft Visual Studio 6.0\">
</HEAD>
<BODY>

<%

if Request.QueryString(\"mode\")=\"add\" then
%>

<form method=post action=\"news.asp?mode=save\">
<P align=center><br>
Overskrift : <INPUT name=overskrift style=\"HEIGHT: 22px; WIDTH: 199px\">&nbsp;

Forfatter : <SELECT id=select1 name=forfatter style=\"HEIGHT: 22px; WIDTH: 199px\">

<OPTION selected value=[BAN]MoveX>[BAN]MoveX</OPTION></SELECT><br><br><br>&nbsp;

<TEXTAREA name=news style=\"HEIGHT: 212px; WIDTH: 555px\"></TEXTAREA>
    <br><br>
 

<br>
<INPUT type=\"submit\" value=\"Save\" id=submit1 name=submit1>&nbsp;&nbsp;&nbsp;&nbsp;
<INPUT id=reset1 name=reset1 type=reset value=Cancel></P>
</form>

<%
end if
%>




<%
if Request.QueryString(\"mode\")=\"save\" then


\'forbindelse til databasen.
strconn = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\"& Server.MapPath(\"banned.mdb\") &\";DefaultDir=\"& Server.MapPath(\"/\") &\";DriverId=25;FIL=MS Access;MaxBufferSize=512;PageTimeout=5\"
    set conn = server.createobject(\"adodb.connection\")
    conn.open(strconn)
   
       
sql= \"insert into News(overskrift,forfatter,news)\"
sql= sql & \"values(\'\"
sql= sql & request(\"overskrift\") & \"\',\'\"
sql= sql & request(\"forfatter\") & \"\',\'\"
sql= sql & request(\"news\") & \"\')\"
conn.execute(sql)
response.write \"Nyheden er nu tilføjet..\"
end if

%>











<%

if Request.QueryString(\"mode\")=\"redi\" then


\'Databasen åbnes
set conn = server.createobject(\"ADODB.connection\")
StrDSN = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\" & Server.MapPath(\"banned.mdb\")
conn.open strDSN
   
\'Søgekriterier defineres
SQL = \"SELECT * FROM news ORDER BY Dato DESC\"
set RS = conn.execute( SQL )

If RS.EOF then
  response.write \"<tr><td><font color=\'984A46\' size=\'2\' face=\'Verdana\'>Der er ingen nyheder..</td></tr>\"

Else

  do while not RS.eof

  response.write \"<tr><td width=400 valign=top><font color=\'984A46\' size=\'2\' face=\'Verdana\'>\"
  response.write \"- <a href=\'news.asp?mode=aktuel&id=\" & RS(\"ID\") & \"\'><font size=\'2\' color=\'#BF0000\'>\" & RS(\"overskrift\") & \"</font></a>\"
  response.write \"</td></tr>\"

  rs.movenext
  loop

End if

\'Databasen lukkes
set conn = Nothing
rs.close

%>

<% elseif mode = \"aktuel\" then %>

<%

  \'Variabler hentes og sættes
  ID = Request.QueryString(\"id\")

%>

<form method=\"POST\" action=\"news.asp?mode=ret\">

<%

  \'Database åbnes og gøres klar
  set conn = server.createobject(\"ADODB.connection\")
  strDSN = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\" & Server.MapPath(\"banned.mdb\")
  conn.open strDSN

  \'Søgekriterer sættes
  SQL = \"SELECT * FROM news Where (ID = \" & ID & \")\"
  set RS = conn.execute( SQL )

  OVerskrift = RS(\"Overskrift\")
  Forfatter = RS(\"Forfatter\")
  News = RS(\"News\")
 
  %>


Overskrift : <INPUT name=overskrift style=\"HEIGHT: 22px; WIDTH: 199px\">&nbsp;

Forfatter : <SELECT id=select1 name=forfatter style=\"HEIGHT: 22px; WIDTH: 199px\">

<OPTION selected value=[BAN]MoveX>[BAN]MoveX</OPTION></SELECT><br><br><br>&nbsp;

<TEXTAREA name=news style=\"HEIGHT: 212px; WIDTH: 555px\"></TEXTAREA>
    <br><br>
 

<br>

<INPUT type=\"submit\" value=\"Save\" id=submit1 name=submit1>&nbsp;&nbsp;&nbsp;&nbsp;
<INPUT id=reset1 name=reset1 type=reset value=Cancel></P>

<%
  rs.Close
  set rs = Nothing

%>



<% elseif mode = \"ret\" then %>



<tr><td width=400 colspan=2>
<font color=\"984A46\" size=\"3\" face=\"Verdana\">
<b>Ret Nyheder</b><br>
<font size=\"2\">
Du har nu rettet nyheden <% = overskrift %>. Ændringerne vil træde i kraft øjeblikkeligt.<br>
</td></tr>

<%

Const adOpenKeyset = 1
Const adLockOptimistic = 3
set conn = server.createobject(\"ADODB.connection\")
strDSN = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\" & Server.MapPath(\"banned.mdb\")
conn.open strDSN

\'Søgekriterier for News defineres
Set rs = Server.CreateObject(\"ADODB.RecordSet\")
SQL = \"SELECT TOP 1 * FROM news Where ID=\'\" & ID & \"\'\"
rs.Open SQL, strDSN, adOpenKeyset, adLockOptimistic


  rs(\"overskrift\") = overskrift
  rs(\"forfatter\") = forfatter
  rs(\"news\") = news

  rs.Update
  rs.Close

Set rs = Nothing
Set conn = Nothing

%>


<% end if %>






</BODY>
</HTML>
Avatar billede food4u.dk Nybegynder
08. juli 2001 - 00:01 #1
Prøv at lade være med at bruge elseif, da det er da ret heller ikke virker, og det er kun ved \"elseif\" det ikke virke.
Avatar billede jens_k Nybegynder
08. juli 2001 - 00:02 #2
Ok takker..
Avatar billede jens_k Nybegynder
08. juli 2001 - 00:06 #3
Food4u.dk

Hvordan skal det så se ud ?
Avatar billede euroman28 Nybegynder
08. juli 2001 - 00:06 #4
elseif er ikke problemet
du skriver elseif mode=\"\"
den kender ikke mode..mode skal udskiftes med Request.Querystrin(\"mode\") så virker det
Avatar billede euroman28 Nybegynder
08. juli 2001 - 00:08 #5
eller du kan selvfølgelig deklare en variable i starten af scriptet
mode = Request.Querystring(\"mode\")
Avatar billede erikjacobsen Ekspert
08. juli 2001 - 00:09 #6
Du har et par steder hvor du skriver noget i retning af
  <% elseif mode = \"aktuel\" then %>
men du har da ikke en variabel med det navn. Du mener sikkert
  <% elseif Request.QueryString(\"mode\") = \"aktuel\" then %>
Avatar billede jens_k Nybegynder
08. juli 2001 - 00:09 #7
Hvis jeg skifter det ud med
<% Request.Querystring(\"mode\")=\"aktuel\" then %>
Så virker det hellere ikke.. Det har jeg prøvet.. Og har lige prøvet igen.. Og det virker ikke.. Der komme en fejl :

Request.Querystring(\"mode\")=\"aktuel\" then
------------------------------------^
Avatar billede erikjacobsen Ekspert
08. juli 2001 - 00:09 #8
Ih hvor er jeg langsom i dag :)
Avatar billede euroman28 Nybegynder
08. juli 2001 - 00:10 #9
Du mangler \'if\'
Avatar billede erikjacobsen Ekspert
08. juli 2001 - 00:10 #10
Du skal beholde din elseif !
Avatar billede euroman28 Nybegynder
08. juli 2001 - 00:11 #11
men det mest rigtigt er bare at skrive
mode =request(\"mode\")
i starten af scriptet
Avatar billede jens_k Nybegynder
08. juli 2001 - 00:11 #12
Erik.. Det virker ellers nu..
Avatar billede jens_k Nybegynder
08. juli 2001 - 00:12 #13
<% elseif Request.QueryString(\"mode\") = \"aktuel\" then %>

Det virker fint med den !
Avatar billede euroman28 Nybegynder
08. juli 2001 - 00:12 #14
klart
du skal så også rette din
<% elseif mode=\"ret\"
Avatar billede erikjacobsen Ekspert
08. juli 2001 - 00:13 #15
Det virker selvfølgelig også med \"if\", men en bunke \"elseif\"-er er ellers
det mest logiske, når det nu kun er én af dem, der skal udføres.
Avatar billede euroman28 Nybegynder
08. juli 2001 - 00:14 #16
den udfører den alle på begge måder..
men med elseif sparer du en masse end if\'er
Avatar billede jens_k Nybegynder
08. juli 2001 - 00:15 #17
Hvad sker der nu..

Avatar billede jens_k Nybegynder
08. juli 2001 - 00:15 #18
jeg delte pointene.. Men der er vist gået lort i det..
Avatar billede jens_k Nybegynder
08. juli 2001 - 00:15 #19
Hvad gør jeg for at rette det ?? Såen at i begge for 30 point ?
Avatar billede erikjacobsen Ekspert
08. juli 2001 - 00:16 #20
Der er da fint nok - hr. euroman28 kom jo først !
Avatar billede food4u.dk Nybegynder
08. juli 2001 - 00:18 #21
hehe, jeg tror det er på tide at gå i seng, hvordan kan man overse det :o))
Avatar billede jens_k Nybegynder
08. juli 2001 - 00:26 #22
Ok.. Men jeg siger 10000000000 gange tak for hjælpen... Nu har jeg lært noget nyt :)

Jeg er lige startet i lære som webdesigner hos www.athena.as

Så jeg skal til at lære noget ASP.. Nogen af jer som kender nogle gode sider hvor man kan lære det ?
Avatar billede erikjacobsen Ekspert
08. juli 2001 - 00:30 #23
Prøv at lede på eksperten - det er stillet før :)

Ellers tror jeg din fejl var, at du ikke først hævede dit pointtal til 60 (klik
på 30-tallet - altså de point du skal ændre), og så fordelte 30 til hver. Det
er en rimelig nondeterministisk algoritme hvis summen ikke passer med det
aktuelle pointtal...  Skidt nu med det - point er ikke basis for lykke her i livet :)
Avatar billede jens_k Nybegynder
08. juli 2001 - 00:43 #24
Ja.. Det var nok det jeg gjorde forkert..

Men så kan du tjene nogle point på en anden måde.. hehe. Jeg kan slet ikke få SLET funktionen til at virke.. Jeg gør det hammer forkert....

Jeg opretter lige et nyt SPRM med 60 point til SLET funktionen...

EMNE : Slet funktion..
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester