SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Das Zend Framework

Das Zend Framework zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 30.08.2011, 19:14:56
huberg huberg ist offline
Anfänger
 
Registriert seit: Jun 2009
Alter: 86
Beiträge: 17
OOP class mit 2 dropdown, Loesung gesucht

Hallo, ich versuche mich in OOP einzuarbeiten. Ich habe ein Eingabeformular, dass 2 Auswahllisten enthallt. Ist ok und wird benutzt. Jetzt will ich dies aber mit OOP versuchen.

Die erste Auswahlliste wird richtig angezeigt und auch die Eingabe-Felder.
Diese sollten aber besser ausgerichtet werden, aber wie bringe ich hier CSS rein?

Die zweite Auswahlliste erscheint nicht. Eine 2 Version bringt gibt den Inhalt aus der ersten List plus am Ende den Inhalt aus zweite Auswahlliste ( d.h. in einer zusammen).

Wer kennt das Problem und kann mit ein Stueck vom Script zeigen?
Wie kann man dies in OOP Loesen?
Danke schon mal den Support!
Mit Zitat antworten
  #2  
Alt 31.08.2011, 20:05:24
Benutzerbild von Domi
Domi Domi ist offline
Senior Member
 
Registriert seit: Nov 2003
Ort: Kempten @ Allgäu
Alter: 36
Beiträge: 1.408
AW: OOP class mit 2 dropdown, Loesung gesucht

Hi,

vielleicht solltest du mal etwas code zeigen, damit wir dein Problem irgendwie verstehen können :)

Domi
__________________

the best way to be ready for the future is to invent it
Mit Zitat antworten
  #3  
Alt 03.09.2011, 22:54:22
huberg huberg ist offline
Anfänger
 
Registriert seit: Jun 2009
Alter: 86
Beiträge: 17
AW: OOP class mit 2 dropdown, Loesung gesucht

Hallo OOP-Freunde, das Problem 2 Dropdown in einem Formular anzeigen, ist von mir selbst geloest worden. Ob dies nun schoen ist muessen die OOP-Freunde sagen. Nur zu.

Es ist noch nicht ganz fertig, Es fehlt noch die Datenuebergabe (action) und etwas OOCSS.
Aber vielleicht kann hier einer von Euch etwas beitragen.

Noch eine Frage: Kann mir Jemand ein Tut. oder Video zu XDebug(Netbeans) empfehlen?

Und hier nun mein OOP-Code:
Das sieht ja alles schlimm aus Ist ja alles zusammen geschoben. Oder liegt dies an mir?

PHP-Code:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
    </head>
    <body>
<?php
/**************************************************
/***** OOP - Form - gekuertzte Buch. Eingaben *****
/************ Version Eingabe 4 *******************
/***************************************************/
class form {

    public 
$Kostenart;
    public 
$date;
    public 
$amount;
    public 
$ZA;         // Zahl-Art
    
public $remarks;
    
    public 
$optValues   = array();
    public 
$optPaym     = array();
    public 
$starttag;
    public 
$action;
    public 
$method;
 
// methods                         <form action="Buchung_speichern"  method="post" >
    
function formtag() {         // Formular Zeile <form action method usw
      
if($this->starttag=='true') {
          echo 
"<form action='".
            
$this->action ."' method='".
            
$this->method ."'>";
           }    else {
              echo 
"</form>";
               }
               return;
    }
                         
//Input Fields
 
function input_Einzeiler() {
        if(
$this->type=='text') {
                echo 
$this->text."<input type='".
                    
$this->type ."' name='".
                    
$this->name ."' value='".
                    
$this->value ."'> ";

        } 
                 return;
       }
       
 function 
input_Drowdown_1()  {
        if ( 
$this->type=='select' ) {
                    echo 
$this->text."<select name='".
                         
$this->name ."'> ";

           for(
$i=0$icount($this->optValues);$i++ ) {
                           echo 
"<option value='"$this->optValues[$i] ."'>".
                                 
$this->optValues[$i] ." </option> ";
                     }
                       echo 
"</select>";
          }
          return;                     
           }    
// _____________________________________________ende  input_Drowdown_1       
 
function input_Drowdown_2() {          

                    echo 
$this->text."<select name='".
                         
$this->name ."'> ";

                    for(
$i=0$icount($this->optPaym);$i++ ) {
                           echo 
"<option value='"$this->optPaym[$i] ."'>".
                                                    
$this->optPaym[$i] ." </option> ";
                     }
                       echo 
"</select>";
          return;
          }
// ----------------------------------------------ende input_Drowdown_2
function input_Submit () {  
        if(
$this->type=='button' || $this->type=='submit') {
                    echo 
"<input type='"$this->type .
                                
"' name='"$this->name .
                                
"' value='"$this->value ."'> ";
        }
        return;
    }
// --------------------------------------------------ende input_Submit 
function br() {
              echo 
"<br />";
        }
}       
// ---class ende-------------------------------------------form_Object 

$form_Object= new form;
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Uebung OOP Form mit 2 Dropdown </title>
</head>
<body>
<?php
// formtags
    
$form_Object->starttag='true';
    
$form_Object->action ='';
    
$form_Object->method ='post';
    
$form_Object->formtag();
 
// input_Drowdown_1
        
$form_Object->text  "Kosten-Art................";
    
$form_Object->type  "select";
    
$form_Object->name  "KA";
    
$form_Object->optValues[] = 'bitte ausw&auml;hlen!';
        
$form_Object->optValues[] = 'Bank Fees';
        
$form_Object->optValues[] = 'Patrol/Diesel';
        
$form_Object->optValues[] = 'Eskom';
    
