Avatar billede casperhtx Nybegynder
12. maj 2002 - 21:01 Der er 51 kommentarer og
1 løsning

Nyhed...

Jeg skal bruge en asp-side, hvor det er muligt for en bruger at indtaste brugernavn, e-mail og et tekstfelt, hvor han kan skrive en nyhed. Dette skal sendes til en database, hvorefter det smides op på en anden html-side...
Hvordan laves dette?
Avatar billede jnissen Nybegynder
12. maj 2002 - 21:06 #1
Avatar billede aspprogram Nybegynder
12. maj 2002 - 21:12 #2
hva.. jacob er du i familie med en som hedder Jonas???
Avatar billede jnissen Nybegynder
12. maj 2002 - 21:14 #3
aspprogram-> Nahh, ikke så vidt jeg er orienteret :-) Det tror jeg ikke jeg er :-)
Avatar billede Slettet bruger
12. maj 2002 - 21:38 #4
du kan finde et på www.questis.dk, som nemt kan rettes til &:-D

mvh.
questis
Avatar billede casperhtx Nybegynder
12. maj 2002 - 23:21 #5
Jeg mangler stadig at finde ud af, hvordan man laver felterne e-mail og bruger og tekstfeltet med nyheden, hvor dataene bliver sendt til en database....
Avatar billede Slettet bruger
12. maj 2002 - 23:25 #6
du ville åbenbart ikke bruge det færdige fra mig... angående dine felter, gennegåes dette her:

http://www.html.dk/artikler/00011/

mvh.
www.questis.dk
Avatar billede casperhtx Nybegynder
12. maj 2002 - 23:28 #7
Jeg har kigget på din færdige, men der er ho ingen steder, hvor en bruger kan indtaste sin nyhed??
Avatar billede jnissen Nybegynder
12. maj 2002 - 23:44 #8
Jeg har lige prøvet at lave et lille eksempel til dig.

-------Form.htm-------

<form method="POST" action="gem_i_db.asp">
Navn
    <input type="text" name="Navn" size="25">
    <input type="submit" value="Send" name="B1"></p>
</form>

-------gem_i_db.asp-------
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.MapPath("Database.mdb")

SQLstmt = "INSERT INTO nyhed (navn)"
SQLstmt = SQLstmt & " VALUES ('" & request.form("nicknavn") & "')"
       
response.write sqlstmt

Conn.Execute (SQLstmt)
conn.Close
Set conn = nothing
Set SQLstmt = nothing

response.redirect ("default.asp")
%>

Prøv at lege lidt med det
Avatar billede jnissen Nybegynder
12. maj 2002 - 23:45 #9
Ups, lille fejl...

Denne:
SQLstmt = SQLstmt & " VALUES ('" & request.form("nicknavn") & "')"

Skal ændres til dette:
SQLstmt = SQLstmt & " VALUES ('" & request.form("navn") & "')"

:-)
Avatar billede casperhtx Nybegynder
12. maj 2002 - 23:52 #10
Det vil sige at jeg sender dataene til en asp-side, som derefter sender informationen til databasen?
Avatar billede jnissen Nybegynder
12. maj 2002 - 23:56 #11
Ja det er én måde at gøre det på.
Avatar billede casperhtx Nybegynder
13. maj 2002 - 00:01 #12
Okay, men det virker meget simpelt, så det er jo godt nok :)
Avatar billede jnissen Nybegynder
13. maj 2002 - 00:04 #13
Ja, det er det faktisk også.
Men bare sprøg hvis det driller :-)
Avatar billede casperhtx Nybegynder
13. maj 2002 - 00:08 #14
Ja, jeg prøver at rode med det i morgen, og håber på at jeg kan få det til at virke.
Avatar billede casperhtx Nybegynder
13. maj 2002 - 00:12 #15
Lige et spørgsmål....Hvorfor response.write sqlstmt ?? Hvad skal dette gøre godt for?
Avatar billede jnissen Nybegynder
13. maj 2002 - 00:16 #16
Den er ikke nødvendig, så den kan du bare slette. Den er der så du kan tjekke din sql
Avatar billede jnissen Nybegynder
13. maj 2002 - 00:17 #17
Jeg smutter nu, men bare skriv hvis der er mere, så kommer jeg igen i morgen.
Avatar billede casperhtx Nybegynder
13. maj 2002 - 00:19 #18
Ok...tak for det. Jeg tester det selv igennem i morgen og ser om jeg kan få det til at virke.
Avatar billede casperhtx Nybegynder
13. maj 2002 - 13:41 #19
Jeg kan ikke rigtig få det til at virke, aktså at få den til at indsætte dataene i databasen.....

<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.MapPath("Nyhed.mdb")

