Willkommen in der Webstatt Zum Webstatt Blog und Stories
Remo1234 Remo1234 am 22.02.07 20:24

Hallo,
Ich habe eine Reihe von Bedingungen für mein GB. Bis eben hab ich einfach alles mit die() gemacht, doch das geht nicht, denn nach dem eigentlichen php-script kommen noch ein paar wichtige Zeilen html, die mit die() nicht mitgesendet werden.
Wie mach ich das also? Mit if und elseif? oder gibt es eine andere Methode?!

Das sind meine 3 Bedingungen...

<?php
if(!(isset($_POST['homepage']) AND $_POST['homepage'] == ""))
echo "Bitte benutze das Formular aus dem Gästebuch";

if(trim($_POST['gbname']) == "") {
echo "Bitte Namen eintragen";
}

if(trim($_POST['gbtext']) == "") {
echo "Bitte Inhalt eintragen";
}

Nicht verwirren lassen von dem "homepage" das ist ein verstecktes formular feld und dient 1. der Kontrolle, ob das Formular auch benutzt wurde und dient 2. als primitiver Spambot schutz.

netcup.de Warum gibt es hier Werbung?
nuit nuit am 22.02.07 20:27

was willst du erreichen? das alle ausgegeben werden? dass er nach und nach durchcheckt? ich versteh nicht was du willst :D

Remo1234 Remo1234 am 22.02.07 20:35

Quote
Original von nuit
was willst du erreichen? das alle ausgegeben werden? dass er nach und nach durchcheckt? ich versteh nicht was du willst :D

Oh, sorry^^ wenn die bedingungen true sind soll jeweils der string ausgegben werden und der rest nicht. wenn alle false sind, etwas anderes.

nuit nuit am 22.02.07 20:39

mh? nicht gerade schön, aber beste möglichkeit :D

if(!(isset($_POST['homepage']) AND $_POST['homepage'] == ""))
$errors[] = "Bitte benutze das Formular aus dem Gästebuch";
}
if(trim($_POST['gbname']) == "") {
$errors[] = "Bitte Namen eintragen";
}
if(trim($_POST['gbtext']) == "") {
$errors[] = "Bitte Inhalt eintragen";
}

if(count($error)) {
foreach($errors as $error) {
print $error."<br />";
}
} else {
print "something else<br />";
}

Remo1234 Remo1234 am 22.02.07 20:45

Mh... es ist nohnichteinmal notwendig, dass alle "errors" angezeigt werden. Es reicht, wenn nur der angezeigt wird, der bei meiner reihenfolge von bedingungen als erstes auftritt. also elseif?

nuit nuit am 22.02.07 20:46

jop D
if(!(isset($_POST['homepage']) AND $_POST['homepage'] == ""))
echo "Bitte benutze das Formular aus dem Gästebuch";
} elseif(trim($_POST['gbname']) == "") {
echo "Bitte Namen eintragen";
} elseif(trim($_POST['gbtext']) == "") {
echo "Bitte Inhalt eintragen";
} else {
echo "something else";
}

Remo1234 Remo1234 am 22.02.07 21:27

Eine Frage: Übergibt eine Textarea nichts, wenn sie nicht ausgefüllt wird? Also nochnichtmal einen leeren String?

Antwort: Nein.

Creative Commons Lizenzvertrag
Alle Inhalte des Webstatt-Archivs stehen unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.

Impressum & Kontakt