Passworteingabe funktionsfähig machen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
arbeiten
bemerkung
code
dank
datei
eintragen
entfernen
formular
header
http
korrigierte code
mechanismus
page
pfad
punkt
stelle
stimmen
testen
umzug
url
-
hallo
wer kann mir helfen, mein passworteingabeformular funktionstüchtig zu machen.
wie weit ich bisher gekommen bin, seht ihr hier
irgendwo mache ich was falsch, dass es nicht funktioniert.
vieleicht ist die datei falsch gelagert. oder der einbaucode der php-datei in die html-seite muss anders geschrieben werden. ich weiss es einfach nicht.
Beitrag zuletzt geändert: 27.1.2010 1:52:37 von snottomo -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Problem dürfte wohl oder übel der leere "action"-Teil sein. Das lässt sich solange es nur auf dieser Seite bleibt einfach eintragen, wenn du allerdings auch bei einem Umzug noch gut dabei sein wird wäre ein bisschen PHP an der Stelle auch noch notwendig.
<?php if ( !empty($_POST['pw']) ) { // ----- zur Seite ----- header("Location: "deinpfad/".$_POST['pw'].".html"); } else { // ----- Formular ------ echo ' <form name="form1" method="post" action="http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] . '/> Passwort: <input type="text" name="pw" size="24"> OK: <input type="submit" name="go" value="weiter"> </form> '; ?>
-
karlsve schrieb:
Problem dürfte wohl oder übel der leere "action"-Teil sein. Das lässt sich solange es nur auf dieser Seite bleibt einfach eintragen, wenn du allerdings auch bei einem Umzug noch gut dabei sein wird wäre ein bisschen PHP an der Stelle auch noch notwendig.
<?php if ( !empty($_POST['pw']) ) { // ----- zur Seite ----- header("Location: "deinpfad/".$_POST['pw'].".html"); } else { // ----- Formular ------ echo ' <form name="form1" method="post" action="http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] . '/> Passwort: <input type="text" name="pw" size="24"> OK: <input type="submit" name="go" value="weiter"> </form> '; ?>
irgendwie muss ich grundsaetzlich was nicht richtig machen.
es funktioniert nicht.
was ich bisher gemacht habe,
ist hier
beschrieben.
oder falls die seite noch nicht aktualisiert angezeigt wird,
dann vorruebergehend
hier klicken.
Beitrag zuletzt geändert: 27.1.2010 4:34:52 von snottomo -
<?php if ( !empty($_POST['pw']) ) { // ----- zur Seite ----- header("Location: deinpfad/".$_POST['pw'].".html"); } else { // ----- Formular ------ echo ' <form name="form1" method="post" action="http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] . '/"> Passwort: <input type="text" name="pw" size="24" /> OK: <input type="submit" name="go" value="weiter"> </form> '; } ?>
so hier der korrigierte code habe es auch getestet :)
Vorher hatte ich keine Zeit zum testen. -
yo mey!
I. location im heder MUSS absolut sein, also in etwa: "Location: http://example.org/<path/...>/<name>.<suffix>"
II. action in for muss wiederum NICHT absolut sein.
daher lösung nr. eins, funktioniert nur im selben pfad und nur wenn das ziel existiert! sonst klescht es herrlich :o)) (oder muss 404-Seite oder adequater mechanismus her):
oder lösung nr. zwei, funktioniert zu allen pfade (allerding muss auch noch suffix [.html, .php &. eingegeben werden]) und klescht es auch, falls nicht vorhanden (404 seite oder adequater mechanismus!).<?php echo ( isset ($_POST['pw']) and $_POST['pw'] !== "" ) ? header ("Location: http://{$_SERVER['SERVER_NAME']}".str_replace ($_SERVER['DOCUMENT_ROOT'],"",dirname (__FILE__))."/{$_POST['pw']}.html"): "<form name=\"form1\" method=\"post\" action=\"./".basename (__FILE__)."\"> Zieldatei: <input type=\"text\" name=\"pw\" size=\"24\"> OK: <input type=\"submit\" name=\"go\" value=\"weiter\"> </form>\n"; ?>
(die vorige lösung ist hier nur auskommentiert)<?php echo ( isset ($_POST['pw']) and $_POST['pw'] !== "" ) ? //header ("Location: http://{$_SERVER['SERVER_NAME']}".str_replace ($_SERVER['DOCUMENT_ROOT'],"",dirname (__FILE__))."/{$_POST['pw']}.html"): header ("Location: http://{$_SERVER['SERVER_NAME']}/{$_POST['pw']}"): "<form name=\"form1\" method=\"post\" action=\"./".basename (__FILE__)."\"> Zieldatei: <input type=\"text\" name=\"pw\" size=\"24\"> OK: <input type=\"submit\" name=\"go\" value=\"weiter\"> </form>\n"; ?>
private bemerkung: halte nichts von solchen konstruktionen :o( mal nachdenken warum? )o:
außerdem irritiert der ausdruck 'pw'. ist doch kein!
==== edit ====
oder wie es auf deiner seite steht, kannst es wirklich EINZEILIG machen :o):
<?php echo ( isset ($_POST['pw']) and $_POST['pw'] !== "" ) ? header ("Location: http://{$_SERVER['SERVER_NAME']}/{$_POST['pw']}"): "<form name=\"form1\" method=\"post\" action=\"./".basename (__FILE__)."\">Zieldatei: <input type=\"text\" name=\"pw\" size=\"24\">OK: <input type=\"submit\" name=\"go\" value=\"weiter\"></form>\n"; ?>
Beitrag zuletzt geändert: 27.1.2010 7:12:55 von czibere -
karlsve schrieb:
<?php if ( !empty($_POST['pw']) ) { // ----- zur Seite ----- header("Location: deinpfad/".$_POST['pw'].".html"); } else { // ----- Formular ------ echo ' <form name="form1" method="post" action="http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] . '/"> Passwort: <input type="text" name="pw" size="24" /> OK: <input type="submit" name="go" value="weiter"> </form> '; } ?>
so hier der korrigierte code habe es auch getestet :)
Vorher hatte ich keine Zeit zum testen.
erst ein mal danke fuer deine muehe.
habe jetzt folgenden code eingebaut
<?php if ( !empty($_POST['pw']) ) { // ----- zur Seite ----- header("Location: http://snottomo.lima-city.de/webschule/".$_POST['pw'].".html"); } else { // ----- Formular ------ echo ' <form name="form1" method="post" action="http://snottomo.lima-city.de/webschule/' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] . '/"> Passwort: <input type="text" name="pw" size="24" /> OK: <input type="submit" name="go" value="weiter"> </form> '; } ?>
das formular wird angezeigt, leitet jedoch weiter auf
http://snottomo.lima-city.de/webschule/snottomo.lima-city.de/webschule/pvv-zeile-karlsve-d-php.php/
die eingabe
passwort-1
soll aber
http://snottomo.lima-city.de/webschule/passwort-1.html
erreichen.
habe ich evtl. bei "Location" oder "action" etwas falsch eingetragen?
die uebung kann hier, oder kurzfristig auch
hier nachvollzogen werden.
Beitrag zuletzt geändert: 29.1.2010 5:02:15 von snottomo -
snottomo schrieb:
karlsve schrieb:
<?php if ( !empty($_POST['pw']) ) { // ----- zur Seite ----- header("Location: deinpfad/".$_POST['pw'].".html"); } else { // ----- Formular ------ echo ' <form name="form1" method="post" action="http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] . '/"> Passwort: <input type="text" name="pw" size="24" /> OK: <input type="submit" name="go" value="weiter"> </form> '; } ?>
so hier der korrigierte code habe es auch getestet :)
Vorher hatte ich keine Zeit zum testen.
erst ein mal danke fuer deine muehe.
habe jetzt folgenden code eingebaut
<?php if ( !empty($_POST['pw']) ) { // ----- zur Seite ----- header("Location: http://snottomo.lima-city.de/webschule/".$_POST['pw'].".html"); } else { // ----- Formular ------ echo ' <form name="form1" method="post" action="http://snottomo.lima-city.de/webschule/' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] . '/"> Passwort: <input type="text" name="pw" size="24" /> OK: <input type="submit" name="go" value="weiter"> </form> '; } ?>
Guck mal bei dem header Befehl hast du einen Punkt falsch gesetzt du hast .". anstatt ." geschrieben.
Weiterhin kannst du ja mal zwischen Location: und deinem Pfad den Whitespace (Leerzeichen) entfernen.
Edit:Ich mache das auch immer ohne Leer dazwischen und es läuft
Beitrag zuletzt geändert: 29.1.2010 14:28:49 von matthimeo -
@matthimeo
1. ... einen Punkt falsch gesetzt ...
und genau die 2 bemerkungen hättest uns allen ersparen könne. beide stimmen nicht.
2. ... den Whitespace (Leerzeichen) entfernen.
die lösung ist eigentlich schon da, nur snottomo hat - laut seinem pm an mich - noch nicht verdaut. (hast du es schon? ;o) aber er arbeiten daran -
czibere schrieb: @matthimeo
1. ... einen Punkt falsch gesetzt ...
und genau die 2 bemerkungen hättest uns allen ersparen könne. beide stimmen nicht.
2. ... den Whitespace (Leerzeichen) entfernen.
die lösung ist eigentlich schon da, nur snottomo hat - laut seinem pm an mich - noch nicht verdaut. (hast du es schon? ;o) aber er arbeiten daran
Ok sorry. Aber bei mir läuft es so und das ist mir halt ins Auge gestochen.
Ich hatte mal das gleiche prob und habe es so behoben. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage