Avatar billede sapworld Nybegynder
01. oktober 2003 - 20:52 Der er 10 kommentarer og
1 løsning

Opdater database

Hej
Jeg bruger nedenstående kode (delete_news.asp) til at hente data fra en access database. Ud for hver linie er der et "link" med teksten "delete" der ved hjælp af delete_update.asp sletter en post i en tabel.

Jeg har nu brug for at kunne editere i data i stedet for at slette, så hvis man kunnne bytte "delete" teksten ud med "change", og så i stedet præsentere date i en form, hvor man kan rette i data og derefter gemme, så ville min aften være reddet  :)

Nogen der kan hjælpe med at rette koden til?

delete_news.asp -------------------------------
<%
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open="hcb_scales_tips"
strSQL = "SELECT * FROM news ORDER BY news.ID Desc"
set news = objConn.Execute(strSQL)
%>

</table>           
<p>
<%
While NOT news.EOF
%>
<table>
<tr>
<td width="100"><%=news.Fields("module")%></td>
<td width="400"><%=news.Fields("description")%></td>
<td width="100"><%=news.Fields("initials")%></td>
<td width="100"><a href="delete_update.asp?id=<%=news.Fields("id")%>">Delete</a></td>
</tr>
</table>
<%
news.MoveNext
Wend
%>

<%
objConn.Close
%>


Delete_update.asp -------------------------------
<%
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open="hcb_scales_tips"
strSQL = "DELETE FROM news WHERE ID= " & request.QueryString("id") & ""
objConn.Execute(strSQL)
Response.Redirect("delete_news.asp")
%>

Hilsen

Kim
Avatar billede medions Nybegynder
01. oktober 2003 - 20:54 #1
Læs her:

http://www.html.dk/tutorials/asp/lektion22.asp

Der har du dit svar!

//>Rune
Avatar billede sapworld Nybegynder
01. oktober 2003 - 20:56 #2
Har prøvet - men det kniber med at få det flettet ind i en form.
Avatar billede medions Nybegynder
01. oktober 2003 - 20:59 #3
Hmm ok, prøv at post din form her på E, så prøver jeg at sætte en SQL statement op efter den...

//>Rune
Avatar billede sapworld Nybegynder
01. oktober 2003 - 21:02 #4
Det er en "automatisk genereret Frontpage ting" så den fylder af H til.

Men det er tre felter jeg har brug for at kunne rette: module, description, initials

Her er den:
<form method="POST" action="result_news.asp"  onsubmit="return FrontPage_Form1_Validator(this)" name="FrontPage_Form1">


             
<div align="center">
  <center>


             
