Avatar billede scorpion Nybegynder
02. marts 2003 - 19:09 Der er 4 kommentarer og
1 løsning

Funktioner til redigere og oprette på samme side

Hej

Jeg sidder fast i nogle ting på en ASP side som skal have flere funktioner på en gang, men jeg kan ikke få det til at virke, med de sidste funktioner som er lagt på.

Jeg vil lige forklare lidt om siden:
Brugeren kan komme til siden fra 2 forskellige steder; enten fra en ”ny funktion” eller en ”redigere funktion”. Dette gør att man både har mulighed for at tilføje noget nyt til en DB, eller kan man redigere noget som allerede findes i DB; det kommer an på, hvis man har et id nummer med fra en anden side (redigere) eller ej (ny).

Funktionerne jeg har problemer med er følgende (skrivet i den rækkefølge de framgår i koden):

1.    Når man klikker på Send knappen skal det lægges ind eller redigeres i DB, denne funktion lige i toppen af siden, og skal også finde ud af om det handler om en ny indtastning eller en redigering. Jeg er meget usikker på denne del af scriptet.
2.    Længere nede på finden findes en ” If objRec.EOF Then” som giver fejl for mig, men kan ikke lige se, hvordan den skal skrives.


<!--#include file="../db/protect.inc"-->
<%
' Hvis der er blevet trykket på knappen "Send", og der er noget der skal opdateres
If Request.Form("Action") = "Send" Then

If  <id er fundet på forgående side>

  Set Conn = Server.CreateObject("ADODB.Connection")
  Conn.Open "Data Source=" & Server.mapPath("../db/db.mdb;Provider=Microsoft.Jet.OLEDB.4.0;")
rec.Open ("nyheder")

rec.AddNew

rec("dato")=Request.Form("Dato")   
rec("overskrift")=Request.Form("Overskrift")   
tekst = Request.Form("Tekst")
If Not isNull(tekst) Then
btekst = Replace(tekst, vbCrLf, "<br>")
end if
rec("tekst")= Tekst       
rec.Update           

rec.Close
set rec=Nothing
response.redirect "info.asp"

' Hvis der er blevet trykket på knappen "Send", og informationen er ny.
Else

<Her er jeg ikke helt sikker på, hvad der skal stå, men er vel noget i stil med det overstående??>

End If
%>
<html>
<head>
<title>NoName</title>
<META NAME="ROBOTS" CONTENT="NOINDEX">
<link rel="stylesheet" href="../div/nonamestyle.css" type="text/css">

</head>

<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<table width="710" border="0" cellspacing="0" cellpadding="7" height="100%">
  <tr>
    <td width="125" height="60">
      <p><font size="3">NoName</font></p>
    </td>
    <td height="60">&nbsp;</td>
  </tr>
  <tr>
    <td width="125" valign="top"><p>Nyheder<br>
        - <a href="nyhed-edit.asp">Tilf&oslash;j ny</a><br>
        - <a href="nyhed-red.asp">Redigere / Slet</a></p>
      <p>Job<br>
        - Redigere</p>
    </td>
    <td valign="top">
        <%
Set Conn = Server.CreateObject("ADODB.Connection")
  Conn.Open "Data Source=" & Server.mapPath("../db/db.mdb;Provider=Microsoft.Jet.OLEDB.4.0;")

sql = "SELECT dato , overskrift , tekst FROM nyheder WHERE (id=" & request("id") & ")"
Set objRec = Conn.Execute(sql)

  If objRec.EOF Then
    sql = "" <Dette virker ikke helt efter hensigten:-( >
    Set objRec = Conn.Execute(sql)
  End If
%>

    <form name="indtastning" method="post" action="nyhed-edit.asp">

             
        <p>Dato:<br>
               
          <input name="Dato" type="text" value='<%= objRec("dato")  %>' size="50" maxlength="30">
              </p>
              <p>Overskrift:<br>
               
          <input type="text" value='<%= objRec("overskrift")  %>' name="Overskrift" size="50" maxlength="30">
               
              </p>
             
        <p>Tekst:<br>
          <textarea name="Tekst"  cols="50" rows="20" wrap="VIRTUAL"><%= objRec("tekst")  %></textarea>
          <br>
          <input type="submit" name="Action" value="Send">
       
        </p>
       
        </form>
    </td>
  </tr>
</table>
<%
objRec.Close
Set objRec=Nothing
Conn.Close
Set Conn=Nothing
%>
</body>
</html>

Håber der er nogen der kan hjælp på den anden side, så er der måske en chance for at jeg finder ud af ASP på et eller andet tidspunkt :-)

På forhånd tak for hjælpen.

Scorpion
Avatar billede somaliomar Praktikant
03. marts 2003 - 08:04 #1
Gider du ikke paste din rigtige kode? Når du skriver

  If  <id er fundet på forgående side>

ved jeg ikke hvad det er du tjekker. Du gerne lave indrykninger i din kode, så det er nemmere at læse, hvad du har gang i :)
Avatar billede scorpion Nybegynder
03. marts 2003 - 12:24 #2
Det er jo lige netop et af de områder jeg har problem med, og ved ikke hvordan jeg skal dif. værdien.

Scorpion
Avatar billede somaliomar Praktikant
04. marts 2003 - 05:31 #3
Med hensyn til denne her linje har jeg en række spørgsmål:

  <id er fundet på forgående side>

Hvad er det for en id? Brugerens id eller er det id-nummmeret på den post, der skal opdateres i databasen? Hvordan sender du id-nummeret fra den forgående side? Hvordan ser koden ud for den side, der sender id-nummeret?
Avatar billede scorpion Nybegynder
31. marts 2003 - 01:52 #4
Problemet er blevet løst igennem anden kilde

Scorpion
Avatar billede svjensen Nybegynder
29. maj 2003 - 10:19 #5
Plejer det ikke at være god kotyme at skrive en kommentar med løsningen, så vi andre også kan blive klogere?
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