SQLstmt = "INSERT INTO nyhed (navn)"
SQLstmt = SQLstmt & " VALUES ('" & request.form("navn") & "')"
SQLstmt = "INSERT INTO nyhed (email)"
SQLstmt = SQLstmt & " VALUES ('" & request.form("email") & "')"
SQLstmt = "INSERT INTO nyhed (nyhed)"
SQLstmt = SQLstmt & " VALUES ('" & request.form("nyhed") & "')"

response.write sqlstmt

Conn.Execute (SQLstmt)
conn.Close
Set conn = nothing
Set SQLstmt = nothing

response.redirect ("side1.htm")
%>
Avatar billede Slettet bruger
13. maj 2002 - 13:44 #20
hvilken fejl får du ???
Avatar billede casperhtx Nybegynder
13. maj 2002 - 13:47 #21
Jeg får ikke nogen fejlt, men den indsætter ikke nogen data i databasen.....
Avatar billede Slettet bruger
13. maj 2002 - 13:50 #22
du har sat din action til at sende til dette dokument ?
Avatar billede jnissen Nybegynder
13. maj 2002 - 13:59 #23
Så skal den se sådan ud:

<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.MapPath("database.mdb")

SQLstmt = "INSERT INTO nyheder (navn, email, nyhed, mobilnr, website, email, info, brugernavn, password)"
SQLstmt = SQLstmt & " VALUES ('" & request.form("navn") & "','" & request.form("email") & "','" & request.form("nyhed") & "')"
                               
Conn.Execute (SQLstmt)
conn.Close
Set conn = nothing
Set SQLstmt = nothing

response.redirect ("default.asp")
%>
Avatar billede casperhtx Nybegynder
13. maj 2002 - 13:59 #24
Min action er sat til at sende til asp-siden vist ovenfor!!
Avatar billede jnissen Nybegynder
13. maj 2002 - 14:00 #25
Ups :-)

Sådan her:

<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.MapPath("database.mdb")

SQLstmt = "INSERT INTO nyheder (navn, email, nyhed)"
SQLstmt = SQLstmt & " VALUES ('" & request.form("navn") & "','" & request.form("email") & "','" & request.form("nyhed") & "')"
                   
Conn.Execute (SQLstmt)

conn.Close
Set conn = nothing
Set SQLstmt = nothing

response.redirect ("default.asp")
%>
Avatar billede casperhtx Nybegynder
13. maj 2002 - 14:07 #26
Nu virker det næsten....den skriver til mig database....dog ikke dér, hvor selve nyheden skal stå. Kan det være fordi at jeg har ID med i min database?
Avatar billede jnissen Nybegynder
13. maj 2002 - 14:09 #27
Nej, det har ikke noget med det at gøre. Hedder dine felter i databasen "navn", "email" og "nyhed"?
Avatar billede casperhtx Nybegynder
13. maj 2002 - 14:13 #28
Ja, men der hvor den skal skrive id, skriver den f.eks. 72, hvor der rigtig skulle stå 1....!!
Avatar billede jnissen Nybegynder
13. maj 2002 - 14:17 #29
Er den ikke sat til autonummering?
Avatar billede jnissen Nybegynder
13. maj 2002 - 14:18 #30
Det er fordi du har slettet de første 71 poster. Den kan ikke stare fra 1 igen.
Avatar billede casperhtx Nybegynder
13. maj 2002 - 14:20 #31
Nå ok....og jo, den er sat til aoutonummering! Men jeg forstår ikke hvorfor den ikke sender dataene fra mit textarea (nyhed) til databasen...
Avatar billede jnissen Nybegynder
13. maj 2002 - 14:23 #32
Kommer der nogen fejl?

Ellers så send det til jacob@iteax.dk, så kigger jeg på det.
Avatar billede casperhtx Nybegynder
13. maj 2002 - 14:27 #33
Nej...ingen fejl! Jeg prøver at sende det til dig!
Avatar billede jnissen Nybegynder
13. maj 2002 - 14:57 #34
Den skriver faktisk i databasen. Det er fordi du har laget en masse mellemrum i dit textarea, så derfor kunne du ikke lige se det.
Avatar billede jnissen Nybegynder
13. maj 2002 - 14:58 #35
....har lavet en masse.....  skulle der stå
Avatar billede casperhtx Nybegynder
13. maj 2002 - 15:17 #36
Jamen hvordan sletter jeg de mellemrum? Hvor har jeg lagt dem?
Avatar billede jnissen Nybegynder
13. maj 2002 - 15:23 #37
Har du ikke fået min mail? Der skulle de være fjernet.
Avatar billede casperhtx Nybegynder
13. maj 2002 - 15:41 #38
Det virker stadigvæk ikke, men jeg kan heller ikke rigtig se, at du har ændret noget i koden?
Avatar billede casperhtx Nybegynder
13. maj 2002 - 17:18 #39
Har selv fundet ud af det ;)
Avatar billede jnissen Nybegynder
13. maj 2002 - 17:53 #40
Var det ikke bare de mellemrum i dit indtastningsfelt?
Avatar billede casperhtx Nybegynder
13. maj 2002 - 18:10 #41
Jo, det var det! Nu mangler jeg bare lige at lave siden, hvor posterne fra databasen bliver udskrevet :-)
Avatar billede jnissen Nybegynder
13. maj 2002 - 18:12 #42
Der kan du så prøve at læse http://www.html.dk/tutorials/asp/lektion19.asp.
Men ellers spørg du bare igen :-)
Avatar billede casperhtx Nybegynder
13. maj 2002 - 18:28 #43
Jeg har fået det hele udskrevet til en side, men jeg tænkte på om du ikke kunne hjælpe mig med, hvordan jeg sætter de udskrevne data op på selve siden. Jeg ville godt have dem til at stå i en tabel på en række. Altså så hver post fra tabellen fik en celle hver for sig. Nu udskriver den dataene nedad siden med linieskift efter hver post.
Avatar billede jnissen Nybegynder
13. maj 2002 - 18:41 #44
Der er ikke så svært. Først laver du den html-side du vil have, og laver den tabel du vil have data i. Så er det faktisk bare at sætte <%Response.Write ("navn") %> ind der hvor du vil have navnet ind, og det samme gøre du med email og nyhed.

