Formular PHP und Echo
Steffi
- html
0 André Laugks0 Steffi0 AllesMeins0 Steffi0 AllesMeins0 Steffi
0 nag0 Steffi
0 André Laugks
0 Steffi
Hallo zusammen,
ich weiss jetzt irgendwie überhaupt nix mehr:
Also eine Seite meiner Page beinhaltet ein Formular, bei welchem durch Submit (POST) ein PHP-Script ausgelöst wird.
In diesem Script gebe ich mittels "echo" Fehlermeldungen aus.
Durch "echo" öffnet sich ein neues Fenster.
Was schon meine erste Frage wäre: Handelt es sich hierbei um ein Popup (und wird von Popupblockern geblockt) oder handelt es sich um eine neue Instanz vom Browser? (Mein Gefühl sagt zweiteres)
Nun würde ich die Größe dieses Fenster einfach so aus dem Bauch raus gerne eine bestimmte (aber nicht unbedingt fixierte) Größe geben, sprich möglichst klein halten, da es sich hierbei ja nur um einen Hinweis handelt.
ABER (ja ich habe mich schon durch das Forum gewühlt) zum einen führt das wohl auf grossen Widerstand wie ich das dem allgemeinen Echo hier entnehmen kann, und zum anderen würde ich wenn möglich gänzlich auf Javascript bzw. browserseitige verzichten. (und so wie ich es jetzt aus allen Postings entnommen habe, ist das nur damit möglich)
Deshalb schwirrt mir jetzt schon total der Kopf, und ich weiss nicht mehr, was ich machen soll. Hab schon alle möglichen und unmöglichen kreativen Ideen ausprobiert, die mein Kopf hergegeben hat, aber bin irgendwie auf keine vernünftige Lösung gekommen.
Vielleicht habt ihr ja eine Idee oder einen kreativen Lösungsansatz, wie ich das am besten (und benutzerfreundlichsten lösen kann...
Vielen Dank schon mal im Voraus für eure Antworten und Ideen!
LG Steffi
Hallo!
In diesem Script gebe ich mittels "echo" Fehlermeldungen aus.
Durch "echo" öffnet sich ein neues Fenster.
Per JavaScript? Dann ist es wohl ein Popup!
Was schon meine erste Frage wäre: Handelt es sich hierbei um ein Popup (und wird von Popupblockern geblockt) oder handelt es sich um eine neue Instanz vom Browser? (Mein Gefühl sagt zweiteres)
Du kannst bei bestimmten Popup-Blockern einstellen, das bei Links über target="_blank" (neue Instanz) eine Warnmeldung kommt.
ABER (ja ich habe mich schon durch das Forum gewühlt) zum einen führt das wohl auf grossen Widerstand wie ich das dem allgemeinen Echo hier entnehmen kann, und zum anderen würde ich wenn möglich gänzlich auf Javascript bzw. browserseitige verzichten. (und so wie ich es jetzt aus allen Postings entnommen habe, ist das nur damit möglich)
Mache das was Du für richtig hälst! Die Frage ist ob es auch gut ist, Du mußt ja an den User denken der einen Popupblocker hat.
Gebe doch die Fehlermeldung einfach über dem Formular oder dem betreffenden Formularfeld aus, so wie es in der Regel gemacht wird. Das kennt der User.
André Laugks
»» Per JavaScript? Dann ist es wohl ein Popup!
Nein, kein JavaScript, einfach nur Echo im PHP-Script, ohne weiteres zutun. Weiss nicht ob man das so darf / tun sollte, ist durch Trial&Error einfach so entstanden, und ich fands gut so.
Gebe doch die Fehlermeldung einfach über dem Formular oder dem betreffenden Formularfeld aus, so wie es in der Regel gemacht wird. Das kennt der User.
Danke, das wäre eine Alternative. Muss mich aber erst mal reinlesen, wie das hinzubekommen ist. (ist mein erstes PHP-Script)
LG Steffi
»» Nein, kein JavaScript, einfach nur Echo im PHP-Script, ohne weiteres zutun.
Dadurch öffnet sich definitiv kein neues Fenster! PHP hat überhaupt nichts mit dem Browser zu tun. PHp erzeugt lediglich den HTML (und JavaScript) Code der dann vom Browser ausgeführt wird. Sprich dem Browser ist es vollkommen egal ob die Ausgabe nun durch ein echo oder durch eine ganz normale HTML Seite erstellt ist...
Poste doch bitte mal den php-Code der angeblich das neue Fenster öffnet
Marc
<?php
if($_POST)
{
if($_POST["nachricht"] == "Bitte hinterlassen Sie hier Ihre Nachricht"):
echo "<b>Sie haben uns leider keine Nachricht hinterlassen...</b><br><br>";
endif;
:
:
}
else
{
echo "<b>Ihre Nachricht konnte leider nicht versendet werden.</b><br><br>";
}
$_POST=NULL;
exit;
?>
...gibt bei mir ein Fenster, in dem der Text aller durchlaufenen "echos" aneinandergehängt augibt. (Hab mehrer solcher Abfragen drin)
(Kann mit einem vorangehenden ersten Echo sogar die Seite Formatieren, CSS einbinden, Title vergeben, etc., alles was in HTML möglich ist, muss die Tags einfach nur mit echo augeben... )
Hiho,
das du alles was du mit HTML machen kannst auch mit PHP ausgeben kannst ist selbstverständlich (hab ja schon erwähnt das der Browser gar nichts davon mitbekommt das dort ein PHP Script arbeitet). Aber was du gepostet hast öffnet definitiv kein neues Fenster. Kann es sein das du in deinem Formular von dem aus du das PHp Script aufrufst ein traget="_blank" oder sowas drinne hast?
Marc
Nein eigentlich nicht, einfach nur ...
UPS! Doch!!! Alles klar! *an Kopf klatsch*
Hatte ich aus meinem Buch übernommen und hab das wohl voll nicht realisiert (oder schon wieder vergessen)
Ich wäre jetzt absolut nicht auf die Idee gekommen,
dass das neue Fenster aus meinem Code entsprungen sein könnte!
War fest der Überzeugung, dass das von dem echo kam...
*rotwerd*
Jetzt ist mir auch klar, warum ich nix brauchbares im Forum gefunden habe...
Danke und LG Steffi,
der es wie Schuppen von den Augen fällt :)
Na also, geht doch :) Soviel zum Thema Wald und lauter Bäume *gg*
Grüsse
Marc
Hallo,
Danke, das wäre eine Alternative. Muss mich aber erst mal reinlesen, wie das hinzubekommen ist. (ist mein erstes PHP-Script)
einen Anstoß sollte dir
http://www.webmaster-resource.de/tricks/php/fehlerhafte-felder-beim-abschicken-eines-formulars-markieren.php
geben
Gruß NAG
Super, danke!
(man, warum bin ich da noch nicht selber draufgekommen, hab schon oft genug solche dinger ausgefüllt *am kopf kratz*)
Bin am überlgen, ob ich das so mache, und eine genauere Fehlerausgabe noch zusätzlich in einem iframe o.ä. mache.
Ich glaube das ist eine gute Idee/Alternative...
Vielen Dank nochmal, auch für den Link, der erspart mir so einige Wühlerei!
LG Steffi
Hallo!
Nein, kein JavaScript, einfach nur Echo im PHP-Script, ohne weiteres zutun.
Achso, ich dachte Du gibst mit echo ein JavaScript aus. echo ist nicht mit alert() zu vergleichen. Ein echo "schreibt" etwas.
<body>
<?PHP echo "Hier kommt die Maus!"; ?>
</body>
// Ausgabe
<body>
Hier kommrt die Maus!
</body>
Weiss nicht ob man das so darf / tun sollte, ist durch Trial&Error einfach so entstanden, und ich fands gut so.
Ist doch ok! So fängt man in der Regel auch an. Mit der Zeit merkt man erst wie man es besser machen kann.
Danke, das wäre eine Alternative. Muss mich aber erst mal reinlesen, wie das hinzubekommen ist. (ist mein erstes PHP-Script)
Du kannst ein echo überall plazieren...
André Laugks
Was würdest du eher empfehlen,
Formularfeld oder iframe?
LG noch am suchende Steffi
Ich beantworte mich gleich selbst:
Formularfeld, da nicht jeder Browser Frames unterstützt...
...und ist es nun ein Popup, oder eher wohl nicht?
Weil ich glaube ich bleibe erst mal bei der Variante, weil die so gut wie steht, und wirklich nicht schlecht aussieht und relativ einfach ist.
Muss dann halt hoffen, dass beim Benutzer neue Fenster nicht grad megagoß aufgehen.
Aber wenns ein Popup ist, und ich somit sicher bin, dass es nicht jeder sehen kann wars dass wohl mit dieser Variante...
LG Steffi
Achja, da fällt mir grad ein, ihr könnts euch gerne mal anschauen, habs zu Testzwecken schon aufm Server:
www.laengin.net/inhalt/violett/violett.htm