hallo,
bei dem folgenden Code bekomme ich eine Fehlemeldung "Die Seite kann nicht angezeigt werden. HTTP 500 Interner Serverfehler. Internet Explorer". Diese Fehlermeldung habe ich schon sehr oft bekommen und einfach war drin in dem Code irgendwelche Fehler zum Korrigieren, dann ging es (mit den Einstellungen des Internet Explorers gar nichts zu tun).
Ich benutze ein SQL Server. Die Tabellen sind LU_Produkt (Produkt_id, Produkt) mit mehr als 300 Zeilen, LU_Fachbereich(Fachbereich_ID, Fachbereich) wobei Fachbereich_ID ist vom Typ varchar 15 ein Beispiel:
Fachbereich_ID Fachbereich
ZITP 1 Unix Services
ZITP 2 Host Services
die dritte Tabelle ist LU_Prod_Prob, die Produkt_id und Fachbereich_ID als Fremdschlüssel hat. Mit Hilfe diesen wird ein Combobox gefüllt. Ich vermute der Fehler könnte bei dem Auslesen von den Tabellen LU_Produkt und LU_Fachbereich. Ich benutze folgenden Code für die Anzeige des Formulars für das Eintragen von Datensätzen(es ist nur ein Teil), wo könnte sich bloß der Fehler befinden?:
CODE <tr><td>Fachbereich:</td>
<td><select name="Fachbereich" style="width:150px;" >
<option>Bitte ausw&auml;hlen</option>
<%
Dim strConn, SQLquery
Set rsFb = Server.CreateObject("ADODB.Recordset")
strConn = "" 'aus Sicherheitsgründen nich angezeigt
Conn.Open strConn
SQLquery="Select * from LU_Fachbereich order by Fachbereich_ID"
rsFb.Open SQLquery, strConn
Do while not rsFb.EOF
Fachbereich_ID = rsFb("Fachbereich_ID").Value
if CStr(Fachbereich_ID) = CStr(Fachbereich) then
%><option value="<% Response.write rsFb("Fachbereich_ID") %>" selected>
<% = rsFb("Fachbereich").Value %>
</option><%
Else
%><option value="<% Response.write rsFb("Fachbereich_ID") %>">
<% = rsFb("Fachbereich").Value %>
</option><%
End if
rsFb.MoveNext
loop
rsFb.Close
%>
</select>
</td></tr>
das gleiche für Produkt
....
<table width=100% align=center>
<tr><td width=100% height=40 class="textback"><center><input type="submit" value="Neuen Eintrag speichern" >&nbsp;
<input type="button" value="Abbrechen" style="width:7em" onClick="self.close()" ></center></td></tr>
</table></form>
</body>
<% end function
'Funktion für das Hinzufügen von Datensätzen
private function InsertIt()
'********************************************************************************************************
'*** Funktion zum Hinzuf&uuml;gen der in die Eingabefelder eingetragene Werte in die Tabelle
'*** Eingabe: ---
'*** Ausgabe: eingetragene Daten werden durch das Request eingelesen
'*** Vorbedingungen: 1. Es werden keine doppelten Eintr&auml;ge f&uuml;r das Feld "RC_Nummer" &uuml;bernommen, sonst Meldung
'***
'********************************************************************************************************
%>
<head>
<title>Eintrag speichern</title>
<link rel="stylesheet" type="text/css" href="format.css">
</head>
<%
'Das Request-Objekt enth&auml;lt vom Browser gesendete und vom Server generierte Daten. Es wird beispiesweise verwendet, um Formulareingaben zu verarbeiten.
Nummer= Request.Querystring("Nummer")
RC_Nummer= Request.Querystring("RC_Nummer")
datum_Beginn = Request.Querystring("tag") & "." & Request.Querystring("monat") & "." & Request.Querystring("jahr") & chr(32) & Request.Querystring("stunde") & ":" & Request.Querystring("Minute") & ":00"
datum_Beginn=CDate(datum_Beginn)
datum_Ende = Request.Querystring("tag") & "." & Request.Querystring("monat") & "." & Request.Querystring("jahr") & chr(32) & Request.Querystring("stunde") & ":" & Request.Querystring("Minute") & ":00"
datum_Ende=CDate(datum_Ende)
Produkt= Request.Querystring("Produkt")
Fachbereich= Request.Querystring("Fachbereich")
RC_Description= Request.Querystring("RC_Description")
Description = Request.Querystring("Description")
Description_plausibel= Request.Querystring("Description_plausibel")
If (RC_Description="") Then RC_Description=Null 'Wenn beim "Report" nichts eingegeben, kann das Eingabefeld leer bleiben
'Schritt 11: Produkt, Dienstleistung durch Spaltennamen(e) ersetzen die keine Null-Eintr&auml;ge haben d&uuml;rfen
If (Nummer="") OR (RC_Nummer="") Then 'Wenn nichts bei "Produkt" eingegeben oder bei "Dienstleistung" asugew&auml;hlt wurde:
%>
<body bgcolor=#ffffea>
<table align=center><tr><td class="textback">Sie haben nicht alle ben&ouml;tigten Felder ausgef&uuml;llt.
Klicken Sie auf den Zur&uuml;ck-Button in Ihrem Browser, um die Eingaben zu erg&auml;nzen</td></tr></table>
<br><br>
<p align="center"><input type="button" value="Zur&uuml;ck" onClick="history.back()"></p>
</body>
<% Else %>
<%
'Durch SQL_test und RS_test wird gepr&uuml;ft ob es in der Datenbank das eingegebene "Produkt" schon in der Tabelle mehrmals vorkommt
Dim SQL_test
Set objRS=Server.CreateObject("ADODB.Recordset")
SQL_test="SELECT COUNT(*) FROM Production_Problem WHERE RC_Nummer='" & RC_Nummer & "'"
Set RS_test=Conn.Execute(SQL_test)
If RS_test(0)=0 Then 'wenn das nicht der Fall w&auml;re:
objRS.Cursortype = 1
objRS.Locktype = 3
SQLquery="SELECT * FROM Production_Problem"
objRS.Open SQLquery, strConn
objRS.AddNew
objRS.Fields("Nummer") = Nummer
objRS.Fields("RC_Nummer") = RC_Nummer
objRS.Fields("Beginn") = datum_Beginn
objRS.Fields("Ende") = datum_Ende
objRS.Fields("Produkt_id") = Produkt
objRS.Fields("Fachbereich_ID") = Fachbereich
objRS.Fields("RC_Description") = RC_Description
objRS.Fields("Description") = Description
objRS.Fields("Description_plausibel") = Description_plausibel
objRS.Update
objRS.UpdateBatch
objRS.close
Set objRS=Nothing
Conn.Close
%>
<head>
<link rel="stylesheet" type="text/css" href="../_rootverzeichnis/format.css">
</head>
<body bgcolor="#ffffea">
<table><tr><td class="textback" height=15>Sie haben folgenden Datensatz in die Tabelle hinzugef&uuml;gt:</td></tr></table>
<p ><b>Nummer:</b>&nbsp;<%= Nummer %></p>
<p ><b>RC_Nummer:</b>&nbsp;<%= RC_Nummer %></p>
<p ><b>Beginn:</b>&nbsp;<%= datum_Beginn %></p>
<p ><b>Ende:</b>&nbsp;<%= datum_Ende %></p>
<p ><b>RC_Description:</b>&nbsp;<%= RC_Description %></p>
<p ><b>Description:</b>&nbsp;<%= Description %></p>
<p ><b>Ist die Description plausibel?:</b>&nbsp;</p>
<%
If Description_plausibel = "True" Then
Response.Write("<p>Ja</p>")
Else
Response.Write("<p>Nein</p>")
End If %>
<center><p ><b><font color="#003366">Ihr Eintrag wurde gespeichert!</font></b></p></center>
bei dem folgenden Code bekomme ich eine Fehlemeldung "Die Seite kann nicht angezeigt werden. HTTP 500 Interner Serverfehler. Internet Explorer". Diese Fehlermeldung habe ich schon sehr oft bekommen und einfach war drin in dem Code irgendwelche Fehler zum Korrigieren, dann ging es (mit den Einstellungen des Internet Explorers gar nichts zu tun).
Ich benutze ein SQL Server. Die Tabellen sind LU_Produkt (Produkt_id, Produkt) mit mehr als 300 Zeilen, LU_Fachbereich(Fachbereich_ID, Fachbereich) wobei Fachbereich_ID ist vom Typ varchar 15 ein Beispiel:
Fachbereich_ID Fachbereich
ZITP 1 Unix Services
ZITP 2 Host Services
die dritte Tabelle ist LU_Prod_Prob, die Produkt_id und Fachbereich_ID als Fremdschlüssel hat. Mit Hilfe diesen wird ein Combobox gefüllt. Ich vermute der Fehler könnte bei dem Auslesen von den Tabellen LU_Produkt und LU_Fachbereich. Ich benutze folgenden Code für die Anzeige des Formulars für das Eintragen von Datensätzen(es ist nur ein Teil), wo könnte sich bloß der Fehler befinden?:
CODE <tr><td>Fachbereich:</td>
<td><select name="Fachbereich" style="width:150px;" >
<option>Bitte ausw&auml;hlen</option>
<%
Dim strConn, SQLquery
Set rsFb = Server.CreateObject("ADODB.Recordset")
strConn = "" 'aus Sicherheitsgründen nich angezeigt
Conn.Open strConn
SQLquery="Select * from LU_Fachbereich order by Fachbereich_ID"
rsFb.Open SQLquery, strConn
Do while not rsFb.EOF
Fachbereich_ID = rsFb("Fachbereich_ID").Value
if CStr(Fachbereich_ID) = CStr(Fachbereich) then
%><option value="<% Response.write rsFb("Fachbereich_ID") %>" selected>
<% = rsFb("Fachbereich").Value %>
</option><%
Else
%><option value="<% Response.write rsFb("Fachbereich_ID") %>">
<% = rsFb("Fachbereich").Value %>
</option><%
End if
rsFb.MoveNext
loop
rsFb.Close
%>
</select>
</td></tr>
das gleiche für Produkt
....
<table width=100% align=center>
<tr><td width=100% height=40 class="textback"><center><input type="submit" value="Neuen Eintrag speichern" >&nbsp;
<input type="button" value="Abbrechen" style="width:7em" onClick="self.close()" ></center></td></tr>
</table></form>
</body>
<% end function
'Funktion für das Hinzufügen von Datensätzen
private function InsertIt()
'********************************************************************************************************
'*** Funktion zum Hinzuf&uuml;gen der in die Eingabefelder eingetragene Werte in die Tabelle
'*** Eingabe: ---
'*** Ausgabe: eingetragene Daten werden durch das Request eingelesen
'*** Vorbedingungen: 1. Es werden keine doppelten Eintr&auml;ge f&uuml;r das Feld "RC_Nummer" &uuml;bernommen, sonst Meldung
'***
'********************************************************************************************************
%>
<head>
<title>Eintrag speichern</title>
<link rel="stylesheet" type="text/css" href="format.css">
</head>
<%
'Das Request-Objekt enth&auml;lt vom Browser gesendete und vom Server generierte Daten. Es wird beispiesweise verwendet, um Formulareingaben zu verarbeiten.
Nummer= Request.Querystring("Nummer")
RC_Nummer= Request.Querystring("RC_Nummer")
datum_Beginn = Request.Querystring("tag") & "." & Request.Querystring("monat") & "." & Request.Querystring("jahr") & chr(32) & Request.Querystring("stunde") & ":" & Request.Querystring("Minute") & ":00"
datum_Beginn=CDate(datum_Beginn)
datum_Ende = Request.Querystring("tag") & "." & Request.Querystring("monat") & "." & Request.Querystring("jahr") & chr(32) & Request.Querystring("stunde") & ":" & Request.Querystring("Minute") & ":00"
datum_Ende=CDate(datum_Ende)
Produkt= Request.Querystring("Produkt")
Fachbereich= Request.Querystring("Fachbereich")
RC_Description= Request.Querystring("RC_Description")
Description = Request.Querystring("Description")
Description_plausibel= Request.Querystring("Description_plausibel")
If (RC_Description="") Then RC_Description=Null 'Wenn beim "Report" nichts eingegeben, kann das Eingabefeld leer bleiben
'Schritt 11: Produkt, Dienstleistung durch Spaltennamen(e) ersetzen die keine Null-Eintr&auml;ge haben d&uuml;rfen
If (Nummer="") OR (RC_Nummer="") Then 'Wenn nichts bei "Produkt" eingegeben oder bei "Dienstleistung" asugew&auml;hlt wurde:
%>
<body bgcolor=#ffffea>
<table align=center><tr><td class="textback">Sie haben nicht alle ben&ouml;tigten Felder ausgef&uuml;llt.
Klicken Sie auf den Zur&uuml;ck-Button in Ihrem Browser, um die Eingaben zu erg&auml;nzen</td></tr></table>
<br><br>
<p align="center"><input type="button" value="Zur&uuml;ck" onClick="history.back()"></p>
</body>
<% Else %>
<%
'Durch SQL_test und RS_test wird gepr&uuml;ft ob es in der Datenbank das eingegebene "Produkt" schon in der Tabelle mehrmals vorkommt
Dim SQL_test
Set objRS=Server.CreateObject("ADODB.Recordset")
SQL_test="SELECT COUNT(*) FROM Production_Problem WHERE RC_Nummer='" & RC_Nummer & "'"
Set RS_test=Conn.Execute(SQL_test)
If RS_test(0)=0 Then 'wenn das nicht der Fall w&auml;re:
objRS.Cursortype = 1
objRS.Locktype = 3
SQLquery="SELECT * FROM Production_Problem"
objRS.Open SQLquery, strConn
objRS.AddNew
objRS.Fields("Nummer") = Nummer
objRS.Fields("RC_Nummer") = RC_Nummer
objRS.Fields("Beginn") = datum_Beginn
objRS.Fields("Ende") = datum_Ende
objRS.Fields("Produkt_id") = Produkt
objRS.Fields("Fachbereich_ID") = Fachbereich
objRS.Fields("RC_Description") = RC_Description
objRS.Fields("Description") = Description
objRS.Fields("Description_plausibel") = Description_plausibel
objRS.Update
objRS.UpdateBatch
objRS.close
Set objRS=Nothing
Conn.Close
%>
<head>
<link rel="stylesheet" type="text/css" href="../_rootverzeichnis/format.css">
</head>
<body bgcolor="#ffffea">
<table><tr><td class="textback" height=15>Sie haben folgenden Datensatz in die Tabelle hinzugef&uuml;gt:</td></tr></table>
<p ><b>Nummer:</b>&nbsp;<%= Nummer %></p>
<p ><b>RC_Nummer:</b>&nbsp;<%= RC_Nummer %></p>
<p ><b>Beginn:</b>&nbsp;<%= datum_Beginn %></p>
<p ><b>Ende:</b>&nbsp;<%= datum_Ende %></p>
<p ><b>RC_Description:</b>&nbsp;<%= RC_Description %></p>
<p ><b>Description:</b>&nbsp;<%= Description %></p>
<p ><b>Ist die Description plausibel?:</b>&nbsp;</p>
<%
If Description_plausibel = "True" Then
Response.Write("<p>Ja</p>")
Else
Response.Write("<p>Nein</p>")
End If %>
<center><p ><b><font color="#003366">Ihr Eintrag wurde gespeichert!</font></b></p></center>