• Jeder User im Forum verpflichtet sich zur Akzeptanz und zur Einhaltung dieser Regeln:
    1. Umgangston
      Ein angemessener höflicher Umgangston, ohne Beleidigungen, Beschimpfungen und aggressive Postings ist für jedes Mitglied Pflicht.
    2. Beiträge
      Jedes Mitglied sollte sich bemühen nur sinnvolle Beiträge zum Thema zu posten. Dabei ist unbedingt vorher zu prüfen, ob das Thema vorher schon einmal diskutiert wurde und daher fortgesetzt werden kann
      • Suchfunktion benutzen!
      • offizielle Doku lesen!
    3. Haftung
      Jeder Beitragsersteller übernimmt die alleinige Verantwortung seiner Inhalte.
    4. Werbung
      Wir erlauben keine Beiträge, Signaturen, Private Nachrichten oder eMails an Benutzer, die Werbung enthalten. Ausgenommen
      sind Stellengesuche /-angebote, welche ausschließlich im Forum "Stellengesuche" veröffentlicht werden dürfen.
    5. Verstöße
      Regelwidrige Beiträge sollten dem Team gemeldet werden. Nach deren Überprüfung werden wir schnellstmöglich
      entsprechend handeln.
    6. Authorität
      Den Anweisungen der Team-Mitglieder (Administratoren und Moderatoren) sind in diesem Forum Folge zu leisten.
      Bei Fragen oder Beschwerden bitte an diese wenden.
    Wir möchten Euch darauf aufmerksam machen, dass es bei Verstößen gegen einen oder mehreren der oben genannten
    Punkte dem Team frei steht entsprechend zu handeln. Dies kann z.B. das Löschen eines Beitrags, das Ausschliessen bzw.
    Sperren von Mitgliedern oder aber lediglich eine Verwarnung sein.

    In diesem Zusammenhang sollte erwähnt werden, dass das Forum automatisch die IP-Adresse jedes Beitrag-Erstellers
    speichert. Bei schweren Vergehen, behalten wir es uns vor, die IP-Adresse zur Strafverfolgung weiterzugeben.
  • Willkommen im Zend Framework Forum

    ZF1 Zend Framework 1 + ZF2 Zend Framework 2

    Das Zend Framework Forum ist seit 2006 die erste Anlaufstelle für Zend Framework Entwickler in Deutschland. Mit über 70.000 Beiträgen und einer steigenden Nutzerzahl bietet das Forum hilfreiche Themen und ZF-Tutorials für professionelle Entwickler, fortgeschrittene Programmierer sowie Zend Framework Einsteiger.
    Wenn dies Dein erster Besuch in der Zend Framework Community ist, lies bitte zuerst die Hilfe - FAQ durch. Du musst Dich registrieren, bevor Du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um die Registrierung zu starten. Du kannst auch jetzt schon Beiträge lesen. Hier im Forum findest Du die Zend Framework Hilfe, die Du suchst!

    Grüße an alle Zend Framework Entwickler. Das Team vom Zend Framework Forum!

    Drupal Agentur

Umstellungsprobleme von ZF 1.0.4 auf 1.5.2 - formSelect() und disabled

thomas_w

New member
Hallo Zusammen,

ich habe hier ein Projekt, bei dem ich derzeit die ZF Version von 1.0.4 auf 1.5.2 ändere (neuere ZF-Versionen folgen dann später).

Dabei kommt gibt es bei den View-Helpern Probleme.
Bei ZF 1.0.4 wird bei FormSelect mit "disabled" folgender Code erzeugt:

Code:
<input type="hidden" name="feld_name" id="feld_id" value="1" />Wert1

Bei ZF 1.5.2 liefert im gleichen Fall der FormSelect dies:

Code:
<select name="feld_name" id="feld_id" size="1" disabled="disabled">
 <option value="0" label=""></option>
 <option value="1" selected="selected" label="Wert1">Wert1</option>
 <option value="2" label="Wert2">Wert2</option>
</select>
Das Problem ist:
Wenn ich mich jetzt richtig erinnere, werden die Werte von gefüllten, aber "disabled"en
Select-Formularfelder beim Submit nicht mit "geposted".

Wie löse ich das Versions-Problem? Selber den <input "hidden" .. />
dazu erzeugen? Dann habe ich aber identisch vergebene IDs im HTML-Code.

Folgende (JavaScript)-Idee habe ich noch dazu gefunden:

Code:
<script> 
function enableSample() { 
document.getElementById('sample').disabled=false; 
} 
</script> 
<form action="" onsubmit="enableSample();" 
<select name="sample" id="sample"> 
<option value="testing" selected>Testing</option> 
<option value="testing2">Testing2</option> 
</select> 
<input type="submit" name="but"/> 
</form>
Vielen Dank!

Grüße
Thomas
 

thomas_w

New member
so, ich glaube ich haben einen Bug als Feature verwendet.

ZF 1.0.4 ist über class="disable" gestolpert und ...