Prøv :-)
Avatar billede casperhtx Nybegynder
13. maj 2002 - 18:57 #45
Ahh... det kan jeg ikke rigtig få til at virke!
Avatar billede jnissen Nybegynder
13. maj 2002 - 19:01 #46
Kan du ikke lige poste din kode her, så er det nemre at hjælpe.
Avatar billede casperhtx Nybegynder
13. maj 2002 - 19:03 #47
<html>
<head>
<title>Untitled Document</title>
</body>
<p><B>Nyheder</B><br>
  <br>
  På denne side kan de seneste nyheder ses. Det vil også være muligt at se fremtidige
  opdateringer osv.<br>
  Hvis vi afholder nogle special-events, så vil det også komme til at stå under
  vores nyhedssektion,<br>
  så vi opfordrer alle til at følge med i hvad der sker af nye ting. Alt vil blive
  skrevet under nyhedssektionen.</p>
<table width="68%" border="1">
  <tr>
    <td width="29%">
      <%Response.Write ("navn")%>
      &nbsp;</td>
    <td width="37%">&nbsp;</td>
    <td width="34%">&nbsp;</td>
  </tr>
</table>
<p><br>
  <br>
  <%
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("nyhed.mdb")
Conn.Open DSN

strSQL = "Select * from nyheder"
Set rs = Conn.Execute(strSQL)
Do

Response.Write rs("email") & "<br>"
Response.Write rs("nyhed") & "<br>"
rs.MoveNext
Loop While Not rs.EOF

Conn.Close
Set Conn = Nothing
%>
</p>
</html>
Avatar billede jnissen Nybegynder
13. maj 2002 - 19:34 #48
Du skal altid have en database forbindelse i toppen, eller ihvertfald før du skal bruge noget fra den :-)

Men prøv dette.
  <%
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("nyhed.mdb")
Conn.Open DSN

strSQL = "Select * from nyheder"
Set rs = Conn.Execute(strSQL)
%>
<html>
<head>
<title>Untitled Document</title>
</body>
<p><B>Nyheder</B><br>
  <br>
  På denne side kan de seneste nyheder ses. Det vil også være muligt at se fremtidige
  opdateringer osv.<br>
  Hvis vi afholder nogle special-events, så vil det også komme til at stå under
  vores nyhedssektion,<br>
  så vi opfordrer alle til at følge med i hvad der sker af nye ting. Alt vil blive
  skrevet under nyhedssektionen.</p>
  <% Do %>
<table width="68%" border="1">
  <tr>
    <td width="29%"><%Response.Write("navn")%></td>
    <td width="37%"><%Response.Write("email")%></td>
    <td width="34%"><%Response.Write("nyhed")%></td>
  </tr>
</table>
<br>
  <br>
  <%
rs.MoveNext
Loop While Not rs.EOF

Conn.Close
Set Conn = Nothing
%>
<p>

</p>
</html>
Avatar billede casperhtx Nybegynder
13. maj 2002 - 19:51 #49
Det forstår jeg ikke. Nu laver den to ens tabeller med 3 celler, hvor der står navn, email, nyhed, men den udskriver stadigvæk ikke dataene fra databasen.
Avatar billede jnissen Nybegynder
13. maj 2002 - 19:59 #50
nåå, det skal jo også være <%Response.Write RS("navn") %> :-)
Avatar billede casperhtx Nybegynder
13. maj 2002 - 20:07 #51
Jaaa, det virker! Tusind tak for hjælpen.
Avatar billede jnissen Nybegynder
13. maj 2002 - 20:14 #52
Det var så lidt :-)
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