$form_Object->input_Drowdown_1();
     
$form_Object->br();
// Datum
    
$form_Object->text  "Datum,  yymmdd........";
    
$form_Object->type  "text";
    
$form_Object->name  "";
    
$form_Object->value =    "";
    
$form_Object->input_Einzeiler();
    
$form_Object->br();
// Betrag
    
$form_Object->text  "Betrag...dez.Punkt.....";
    
$form_Object->type  "text";
    
$form_Object->name  "";
    
$form_Object->value =    "";
         
$form_Object->input_Einzeiler();
    
$form_Object->br();
//Input DropDown  2   = Zahlungs-Art
        
$form_Object->text  "Zahlungs-Art.............";
    
$form_Object->type  "select";
    
$form_Object->name  "ZA";
    
$form_Object->optPaym[] = 'bitte ausw&auml;hlen!';
    
$form_Object->optPaym[] = 'Cash';
        
$form_Object->optPaym[] = 'Visa';
        
$form_Object->optPaym[] = 'Online';
        
$form_Object->optPaym[] = 'Check ';
    
$form_Object->input_Drowdown_2();
    
$form_Object->br();
//Input Submit
    
$form_Object->type  "submit";
    
$form_Object->name  "";
    
$form_Object->value "Submit";
    
$form_Object->input_Submit();
    
$form_Object->br();

    
$form_Object->starttag='false';
    
$form_Object->formtag();

?>
</body>
</html>
Mit Zitat antworten
  #4  
Alt 20.03.2012, 15:08:04
Benutzerbild von urvater
urvater urvater ist offline
Senior Member
 
Registriert seit: Feb 2006
Ort: Wallrabenstein
Alter: 55
Beiträge: 1.044
AW: OOP class mit 2 dropdown, Loesung gesucht

Also bei dem was du hier zeigst bist du noch weit entfernt von OOP.

Die Form Klasse sollte sich wirklich nur um die Erstellung eines Formulares mit seinen Möglichkeiten der unterschiedlichen input-Typen kümmern.

Du müsstest dich also mit allen erlaubten HTML Angaben zu Formularen auseinander setzen um dann in deiner Klasse die Methoden so erstellen zu können, dass am Ende ein gültiges Formular erzeugt werden kann.

So könnte man zum Beispiel dem Construktor der Klasse alle Werte mit übergeben, die im einleitenden Form angegeben werden dürfen.
Der Construktor würde daraus dann einen Gültigen Formheader erzeugen, der alle Angaben enthält, die ihm übergeben werden.

Ein Methode für input Felder müsste dann ebenfalls die Möglichkeit besitzen, dass man beim Erzeugen alle gewünschten Attribute setzen kann.

Ich würde dir daher empfehlen, dass du dir einmal vorhandene Formklassen ansiehst um ein besseres Verständnis hierfür zu bekommen.

Bei deinem Problem würde es nur eine Methode geben, die ein Dropdown-Feld erstellt. (Helferklassen einmal aussen vor gelassen)
Wird dann das für das erzeugt Form-Objekt die Methode für ein Dropdown aufgerufen könnte man diesem alle option-Werte mitgeben. Mit einer 2. Variable würde man die Methode erneut mit anderen Werten aufrufen und das Problem wäre nie entstanden.
Mit Zitat antworten
  #5  
Alt 22.03.2012, 14:16:28
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: OOP class mit 2 dropdown, Loesung gesucht

Zitat:
Zitat von huberg Beitrag anzeigen
Hallo, ich versuche mich in OOP einzuarbeiten. Ich habe ein Eingabeformular, dass 2 Auswahllisten enthallt. Ist ok und wird benutzt. Jetzt will ich dies aber mit OOP versuchen.
[... Fummelei im nächsten POST gelesen ...]
Das ist keine Klasse sondern bestenfalls eine Funktionssammlung.

Generiere das HTML mit Templates und einer der vielen mehr oder weniger guten Templateklassen.

Da mir Smarty zu fett ist, würde ich die nehmen:
http://kuerbis.org/asap/article/10/k...-examples.html

Guck Dir das Beispiel genau an! Geschkes Klasse arbeitet mit den magischen Methoden __get() und __set().

EVA:
Eingabe: Überprüfung, ob der POST Request korrekt ist incl. Validierung

fehlerfrei:
Verarbeitung: Verwurstung der Formulardaten
Ausgabe: Ergebnistemplate Anzeigen

Fehler / nicht ausgefülltest Formular
Verarbeitung: fällt aus
Ausgabe: Formulartemplate anzeigen.
Korrekte Eingaben können als Values übernommen werden
Fehlerhafte Items farblich markieren.

Natürlich kannst Du daraus auch eine Klasse basteln:
PHP-Code:
$app = new formular4711($vars);
$app->eingabe(); # Errorstatus setzen
$app->verarbeitung(); # wenn error, dann return
$app->ausgabe(); # wenn error: Formulartemplate, sonst Ergebnistemplate 
Mit Zitat antworten
Antwort

Stichworte
2drowdown, gesucht, loesung, oop


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Dropdown Menü ID's übergeben Cien MySQLi/PDO/(MySQL) 12 31.03.2015 13:28:35
Dropdown Auswahl wird nicht an DB übergeben ThinkFlou MySQLi/PDO/(MySQL) 13 06.01.2010 20:42:12
oop class extends vererbung / referenz IChier PHP für Fortgeschrittene und Experten 0 29.10.2007 14:27:42
php5 mySQL db class rsciw PHP Grundlagen 1 29.04.2007 17:00:29
Dropdown Class - Fehlermeldung Moses PHP Grundlagen 2 19.09.2003 13:08:00


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:37:23 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt