turk porno porno escort rokettube
Ergebnis 1 bis 4 von 4

Thema: Objekt aus Zend_Db_Table in Array konvertieren

  1. #1
    n4x
    n4x ist offline
    Neuer Benutzer
    Registriert seit
    08.02.2009
    Beiträge
    8
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Standard Objekt aus Zend_Db_Table in Array konvertieren

    Hallo

    Einsteigerfragen sind die Leichtesten, ich glaube die hier ist etwas doof. Es geht um den Ansatz.

    Ich habe eine Klasse die Zend_Db_Table extended und fetche damit alle Einträge einer Tabelle. Diese möchte ich gerne in einem Zend_Form_Element_Select verwenden.

    Wenn ich aber das Ergebnis aus:
    PHP-Code:
    $content $iT->fetchAll(); 
    an
    PHP-Code:
    $typeSelection->addMultiOptions($content); 
    übergebe, geht das nicht. Macht irgendwo auch noch Sinn, denn da sind ja alle Daten drin. Ich kann aber mit z.B.:
    PHP-Code:
    foreach($content as $k => $v
    gar nicht durch das Ergebnis laufen. Das ist so eine generelle Frage, wieso geht das nicht? Er gibt weder einen Fehler aus, noch ein Ergebnis. Da würde ich mir ja schnell ein Array für die MultiOptions zusammenbauen. Leider geht das nicht, obwohl es erstmal simpel klingt ^^ Was mache ich da falsch?

    Und ne andere Frage: Kann ich nicht irgendwie auch direkt die Querys eingeben? Also ohne für jede Tabelle eine extra Klasse zu erstellen. Teilweise finde ich das super, mit ReferenceMaps usw. aber um einfach aus einer unwichtigen Tabelle Werte für eine Select-Box zu fetchen finde ich das überflüssig. Muss ich eine extra Klasse extenden oder gibt es eine Möglichkeit mit dem DB Objekt was ich ja im Bootstrap schon erstelle direkt Queries los zu schicken?

    Ich habe jetzt mal folgendes Probiert:
    PHP-Code:
    $registry Zend_Registry::getInstance();
            
    $result $registry->database->query("SELECT * FROM type"); 
    Das gibt keinen Fehler, aber das Ergebnis ist nicht drin. Ist der Ansatz mit der Registry überhaupt in Ordnung?


    danke schonmal

  2. #2
    Erfahrener Benutzer Avatar von frezno
    Registriert seit
    22.01.2009
    Beiträge
    412
    Thanks
    0
    Thanked 3 Times in 1 Post

    Standard

    Zitat Zitat von n4x Beitrag anzeigen
    Kann ich nicht irgendwie auch direkt die Querys eingeben?
    Zend_Db_Statement ?
    Heute bug ich, morgen browse ich.
    Zend Framework Tutorial

  3. #3
    Erfahrener Benutzer Avatar von mahok
    Registriert seit
    29.11.2007
    Beiträge
    172
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Standard

    Zu deinem ersten Problem:

    Deine Codeschnipsel reichen nicht aus um es sicher zu sagen, aber ich vermute mal deine multiOptions sind keine passende Schlüssel-/Wert-Paare. Am besten dumpst Du mal deine multiOptions (z.B. mit Zend_Debug::dump()).

    Der Schlüssel im multiOptions-Array muss ein eindeutiger Bezeichner sein, den Du nach dem $_POST auch wieder dem passenden Datensatz zuordnen können solltest (die id aus der Tabelle bietet sich dafür an) und der Wert entspricht dem was du in der Select-Box angezeigt bekommst (sollte man als Nutzer optimalerweise auch voneinander unterscheiden können), also z.B. bei einer Nutzerliste:

    1 => Peter,
    23 => Hans,
    42 => Maria,
    1337 => Peter2
    usw.

    Hier mal ein grobes Beispiel wie das bei Dir aussehen könnte (id und passenderWert müssen natürlich angepasst werden ):

    PHP-Code:
    $content $iT->fetchAll();
    $temp = array();
    foreach (
    $content as $item) {
        
    $temp[$item['id']) = $item['passenderWert']
    }
    $typeSelection->addMultiOptions($temp); 
    Deine zweite Frage wurde ja schon beantwortet (siehe auch Reference Manual: Zend_Db).

  4. #4
    Benutzer
    Registriert seit
    18.12.2008
    Beiträge
    30
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Standard

    Ich bin auch relativ neu und gerade am einarbeiten im ZF, vielleicht ist es auch falsch, aber ich war der Meinung dafür gibt es die Methode fetchPairs(). So habe ich es zumindest gemacht auch wenn ich die DbTable Klasse nicht direkt nutzte.

Ähnliche Themen

  1. Rowset Objekt zu groß?
    Von QDog im Forum DB
    Antworten: 2
    Letzter Beitrag: 01.06.2008, 00:24
  2. Antworten: 5
    Letzter Beitrag: 14.05.2008, 13:56
  3. Antworten: 2
    Letzter Beitrag: 01.11.2007, 20:32
  4. DB-Objekt ständig verfügbar?
    Von stun im Forum DB
    Antworten: 3
    Letzter Beitrag: 26.02.2007, 11:56
  5. Antworten: 7
    Letzter Beitrag: 04.01.2007, 14:27

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •