oder VB-SCRPT? Code taucht vor <html> in Ausgabe auf
Elya
- asp.net
Hallo,
ist überhaupt nicht meine Baustelle, aber da meine Kollegen im langen Wochenende sind... verzeiht also meine Ahnungslosigkeit. Ich habe eine ASP-Datei, die eine html-Datei generiert. Nun werden beim Aufruf dieser Seite folgende Zeilen im Quelltext angezeigt:
<%
if Session("userLogin") = "" then
Response.Redirect "../login/example.asp"
end if
%>
Unter IE sieht man das nicht, deswegen ist es bisher noch nicht aufgefallen, aber Mozilla zeigt es schön in der Seite an.
Jetzt dachte ich zunächst an einen kaputten Kommentar oder sowas, innerhalb der ASP-Datei finde ich die o.g. Zeilen jedoch nur teilweise verteilt über das Script:
<%@ Language=VBScript %>
<% [jede Menge Code]
if Session("userLogin") = "" then
[jede Menge Code]
%>
danach habe ich zwar einige Response.Redirect, aber keine auf den o.g. Pfad. Ich habe gegen Null tendierenden Plan von ASP, deshalb meine Frage: unter welchen Umständen kann eine solche Ausgabe passieren? Kann jemand was damit anfangen? Wenn es eine einfache Sache wäre, würde ich den Fehler noch gerne beseitigen vor dem Wochenende.
Danke für jeden Tipp.
Gruß aus Köln-Ehrenfeld,
Elya
Hallo,
nur so auf die Schnelle: es ist IMHO nicht möglich, dass Code, der zwischen <% und %> in irgendeinem Browser angezeigt wird, da der ja auf dem Server abgearbeitet wird. Der Fehler muss also entweder irgendwo ausserhalb der <% stecken, oder diese Zeichenfolgen werden mit response.write ausgegeben.
Wenn du magst, kannst du mir den Code schnell an erni |at| detz .com schicken, dann schaue ich mir das kurz an.
Gruss,
Daniel
Hallo daniel84,
Wenn du magst, kannst du mir den Code schnell an erni |at| detz .com schicken, dann schaue ich mir das kurz an.
danke! hab ich gemacht. Aber bitte antworte mir hier, ich komme im Büro nicht an meine Mails ran...
Gruß aus Köln-Ehrenfeld,
Elya
Hallo Elya
Wenn du magst, kannst du mir den Code schnell an erni |at| detz .com schicken, dann schaue ich mir das kurz an.
danke! hab ich gemacht. Aber bitte antworte mir hier, ich komme im Büro nicht an meine Mails ran...
Die Datei sieht soweit vernünfig aus... Ich denke, die Datei head_haendler.inc, die als erste eingebunden wird, ist Ursache des Phänomens... vielleicht kannst du mir die auch noch schicken?
Gruss,
Daniel
Hallo Daniel,
Die Datei sieht soweit vernünfig aus... Ich denke, die Datei head_haendler.inc, die als erste eingebunden wird, ist Ursache des Phänomens... vielleicht kannst du mir die auch noch schicken?
ähm, ja: ich dachte ich hätte mir die includes angeschaut... darin steht tatsächlich genau dieser String als erstes, und anschließend nur html-Code.
<%
if Session("userLogin") = "" then
Response.Redirect "../login/index.asp"
end if
%>
<html>
[...jede Menge Navigationsgefummel...]
das wird's sein. Die Funktion (?) fs.OpenTextFile() klingt irgendwie nicht so, als sollte da noch irgendwas interpretiert werden. Aber was kann ich tun?
Gruß aus Köln-Ehrenfeld,
Elya
Hallo Elya
Die Datei sieht soweit vernünfig aus... Ich denke, die Datei head_haendler.inc, die als erste eingebunden wird, ist Ursache des Phänomens... vielleicht kannst du mir die auch noch schicken?
ähm, ja: ich dachte ich hätte mir die includes angeschaut... darin steht tatsächlich genau dieser String als erstes, und anschließend nur html-Code.
<%
if Session("userLogin") = "" then
Response.Redirect "../login/index.asp"
end if
%>
<html>
[...jede Menge Navigationsgefummel...]das wird's sein. Die Funktion (?) fs.OpenTextFile() klingt irgendwie nicht so, als sollte da noch irgendwas interpretiert werden. Aber was kann ich tun?
Gute Frage... sehe ich das richtig, dass die Seite nur für eingeloggte Besucher angezeigt werden soll? Wenn das so ist, könntest du ev. folgendes machen (ohne Gewähr):
1. navi_haendler.inc in navi_haendler.asp umbenennen
2. aktuellen Inhalt der sub beginDoc() löschen
3. als neuen Inhalt der sub beginDoc() einzig und alleine folgendes schreiben: server.execute("pfad\global_navi\head_haendler.inc")
So führst du den Code in der head_haendler.asp aus, anstatt in einfach wie eine Textdatei auszugeben.
Aber wie gesagt: alles ohne Gewähr! Sollte aber eigentlich schon nichts passieren ;-)
Gruss,
Daniel
Hallo Daniel,
- als neuen Inhalt der sub beginDoc() einzig und alleine folgendes schreiben: server.execute("pfad\global_navi\head_haendler.inc")
So führst du den Code in der head_haendler.asp aus, anstatt in einfach wie eine Textdatei auszugeben.
klingt einleuchtend, nur habe ich jetzt ein anderes Problem: der "pfad" ist ein aboluter, und da meckert der execute:
-----------
Serverobjekt- Fehler 'ASP 0231 : 80004005'
Server.Execute Fehler
/login/index.asp, line 103
Es wurde eine ungültige URL-Form oder ein voll gekennzeichneter absoluter URL verwendet. Verwenden Sie relative URLs.
----------
Ich hab jetzt mal versuchsweise den überschüssigen asp-Code aus der include-Datei auskommentiert, und das Script scheint einwandfrei zu laufen... ich checke das Montag nochmal, muß jetzt unbedingt ins Wochenende ;-) vielen Dank für Deine Hilfe, ich bin auf alle Fälle weiter gekommen!
Gruß aus Köln-Ehrenfeld,
Elya