keine Fehlermeldungen - trotzdem klappt es nicht
Sabine
- asp.net
Hi, bin im Moment an einem Projekt dran und steh noch ganz am Anfang meiner "Laufbahn" - bräuchte also dringend Hilfe.
Habe eine HTML-Seite mit einer dazugehörigen ASP-Seite. Ziel ist einfach über das HTML-Formular Daten aus der Datenbank abzurufen und auszugeben.
Bitte nicht erschrecken, das ist die ABSOLUTE Rohfassung!
Vielleicht schaut Ihr Euch es einfach mal an:
<html>
<head> <title> Kunde </title> </head>
<body>
<div align="center">
<br><br><br> <h1> Kunde </h1> <br><br><br><br>
<form action="kunde.asp" method="post">
<select name="Kunde" size="">
<option value="1"> Kunde 1 </option>
<option value="2"> Kunde 2 </option>
<option value="3" selected> Kunde 3 </option>
<option value="4"> Kunde 4 </option>
<option value="5"> Kunde 5 </option> </select>
<br><br><br>
<input type="Submit" name="1" value="Anfrage senden">
</form>
</div>
</body>
</html>
<html>
<head><title>Kunde-ASP</title></head>
<body> <div align="center">
<%
DIM mKNR
DIM objCon, strDB, strCon, ObjRs
strDB="Data Source"= & Server.MapPath("/Auftrag.mdb")
strCon="Provider=Microsoft.Jet.OLEDB.4.0;" & strDB
mKNR=request.form("Kunde")
SET objCon=Server.CreateObject("ADODB.Connection")
SET ObjRS=Server.CreateObject("ADODB.Recordset")
objCon.open strCon
mSQL="Select KunID, KunFirma, KunOrt, KunTelefon FROM TabKunden WHERE KunID=mKNR;"
objRS.open mSql, objCon
objRS.MoveFirst
%>
<h2> Name: <% response.write objRS("KunFirma") %> </h2>
<br>
<h4>KNR: <% response.write objRS("KunID") %> <br>
Adresse: <% response.write objRS("KunOrt") %> <br>
Kontakt: <% response.write objRS("KunTelefon") %> </h4>
<br><br><br>
<%
mSQL="Select AufID, PosID, LeiID FROM TabAuftraege INNERJOIN TabPositionen on TabAuftraege.AufID=TabPositionen.AUFID WHERE KunID=mKNR;"
objRS.open msql, objCon
objRS.MoveFirst
%>
<table border="1">
<tr>
<th> Auftragsnummer </th>
<th> Positionsnummer </th>
<th> Beschreibung </th>
</tr>
<% While not objRS.EOF %>
<tr> <td> <% response.write objRS("AufID") %> </td>
<td> <% response.write objRS("PosID") %> </td>
<td> <% response.write objRS("LeiID") %> </td> </tr>
<%
objRS.movenext
wend
objCon.Close
%>
</div>
</body>
</html>
Bin echt über jede Hilfe dankbar!
Hi,
Vielleicht schaut Ihr Euch es einfach mal an:
ohne eine Fehlerbeschreibung von Dir ist das sinnfrei.
Cheatah
Fehlerbeschreibung?
Ich geh in HTML zum Beispiel auf Kunde1, klicke auf Senden und alles was erscheint ist eine HTML-Seite, auf der oben in der Mitte "Kunde" usw steht und unten ist die dreispaltige Tabelle.
Die Daten, die aus der Datenbank eingelesen werden sollten, werden einfach nicht eingelesen und ich habe den Fehler nicht gefunden.
Was ich ungefähr 10mal überprüft habe, sind die Bezeichnungen von Tabellen und Attributen innerhalb der Datenbank - daran dürfte also nichts falsch sein.
Hi,
Fehlerbeschreibung?
[...]
was haben Deine Debug-Ausgaben ergeben?
Was ich ungefähr 10mal überprüft habe, sind die Bezeichnungen von Tabellen und Attributen innerhalb der Datenbank - daran dürfte also nichts falsch sein.
Hast Du auch überprüft, was in Wirklichkeit in Deinem Script passiert?
Cheatah
Sei nicht böse auf ihn, er aht heute einen schelchten tag.
oder er ist immer so, bin mir nicht sicher.
Sei nicht böse auf ihn, er aht heute einen schelchten tag.
oder er ist immer so, bin mir nicht sicher.
Danke, und was mach ich jetzt?
Laut Debugger sind sämtliche VBScript-Tags unbekannt.
Bin hier total am verzweifeln...
Sei nicht böse auf ihn, er aht heute einen schelchten tag.
oder er ist immer so, bin mir nicht sicher.Danke, und was mach ich jetzt?
Laut Debugger sind sämtliche VBScript-Tags unbekannt.
Bin hier total am verzweifeln...
tut mir leid.
hab von asp und vbs noch keine ahnung
Hast Du meine Antwort nicht gesehen, keine Lust mehr oder versuchst Du gerade mir zu helfen?
Hatte um 20.11 Uhr nochmal geantwortet...
Hast Du meine Antwort nicht gesehen, keine Lust mehr oder versuchst Du gerade mir zu helfen?
Hatte um 20.11 Uhr nochmal geantwortet...
habs gesehen, hab aber leider keine ahnung davon.
hatte vorhin ein problem mit wegen einer tabelle und einem bild und jetzt streit ich schon die ganze zeit mit cheatah über alt, jpeg, bmp und browser
Hatte auch eigentlich Cheatah damit gemeint aber ist egal. WErd schon irgendwie hinkriegen.
Trotzdem vielen Dank!
Hi,
Danke, und was mach ich jetzt?
die Ergebnisse Deiner Debug-Ausgaben nennen,
Laut Debugger sind sämtliche VBScript-Tags unbekannt.
anstatt an einem Debugger zu verzweifeln.
Cheatah
die Ergebnisse Deiner Debug-Ausgaben nennen,
Zeile1, Spalte 1, TAG unbekannt
Zeile 5, Spalte 1, TAG unbekannt
Zeile 35, Spalte 12, TAG unbekannt
Zeile 37, spalte 10, TAG unbekannt
Zeile 38, Spalte 10, TAG unbekannt
Zeile 39, Spalte 10, TAG unbekannt
usw.
hier nochmal der ASP-Teil, hab im Forum ein paar Leerzeilen weggelassen
<% @ Language=VBScript %>
<html>
<head><title>Kunde-ASP</title></head>
<body> <div align="center">
<%
DIM mKNR
DIM objCon, strDB, strCon, ObjRs
strDB="Data Source"= & Server.MapPath("/Auftrag.mdb")
strCon="Provider=Microsoft.Jet.OLEDB.4.0;" & strDB
mKNR=request.form("Kunde")
SET objCon=Server.CreateObject("ADODB.Connection")
SET ObjRS=Server.CreateObject("ADODB.Recordset")
objCon.open strCon
mSQL="Select KunID, KunFirma, KunOrt, KunTelefon FROM TabKunden WHERE KunID=mKNR;"
objRS.open mSql, objCon
objRS.MoveFirst
%>
<h2> Name: <% response.write objRS("KunFirma") %> </h2>
<br>
<h4>KNR: <% response.write objRS("KunID") %> <br>
Adresse: <% response.write objRS("KunOrt") %> <br>
Kontakt: <% response.write objRS("KunTelefon") %> </h4>
<br><br><br>
<%
mSQL="Select AufID, PosID, LeiID FROM TabAuftraege INNERJOIN TabPositionen on TabAuftraege.AufID=TabPositionen.AUFID WHERE KunID=mKNR;"
objRS.open msql, objCon
objRS.MoveFirst
%>
<table border="1">
<tr>
<th> Auftragsnummer </th>
<th> Positionsnummer </th>
<th> Beschreibung </th>
</tr>
<% While not objRS.EOF %>
<tr> <td> <% response.write objRS("AufID") %> </td>
<td> <% response.write objRS("PosID") %> </td>
<td> <% response.write objRS("LeiID") %> </td> </tr>
<%
objRS.movenext
wend
objCon.Close
%>
</div>
</body>
</html>
Hi,
Sei nicht böse auf ihn, er aht heute einen schelchten tag.
äh, bitte? Ich versuche gerade, die notwendigen Informationen zu sammeln, um überhaupt mit einer Problemanalyse beginnen zu können.
oder er ist immer so, bin mir nicht sicher.
Zu welcher Du übrigens auch nicht viel beigetragen hast, soweit ich das sehen kann.
Cheatah
Stimmt.
Ich habe ihr nur gesagt das sie deine art nicht missverstehen soll und hab noch einen kleinen hieb ausgeführt.
Stimmt.
Ich habe ihr nur gesagt das sie deine art nicht missverstehen soll und hab noch einen kleinen hieb ausgeführt.
Was willst Du eigentlich hier erreichen? Cheatah hat ein großes Fachwissen, von dem andere oft profiteren können. Offenbar hast Du keine Ahnung. Die bmp-Debatte war lächerlich! Das ist hier ein Forum für professionelle Webgestalter. Wenn Du Leute ärgern willst, empfehle ich Telefonstreiche. Mehr gehe ich übrigens auf Dich nicht mehr ein, das wäre mir zu blöd! Wollte nur ausdrücken, was hier nicht erwünscht ist.
Was willst Du eigentlich hier erreichen? Cheatah hat ein großes Fachwissen, von dem andere oft profiteren können. Offenbar hast Du keine Ahnung. Die bmp-Debatte war lächerlich! Das ist hier ein Forum für professionelle Webgestalter. Wenn Du Leute ärgern willst, empfehle ich Telefonstreiche. Mehr gehe ich übrigens auf Dich nicht mehr ein, das wäre mir zu blöd! Wollte nur ausdrücken, was hier nicht erwünscht ist.
Ich wollte nur eine eine Lösung für mein Problem finden.
Ich habe die BMP debatte nicht begonnen.
Gut, wenn das ein Forum für professionelle Webgestalter ist, dann muss er abe auch akzeptieren das ich noch keiner bin.
Mit Telefonstreichen habe ich keine Erfahrung, erzähl mir mehr.
Ich geh auch nciht auf merh ein.
THomas
Find ich ja nett, dass ihr hier versucht euch gegenseitig fertig zu machen, aber mein Problem wird dadurch auch nicht besser.
Ich habe das Forum hier zum ersten Mal ausprobiert und werde es wohl weder weiter empfehlen noch benutzen - manche Antworten waren echt hilfreich, aber das muss nicht sein.
Tut mir leid, ich bin neu. Ich hab mich ein bisschen durch Cheatah provoziert gefühlt.
Sei nicht böse auf ihn, er aht heute einen schelchten tag.
oder er ist immer so, bin mir nicht sicher.
Thomas, geh weg!
Sei nicht böse auf ihn, er aht heute einen schelchten tag.
oder er ist immer so, bin mir nicht sicher.Thomas, geh weg!
Tut mir leid, aber das hab ich gebraucht.
Hallo,
da muß man ja erst mal die Glaskugel wieder aus dem Schrank holen ;)
<%
DIM mKNR
DIM objCon, strDB, strCon, ObjRsstrDB="Data Source"= & Server.MapPath("/Auftrag.mdb")
strCon="Provider=Microsoft.Jet.OLEDB.4.0;" & strDB
mKNR=request.form("Kunde")
Ok, da hatten wir zumindest mal die Kundennummer. Allerdings
solltest du bedenken, dass dir jemand auch einen "falschen"
Wert (Stichwort: SQL Injection, Google hilft dir da weiter)
unterjubelt. Aber das ist hier zumindest nicht dein Problem.
mSQL="Select KunID, KunFirma, KunOrt, KunTelefon FROM TabKunden WHERE KunID=mKNR;"
So, da versucht Access jetzt, die Spalte mKNR in der Tabelle TabKunden
zu finden. Das schlägt natürlich fehl. Der SQL String sollte so aussehen:
mSQL="Select KunID, KunFirma, KunOrt, KunTelefon FROM TabKunden WHERE KunID = " & mKNR
objRS.open mSql, objCon
objRS.MoveFirst
Das hier ist unnötigt, da sich das Recordset nach dem Öffnen immer
auf dem ersten Datensatz befindet (wenn einer vorhanden ist).
Du solltest eher prüfen, ob ein Datensatz gefunden wurde:
If Not objRS.EOF Then
...
End if
mSQL="Select AufID, PosID, LeiID FROM TabAuftraege INNERJOIN TabPositionen on TabAuftraege.AufID=TabPositionen.AUFID WHERE KunID=mKNR;"
Vor dem Öffnen des Recordsets mit neuem SQL Statement solltest du
es zuerst einmal schließen.
objRS.Close
Und hier nochmal das mit der Variablen mKNR:
mSQL="Select AufID, PosID, LeiID FROM TabAuftraege INNERJOIN TabPositionen on TabAuftraege.AufID=TabPositionen.AUFID WHERE KunID = " & mKNR
Und auch wieder auf objRS.EOF prüfen.
objCon.Close
Am Schluß sollte noch: Set objRS = Nothing stehen.
Tschau, Stefan
<% @ Language=VBScript %>
<html>
<head><title>Kunde-ASP</title></head>
<body> <div align="center">
<%
DIM mKNR
DIM objCon, strDB, strCon, ObjRs
strDB="Data Source"= & Server.MapPath("/Auftrag.mdb")
strCon="Provider=Microsoft.Jet.OLEDB.4.0;" & strDB
Die Datei sieht jetzt so aus: (Aber es klappt immer noch nicht. Wenn man der Wald vor lauter Bäumen nicht mehr sieht... Und ich wollte ab Oktober Informatik studieren - Hahaha)
mKNR=request.form("Kunde")
SET objCon=Server.CreateObject("ADODB.Connection")
SET ObjRS=Server.CreateObject("ADODB.Recordset")
objCon.open strCon
mSQL="Select KunID, KunFirma, KunOrt, KunTelefon FROM TabKunden WHERE KunID = " & mKNR;"
If Not objRS.EOF Then
...
End if
objRS.open mSql, objCon
objRS.MoveFirst
%>
<h2> Name: <% response.write objRS("KunFirma") %> </h2>
<br>
<h4>KNR: <% response.write objRS("KunID") %> <br>
Adresse: <% response.write objRS("KunOrt") %> <br>
Kontakt: <% response.write objRS("KunTelefon") %> </h4>
<br><br><br>
<%
objRS.Close
mSQL="Select AufID, PosID, LeiID FROM TabAuftraege INNERJOIN TabPositionen on TabAuftraege.AufID=TabPositionen.AUFID WHERE KunID=" & mKNR;"
If Not objRS.EOF Then
...
End if
objRS.open msql, objCon
objRS.MoveFirst
%>
<table border="1">
<tr>
<th> Auftragsnummer </th>
<th> Positionsnummer </th>
<th> Beschreibung </th>
</tr>
<% While not objRS.EOF %>
<tr> <td> <% response.write objRS("AufID") %> </td>
<td> <% response.write objRS("PosID") %> </td>
<td> <% response.write objRS("LeiID") %> </td> </tr>
<%
objRS.movenext
wend
objCon.Close
Set objRS = Nothing
%>
</div>
</body>
</html>
Hallo Sabine,
Wenn ich nichts übersehen habe sind hier noch Fehler:
mSQL="Select KunID, KunFirma, KunOrt, KunTelefon FROM TabKunden WHERE KunID = " & mKNR;"
Sollte heissen:
mSQL="Select KunID, KunFirma, KunOrt, KunTelefon FROM TabKunden WHERE KunID = " & mKNR
oder
mSQL="Select KunID, KunFirma, KunOrt, KunTelefon FROM TabKunden WHERE KunID = " & mKNR & ";"
(Anzahl öffnende und schliessende Anführungszeichen nicht gleich, das Semikolon am Ende ist soweit ich weiss nicht zwingend notwendig)
Hier dasselbe:
mSQL="Select AufID, PosID, LeiID FROM TabAuftraege INNERJOIN TabPositionen on TabAuftraege.AufID=TabPositionen.AUFID WHERE KunID=" & mKNR;"
Grüße
Andreas