<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse; border-bottom-width:0" bordercolor="#111111" width="62%" id="AutoNumber1">
  <tr>
    <td width="108%" colspan="4" bgcolor="#6699CC" style="border-left-color: #111111; border-left-width: 1; border-right-color: #111111; border-right-width: 1">
    <p align="center"><span lang="da"><font color="#FFFFFF"><b>Course
    registration</b></font></span></td>
  </tr>
  <tr>
    <td width="25%" style="border-left-color: #111111; border-left-width: 1; border-bottom-style: solid; border-bottom-width: 1"><span lang="da">initials:</span></td>
    <td width="25%" style="border-bottom-style: solid; border-bottom-width: 1">
    <!--webbot bot="Validation" b-value-required="TRUE" i-minimum-length="2" i-maximum-length="4" --><input type="text" name="initials" size="10" maxlength="4"></td>
    <td width="25%" style="border-bottom-style: solid; border-bottom-width: 1">
    <span lang="da">module</span></td>
    <td width="26%" style="border-right-color: #111111; border-right-width: 1; border-bottom-style: solid; border-bottom-width: 1">
    <!--webbot bot="Validation" b-value-required="TRUE" --><select size="1" name="module">
    <option selected>All modules</option>
    <option>HR - Human ressources</option>
    <option>B2B - Eprocurement</option>
    <option>BW - Business Warehouse</option>
    <option>CO - Controlling</option>
    <option>FI - Finance</option>
    <option>MM - Material Management</option>
    <option>PM - Plant Maintenance</option>
    <option>PP-PI Production planning</option>
    <option>SD - Sales & Distribution</option>
    <option>WM - Warehouse management</option>
    </select></td>
  </tr>
  <tr>
    <td width="25%" style="border-left-style: solid; border-left-width: 1; border-right-style: none; border-right-width: medium; border-bottom-style: none; border-bottom-width: medium">&nbsp;</td>
    <td width="25%" style="border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-bottom-style: none; border-bottom-width: medium">
    &nbsp;</td>
    <td width="25%" style="border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-bottom-style: none; border-bottom-width: medium">
    &nbsp;</td>
    <td width="26%" style="border-left-style: none; border-left-width: medium; border-right-style: solid; border-right-width: 1; border-bottom-style: none; border-bottom-width: medium">
    &nbsp;</td>
  </tr>
  <tr>
    <td width="108%" colspan="4" align="center" bgcolor="#6699CC" style="border-left-color: #111111; border-left-width: 1; border-right-color: #111111; border-right-width: 1">
    <span lang="da">Description</span></td>
  </tr>
  <tr>
    <td width="108%" colspan="4" align="center" style="border-left-color: #111111; border-left-width: 1; border-right-color: #111111; border-right-width: 1; border-bottom-style: solid; border-bottom-width: 1">
    <!--webbot bot="Validation" b-value-required="TRUE" i-maximum-length="250" --><textarea rows="12" name="description" cols="64"></textarea></td>
  </tr>
  <tr>
    <td width="108%" colspan="4" style="border-left: 1px solid #111111; border-right: 1px solid #111111; border-bottom-style: none; border-bottom-width: medium"><span lang="da">&nbsp;&nbsp;&nbsp;&nbsp;
    </span></td>
  </tr>
  <tr>
    <td width="104%" colspan="4" style="border-left-color: #111111; border-left-width: 1; border-right-color: #111111; border-right-width: 1; border-top-style: none; border-top-width: medium; border-bottom-color: #111111; border-bottom-width: 1">
    <p align="center">
<input type="submit" value="Submit" name="Submit"><br>
&nbsp;</td>
  </tr>
</table>
  </center>
</div>
<p><br>
<span lang="da">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>
&nbsp;</span></p>
<p>&nbsp;</p>
</form>
Avatar billede medions Nybegynder
01. oktober 2003 - 21:07 #5
Ok, så gør du sådan her:

I filen result_news.asp skriver du flg:

Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open="hcb_scales_tips"

strSQL = "UPDATE news SET module = '" & Request.Form("module") & "', [description] = '" & Request.Form("description") & "', initials = '" & Request.Form("initials") & "'"
objConn.Execute(strSQL)

PS.:
Jeg går ud fra
1) Alle dine felter i databasen er tekstfelter
2) At dine felter hedder det som jeg har skrevet i SQL'en
3) At du har skriverettigheder til databasen


//>Rune
Avatar billede sapworld Nybegynder
01. oktober 2003 - 21:14 #6
1, 2, 3, = yes

Så vil den opdatere tabellen med de data der er i form'en, men hvordan får jeg data hevet ind i formen først?
Avatar billede medions Nybegynder
01. oktober 2003 - 21:16 #7
Hmm der laver du en SELECT, hvilken kolonner har du i din databasetabel? -har du en der hedder ID?

//>Rune
Avatar billede medions Nybegynder
01. oktober 2003 - 21:17 #8
For du gør fx. sådan her:

<%
strSQL = "SELECT * FROM news WHERE id = 1"
Set objRs = objConn.Execute(strSQL)
%>


<input type="text" name="module" value="<%= objRs("module") %>">

og sådan bliver du ellers bare ved indtil du har dem alle...

//>Rune
Avatar billede sapworld Nybegynder
01. oktober 2003 - 21:26 #9
Ja, jeg har en primary key ved navn ID

Kan jeg bare paste det ind, eller skal der rettes noget i den oprindelig form?
Avatar billede sapworld Nybegynder
01. oktober 2003 - 21:44 #10
Se bort fra den sidste kommentar - jeg har lavet en ny form "manuelt"  :)

Jeg tror at den er ved at være der.

Kim
Avatar billede sapworld Nybegynder
01. oktober 2003 - 22:20 #11
Det er blevet meget uoverskueligt - jeg poster den lige igen.
Kim
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