Beispiel 1 - siehe class="disable" und 'disable' => 'disable'
PHP:
$oFeld1->formSelect('feld1',$nFeld1,array('class' => 'disable', 'size' => '1', 'disable' => 'disable')
Code:
<input type="hidden" name="feld1" value="2" />Wert1
Beispiel 2 - class="disable" und 'disabled' => 'disabled'
PHP:
$oFeld1->formSelect('feld1',$nFeld1,array('class' => 'disable', 'size' => '1', 'disabled' => 'disabled')
Code:
<select name="feld1" id="feld1" size="1" disabled="disabled">
  <option value="0" label=""></option>
  <option value="1" label="Wert1">Wert1</option>
  <option value="2" label="Wert2" selected="selected">Wert2</option>
  <option value="3" label="Wert3">Wert3</option>
 </select>
ZF 1.5.2 arbeitet jetzt immer nach dem Beispiel 2. Aber eigentlich soltle es doch "disabled" lauten, wieso dann auch "disable" funktioniert?

Jetzt fehlt nur noch eine Lösung ohne größeren Aufwand. Mal schauen...

Grüße
Thomas
 

thomas_w

New member
Das Projekt hat mit einer sehr frühen ZF-Version (0.6) begonnen. Der Wechseln nach ZF 1.0.4 war ziemlich aufwendig. Jetzt möchte ich einfach einen kleinen und hoffentlich überschaubaren nächsten Schritt machen.

In einigen Version sind wesentliche Konzeptänderungen, die möchte
ich Schritt für Schritt nachvollziehen. Die Software wird produktiv genutzt, da wird man schon vorsichtig :rolleyes:.

Beispielsweise kam mit 1.5.x eine neue Schreibweise der ActionMethoden. Vorher war ein Name wie DiesUndDasAction() erlaubt, ab 1.5.x sollte es diesunddasAction() lauten und weiteres mehr..

http://framework.zend.com/manual/de/zend.controller.migration.html

Grüße
Thomas
 
Zuletzt bearbeitet:

frezno

New member
naja, ich finde es ist trotzdem Mehrarbeit.
Ich würde mir leiber etwas mehr Zeit lassen und dann gleich auf eine (momentan) aktuelle Version gehen, als erst auf eine ältere Variante um dann wieder von vorne anfangen zu müssen.
 

KingCrunch

New member
Es ist sowieso davon auszugehen, dass hier die Mehrheit bei Problemen mit älteren Versionen nicht mehr richtig unterstützen können oder (sind wir mal ehrlich) wollen.
 

thomas_w

New member
Es ist sowieso davon auszugehen, dass hier die Mehrheit bei Problemen mit älteren Versionen nicht mehr richtig unterstützen können oder (sind wir mal ehrlich) wollen.
Obwohl es angeblich keinen Internessiert, hier meine kurze Problemliste nach dem nun gelungenen (bin noch am Testen) Refaktoring von ZF 1.0.4 auf ZF 1.5.2




Notwendige Änderungen in meinen Source:
  • Zend_View + Smarty - Anpassung wegen Helper/Doctype notwendig
  • Helper/FormSelect - Anpassungen bei "disabled" notwendig
  • Helper/FormCheckbox - Anpassungen wegen Umstellung der Logik in ZF notwendig
  • Namenskonventionen jetzt alleskleinAction()
Alle weiteren Teile der neuen Version - soweit ich diese verwende - scheinen problemlos zu funktonieren!

Vielen Dank an die Entwickler!

Grüße
Thomas
 
Zuletzt bearbeitet:

DennisBecker

Super-Moderator
Ich bin dann mal gespannt wie es weitergeht ;) Im Prinzip könnte der nächste Schritt auf 1.7.x gehen und dann auf die aktuelleste 1.9.x Version - da hast du dann auch nochmal einiges vor dir. Von 1.5.x auf 1.7.x sollte eigentlich recht problemlos gehen :)
 

thomas_w

New member
Im Prinzip könnte der nächste Schritt auf 1.7.x gehen und dann auf die aktuelleste 1.9.x Version - da hast du dann auch nochmal einiges vor dir. Von 1.5.x auf 1.7.x sollte eigentlich recht problemlos gehen :)
Sehe ich auch so, als nächstes kommt ZF 1.7.x und dann 1.9.x.
Als nächstes plane ich aber die Umstellung von YUI 2.4.1 auf 2.8.0 (sofern diese erschienen und stabil ist).

Grüße
Thomas
 

thomas_w

New member
So, nachdem das Projekt einige Zeit mit ZF 1.5.2 läuft, kann ich behaupten die Umstellung hat doch recht problemlos funktioniert. Der einizige Wermutstropfen ist die Ausführgeschwindigkeit. So aus dem Bauch heraus ist das Projekt ca. 10% langsamer geworden. Dies ist wohl dem größeren Funktionsumfang von ZF 1.5.2 geschuldet, obwohl ich die neuen Features (noch) gar nicht nutze. So weit, so gut...

Grüße
Thomas
 
Oben