So...Habe mittlerweile etwas Code geschrieben:
PHP-Code:
class FORM {
var $content="";
var $method="";
function FORM($method) { // Konstruktor
strtoupper($method);
if($method=="POST" || $method="GET") {
$this->method=$method;
return true;
}
else {
return false;
}
}
function InputForm($string) {
$this->content=$this->content.$string;
return true;
}
function OutputForm() {
echo $this->content;
return true;
}
function CheckSend($submitname) {
if($this->method=="POST") {
if(isset($_POST[$submitname])) return true;
else return false;
}
if($this->method=="GET") {
if(isset($_GET[$submitname])) return true;
else return false;
}
}
function CheckElement($name,$regexp="",$checkempty=true) {
if($checkempty) { // auf empty() prüfen
if($this->method=="POST") {
if(empty($_POST[$name])) return false;
else {
if($regexp=="") return true;
else { // Regulären Ausdruck prüfen
}
}
}
if($this->method=="GET") {
if(empty($_GET[$name])) return false;
else {
if($regexp=="") return true;
else { // Regulären Ausdruck prüfen
}
}
}
}
if(!$checkempty) { // nicht auf empty() prüfen
if($regexp=="") return true;
else { // Regulären Ausdruck prüfen
}
}
}
Funktioniert soweit auch ganz gut, allerdings fehlen noch einige wichtige Sachen...
Zum Beispiel stellt sich mir die Frage, ob ich Formularelemente in einer eigenen Methode hinzufügen soll, oder
dem Objekt einfach den HTML-Code vom Formular übergeben soll (wie es im Beispiel oben der Fall ist)?
Das kann dann z.B. so aussehen:
PHP-Code:
function AddElement($name,$HTMLPraefix,$HTMLSuffix,$type,$value="",$class="",$description="",$error="",$error_class="") {
...
}
Allerdings halte ich diesen Funktionsaufruf für etwas vollgepackt. :wink:
Was meint ihr, macht ein HTMLPräfix und -Suffix bei einer solchen Funktion Sinn, oder lieber immer vorher mit
$formular->InputForm("String") den entsprechenden
Präfix einfügen? Sonstige Vorschläge?
Ein Vorteil von einer eigenen Methode wäre z.B. die Fehlerhandhabung.
Das ist auch nochmal eine eigene Sache. Wie gebt ihr denn eure Formular im Fehlerfall aus? Einfach das Formular
neu ausgeben, und unter jedes falsche Element die entsprechende Fehlermeldung schustern, oder etwa auf eine
Seite weiterleiten, wo ein Fehler ausgegeben wird, und ein entsprechender "zurück" Link.
Und wie würdet ihr die Fehlerkommunikation zwischen der Klasse und dem eigentlichen Script machen?
Fehlermethode bereitstellen?
Fraglich ist auch, wie das HTML gehandhabt wird, also ob es dynamisch generiert wird, oder das HTML übernommen wird.
Jemand noch Vorschläge für weitere Methoden?
PS: Achja...langsam frage ich mich, ob dieser Thread noch ins Anfänger Forum paßt.
Ich meine, OOP und Regexp sind nicht so die Merkmale eines Anfängers,
oder?
Als ich den Thread eröffnet habe, habe ich nicht gedacht, dass die Sache so kompliziert wird.
->Mal über eine Verschiebung nachdenken...
Ich weiß, dass diese Sache recht komplex ist, deshlab möchte ich jedem Helfendem schon im Voraus danken.
