PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr (https://www.php-resource.de/forum/)
-   PHP Developer Forum (https://www.php-resource.de/forum/php-developer-forum/)
-   -   Formular + submit => neue Seite laden (aber wie?) (https://www.php-resource.de/forum/php-developer-forum/90919-formular-submit-neue-seite-laden-aber-wie.html)

bonbon2k6 20-03-2008 00:10

Formular + submit => neue Seite laden (aber wie?)
 
Huhu!

Ich programmiere gerade die Registrierung auf meiner Internetseite. Ich gebe dem Benutzer ein Formular, wo er Name und 2x das pw eingeben soll. Wenn er auf den submit - Button drückt soll auf die neue Seite kommen...wie realisiere ich, dass nach dem drücken des Submit-buttons eine neue seite geöffnet wird?

Kann ich das ganze auch abprüfen lassen, wenn ich eine schriftzug mittels <a href=...>text</a> zum "weiter" definiere?

mfg

$_Baker 20-03-2008 06:32

Wenn du ein neues Fenster meinst:
http://de.selfhtml.org/html/formulare/definieren.htm

Dort unter "Zielfenster für Server-Antwort" schauen

bonbon2k6 20-03-2008 11:29

nein nein, kein neues fenster. Es soll einfach wie ein Link funktionieren. dass im aktuellen Fenster einfach schritt 3 oder 4 kommt, aber vorher eben die Daten des Formulares auswertet.

mfg

Kropff 20-03-2008 11:30

such mal nach affenformular, das meinst ud wahrscheinlich.

gruß
peter

bonbon2k6 20-03-2008 14:17

wenn man sich z.B. in nem Forum oder woanders anmeldet, dann läuft ja ein script an, dass die Eingaben (name + pw) verifiziert. Danach landet man z.b. auf der Start seite o.ä. Aber man bleibt nicht im Anmeldedialog, was ja normalerweise der fall ist, wenn man auf submit klickt.
Ähnlich funktioniert es auch beim suchen, wenn man submit drückt listet er Ergebnisse.

Ich wollte nur wissen, wie das geht, dass er dann eben z.B. ergebnisse liefert

mfg

Kropff 20-03-2008 14:24

daten abarbeiten, session setzen und per header('location:...') weiterleiten.

gruß
peter

bonbon2k6 20-03-2008 14:42

das ist gängige Praxis? Das wäre ja relativ einfach zu realisieren.

mfg

kleiner57990 17-09-2009 14:55

hallo habe mich ihr im forum durchgesucht und nur das thema ihr als ungefähr passend endeckt.

Aber wie es ihr erklärt wird verstehe ich das nicht so genau ( bin neu bei php und überhaupt bei programmierung).

Also ich möchte das wenn das Formular das ich erstellt habe komplett ausgefüllt wird, es auf eine neue Seite zu laden wo der User nochmals alles nach lesen kann allerdings nicht mehr editiere, und das ich sie von dieser seite später als PDf auf eine email adresse weiter leiten kann.


Weiß jemand eine lösung?

AmicaNoctis 17-09-2009 15:01

Hallo,

Affenformular ? Wikipedia

Gruß,

Amica

kleiner57990 17-09-2009 15:06

Ja aber affenformular leitet es doch immer weiter slebst wenn was fehlt ich möchte ja das wenn was fehlt er auf der selben seite bleibt und nur weiter gelietet wird wenn das formular von a bis z in ordnung ist.

AmicaNoctis 17-09-2009 15:09

Zitat:

Zitat von kleiner57990 (Beitrag 625232)
Ja aber affenformular leitet es doch immer weiter slebst wenn was fehlt ich möchte ja das wenn was fehlt er auf der selben seite bleibt und nur weiter gelietet wird wenn das formular von a bis z in ordnung ist.

Falsch! :readthis: erst lesen, dann Kommentar abgeben!

kleiner57990 17-09-2009 15:20

Ja sorry hab es falsh interprtiert.

<formaction="<?php echo $_SERVER['laboschueler.php']; ?>" method="post"><inputtype="text"name="telefon"value="<?php echo htmlspecialchars($_POST['telefon']); ?>" /><inputtype="submit"name="submit"value="Absenden"/></form>


<?php
$errors = array (count => 0);
?>

<?php

if($_POST["Senden"])) {
if(!isset($_POST["Beispiel"]) || !trim ($_POST["Beispiel"])) {
$errors ["count"]++;
$errors ["Beispie"] =true;
}}

if($errors["count"]>=2) {
echo " TEST";
$fehlerbeispiel = 1;
}

if(empty($_POST["Beispiel"])) {
$fehlerbeispiel =1;

} else {

header("Location. $redirect_url");
exit;
}











Stimmt das so oder?

AmicaNoctis 17-09-2009 15:28

Naja, also
PHP-Code:

action="<?php echo $_SERVER['laboschueler.php']; ?>"

ist nur ne andere (und falsche) Art action="" zu schreiben, da es im $_SERVER-Array keinen solchen Schlüssel gibt.

Das
if ($errors["count"]>=2) passt hier auch nicht. Die 2 muss hier eine 1 sein, weil du ja nur auf ein Feld ($_POST["Beispiel"]) prüfst. Eigentlich kannst du da gleich
PHP-Code:

if ($errors["count"]) 

schreiben.

Das Formularfeld "Beispiel", das du abfragst, kommt im Formular gar nicht vor, dort gibt es nur "telefon".

Gruß,

Amica

kleiner57990 17-09-2009 15:49

Okey diese diversen kleine tipp fehler stammen daher das ich mich eigentlich vertippt habe also nochmals:

<form action="laboschueler.php" method="post">

<input name="telefon" type="text"
value="<?php
if (isset($_POST["telefon"])) {
echo $_POST["telefon"];
}
?>
">
<?if($fehlertelefon ==18){?><font color="red"><?}?>
<br>
Telefon</p><?if($fehlertelefon ==18){?></font><?}?


PHP-Code:

<?php
$errors 
= array (count => 0); 
if (!isset(
$_POST["telefon"]) || !trim($_POST["telefon"])) { 
$errors["count"]++; 
$errors["telefon"] = true;
 
(
$errors["count"] >= 2) { 
echo 
' Bitte alle rot markierten Felder ausfüllen '
$fehlerknranr =17
$fehlertelefon =18;
$fehlerdoa =16;
$fehlerplzwa =15;
$fehlersha =14;
}
else if (isset(
$errors['telefon'])) { 
echo 
'Bitte Telefon Nummer eingeben!'
$fehlertelefon =18

?>
 
<?php 
if(empty($_POST['telefon']))
{
$fehler 18;
}
else
{
header("Location: $redirect_url");
exit;
}
?>

Also wenn ich alles richtig verstanden habe müsste es doch so klappen

wahsaga 17-09-2009 15:55

@kleiner57990: Ich wies dich bereits darauf hin, dass du zum Formatieren von PHP-Code bitte die [php]-Tags nutzen sollst, anstatt das ganze in grotesken Farben auszuzeichnen!


Alle Zeitangaben in WEZ +2. Es ist jetzt 19:04 Uhr.

Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
[c] ebiz-consult GmbH & Co. KG