automatische Weiterleitung

Django, Flask, Bottle, WSGI, CGI…
Antworten
Duke
User
Beiträge: 10
Registriert: Donnerstag 24. August 2006, 13:24

Gibt es eine Möglichkeit, automatisch eine neue dtml-Methode aufzurufen? Ich habe bisher dazu nichts gefunden. Bei JSPs gibt es ja die Möglichkeit mit:

<jsp:forward page="login.jsp">
<jsp:param name="errMsg"
value="The name or password is not valid" />
</jsp:forward>

Nur mal als Beispiel. Suche sowas in der Richtung unter DTML?
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Duke hat geschrieben:Gibt es eine Möglichkeit, automatisch eine neue dtml-Methode aufzurufen?
Hi Duke!

Code: Alles auswählen

<dtml-call expr="RESPONSE.redirect('home.html')">
mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Duke
User
Beiträge: 10
Registriert: Donnerstag 24. August 2006, 13:24

Recht herzlichen Dank :D
Duke
User
Beiträge: 10
Registriert: Donnerstag 24. August 2006, 13:24

hab jetzt aber n weiteres Problem. Wollte die Weiterleitung nutzen, um zu einem 'Anchor' auf der Seite zu springen. Das funzt aber nicht. Er meldet immer "The page isn't redirecting properly"

Schildere vielleicht mal mein Problem genauer. Ich lasse in einer html-form die Seite nochmal sich selbst aufrufen und will dann gleich zu einer bestimmten Stelle springen. Weil sich wieder durch die gesamte Seite zu forsten, ist sehr mühselig. Deshalb sind auf der Seite mehrere hundert Anchor verteilt. Mit der -html-Form übergebe ich den Anchornamen. Den String manipulier ich, indem ich einfach ein # davor setze und dann wollte ich beim neuen Aufruf automatisch an die Stelle springen. Geht das irgendwie?
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Duke hat geschrieben:Den String manipulier ich, indem ich einfach ein # davor setze und dann wollte ich beim neuen Aufruf automatisch an die Stelle springen.
Hi Duke!

Code: Alles auswählen

<dtml-call expr="RESPONSE.redirect('home.html#aaa')">
Dieser Code funktioniert bei mir aber.

Im Ziel habe ich zum Testen diesen Anker eingebaut:

Code: Alles auswählen

<a name="aaa" />
mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Duke
User
Beiträge: 10
Registriert: Donnerstag 24. August 2006, 13:24

Wenn mans so macht schon, aber ich habe ein weiteres Problem. Ich übergebe mit der html-Form mehrere Parameter, die so nicht wieder weitergegeben werden können. Ich will nur den Anker aufrufen... also wie bei einem Link: <a href="#aaa">Link</a>
Nur geht das hier nicht. Gibts es noch eine andere Möglichkeit?
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Duke hat geschrieben:Ich übergebe mit der html-Form mehrere Parameter, die so nicht wieder weitergegeben werden können. Ich will nur den Anker aufrufen... also wie bei einem Link: <a href="#aaa">Link</a>
Hi Duke!

Sagte ich schon, dass du dich mit DTML früher oder später total verrennen wirst? Zumindest ist es mir so passiert. Seit dem setze ich nur noch "Zope Page Templates" ein.

Code: Alles auswählen

<dtml-call expr="RESPONSE.redirect('home.html?vorname=Gerold&Nachname=Penz#aaa')">
Falls jetzt "vorname" oder "nachname" dynamisch aus dem REQUEST kommt, dann musst du den URL natürlich auch dynamisch zusammensetzen. Wie das aber mit DTML geht, habe ich erfolgreich verdrängt. ;-) Ich weiß es einfach nicht mehr.

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Antworten