PDA

Vollständige Version anzeigen : DSN Lees und ASP


telebim
03.08.2002, 00:38
Moin zusammen,

bin mit der Materie recht neu, also lacht nicht.

Folgendes:

Habe ein html Formular welches z.b. 1 Suchfeld hat (Name).
Das dort eingegebene soll dsn lees an eine ASP übergeben werden.
Die Datenbank hab ich eingebunden, das war nicht das Problem, doch wie schaffe ich es, dass die Variable von der html an ASP übergeben wird.
Und wie muss der Code in der ASP aussehen ?

Sorry, hab weder mit FP noch mit ASP bisher viel am Hut gehabt. Wäre nett, wenn mir da jemand ein kurzes Beispiel hätte.

DANKÄÄÄÄÄ !

Klaus Keller
03.08.2002, 03:04
Hallo telebim,

Das ist ja eine ganze Menge, die Du da wissen möchtest. HTML- und ASP-Code wäre nicht schlecht. Denn zum einen weiss ich nicht, wieviel Du weisst, noch was Du genau möchtest. Eine präzisere Frage wäre daher besser. Aber ich möchte da einmal auf die schnelle ein Beispiel darstellen:

Die HTML-Seite:
<font color="#101080" face="Courier,New Courier,arial,sans,sans-serif" size="12px" style="color:#101080;font-size:18px;font-family:Courier,New Courier,arial,sans;">&lt;form action="Test.asp" method="post"&gt;
&nbsp;&nbsp;&lt;input type="text" name="Name"&gt;&lt;br&gt;
&nbsp;&nbsp;&lt;input type="text" name="Text"&gt;&lt;br&gt;
&nbsp;&nbsp;&lt;input type="Submit" name="submit" value="Los!"&gt;
&lt;/form&gt;</font>

Die ASP-Seite:
<font color="#101080" face="Courier,New Courier,arial,sans,sans-serif" size="12px" style="color:#101080;font-size:18px;font-family:Courier,New Courier,arial,sans;">&lt;%
Public Name, Text, rs, strPfadDB

set rs = Server.CreateObject("ADODB.Recordset")

Name = Request("Name")
Text = Request("Text")
strPfadDB = "Provider=Microsoft.Jet.OLEDB.4.0;Mode=ReadWrite;"
strPfadDB = strPfadDB & "Persist Security Info=False;Data Source="
strPfadDB = strPfadDB & Server.Mappath("\db\Test.mdb")

'Daten in DB schreiben
SQL="INSERT tblTest (Name,Text) VALUES ('" & Name & "','" & Text & "')"
rs.open SQL, strPfadDB, 3, 3

'Daten aus DB lesen
SQL = "Select * from tblTest Where Name = '" & Name & "'"
rs.open SQL, strPfadDB, 3, 3

Do while not rs.eof
&nbsp;&nbsp;Response.Write("Name:" & rs("Name") & ";Text:" & rs("Text"))
&nbsp;&nbsp;Response.Write("&lt;br&gt;")
&nbsp;&nbsp;rs.moveNext
Loop

rs.close
set rs = nothing
%&gt;</font>

Was macht die ASP-Seite? Es gibt für die gleiche Aufgabe oftmals viele Möglichkeiten, vor allem im DB-Bereich. Zeile "set rs=.." hier wird ein Recordset für die DB erstellt, kann allerdings auch mit dem Connection-objekt erfolgen. Aber das Recordset finde ich einfach schneller und einfacher.

strPfadDB: DB-Treiber, es kann auch eine DSN verwendet werden, aber ein OLE-String ist einfach am schnellsten. Falls Pfad zur DB nicht genau bekannt ist, kannst Du Server.Mappath verwenden, ansonsten kannst Du den Pfad angeben.

Insert-Anweisung: Daten die in Text & Memofelder geschrieben werden müssen, müssen in ASP zwischen ' Apostrophen ' stehen, wie hier dargestellt. in rs.open wird die SQL-Anweisung ausgeführt.

Daten auslesen:
Die Schleife "Do while not" stellt alle Datensätze dar. Zuletzt noch das Recordset schliessen und terminieren.

Ich hoffe, ich konnte weiterhelfen. Ansonsten gilt: Hier sind Fragen erlaubt! Wünsche noch einen schönen Tag!

MfG & CU & Thänx weri Matsch
Klaus Keller

telebim
03.08.2002, 17:04
Hallo Klaus,

danke für die Infos.
War zwa rnicht ganz das was ich gesucht habe, aber ich habs mittlerweile geschafft.

Gruß Ralf

(die von der telebim machen das schon <img src="graemlins/lachen.gif" border="0" alt="[Lachen]" /> )