Ergebnis 1 bis 15 von 15

Thema: Checkbox Problem

  1. #1
    Neuer Benutzer
    Registriert seit
    19.08.2012
    Beiträge
    9
    Thanks
    6
    Thanked 0 Times in 0 Posts

    Standard Checkbox Problem

    Hey Leute,
    bin gerade dabei mit einem Studienkollegen ein kleines Projekt umzusetzen, dabei stoße ich gerade auf ein merkwürdiges Problem:
    PHP-Code:
    $check = new Zend_Form_Element_Checkbox('check');        
    $check->setLabel('Hiermit')
    ->
    setRequired(true)
    ->
    addErrorMessage('Sie müssen die Nutzungsbedingungen akzeptieren.')
    ->
    addValidator('Identical'false'1')
    ->
    setDecorators(array('ViewHelper', array('Label', array('optionalSuffix' => ':','requiredSuffix' => 
    ' stimmen Sie unseren <a href="http://www.blubb.com" onclick="popup(); return false;" />Nutzungsbedingungen</a>  zu!','escape' => false)),
    'Description',array('HtmlTag', array('tag' => 'div')),)); 
    das ist meine Checkbox bei unserem Bilder Upload!
    Es soll einfach der Haken gesetzt werden und ohne soll der Upload eben nicht stattfinden.
    Leider funktioniert dies nicht!
    mein controller:
    PHP-Code:
    public function uploadAction()
        {
    ...
    print_r($uploadform->getValues());
    ....
    $this->view->uploadform $uploadform;

    gibt mit immer nur
    Code:
    [check] => 0
    aus, egal ob checked oder nicht

    Vielen dank für eure Hilfe!

    Gruß St3il

  2. #2
    Benutzer
    Registriert seit
    28.05.2012
    Beiträge
    95
    Thanks
    7
    Thanked 5 Times in 5 Posts

    Standard

    Zeig mal das generierte HTML Markup.

  3. The Following User Says Thank You to christian1987 For This Useful Post:

    St3il (19.08.2012)

  4. #3
    Neuer Benutzer
    Registriert seit
    19.08.2012
    Beiträge
    9
    Thanks
    6
    Thanked 0 Times in 0 Posts

    Standard

    Danke für die Antwort, hier der html code, ist jetzt wie man sieht nicht das ganze Formular, aber sollte ja reichen.
    PHP-Code:
    <div>
    <
    label for="check" class="required">Hiermit stimmen Sie unseren <a href="#" onclick="popup(); return false;">Nutzungsbedingungen</a>  zu!</label><input type="hidden" name="check" value="0">
    <
    input type="checkbox" name="check" id="check" value="1">
    </
    div
    Gruß

  5. #4
    Benutzer
    Registriert seit
    28.05.2012
    Beiträge
    95
    Thanks
    7
    Thanked 5 Times in 5 Posts

    Standard

    Also bei mir funktioniert der Kot. Der Fehler muss woanders liegen. Zeig mal ein wenig mehr vom Formular.

  6. The Following User Says Thank You to christian1987 For This Useful Post:

    St3il (19.08.2012)

  7. #5
    Neuer Benutzer
    Registriert seit
    19.08.2012
    Beiträge
    9
    Thanks
    6
    Thanked 0 Times in 0 Posts

    Standard

    PHP-Code:
    <form id="uploadForm" enctype="multipart/form-data" action="" method="post"><dl class="zend_form">
    <
    dt id="dog-label"><label for="dog" class="required">Which one do you have?</label></dt>
    <
    dd id="dog-element">
    <
    select name="dog" id="dog">
        <
    option value="1" label="wadaw">wadaw</option>
        <
    option value="2" label="Hans">Hans</option>
        <
    option value="3" label="Doggy">Doggy</option>
        <
    option value="4" label="Snoop">Snoop</option>
    </
    select></dd>
    <
    dt id="description-label"><label for="description" class="required">Tell us your story:</label></dt>
    <
    dd id="description-element">
    <
    textarea name="description" id="description" cols="50" rows="6"></textarea></dd>
    <
    dt id="image-label"><label for="image" class="required">Choose your image</label></dt>
    <
    dd>
    <
    input type="hidden" name="MAX_FILE_SIZE" value="33554432" id="MAX_FILE_SIZE">
    <
    input type="file" name="image" id="image"></dd>
    <
    div><label for="check" class="required">Hiermit stimmen Sie unseren <a href="#" onclick="popup(); return false;">Nutzungsbedingungen</a>  zu!</label>


    <
    input type="hidden" name="check" value="0"><input type="checkbox" name="check" id="check" value="1"></div>
    <
    dt id="Finish-label">&nbsp;</dt><dd id="Finish-element">
    <
    input type="submit" name="Finish" id="submitbutton" value="Finish"></dd></dl></form

  8. #6
    Benutzer
    Registriert seit
    28.05.2012
    Beiträge
    95
    Thanks
    7
    Thanked 5 Times in 5 Posts

    Standard

    Code:
    action=""


    Hä?^^

    btw. Funktioniert ebenfalls bei mir, nachdem ich das action attr befülle.

  9. The Following User Says Thank You to christian1987 For This Useful Post:

    St3il (19.08.2012)

  10. #7
    Neuer Benutzer
    Registriert seit
    19.08.2012
    Beiträge
    9
    Thanks
    6
    Thanked 0 Times in 0 Posts

    Standard

    okay danke schonmal, habe jetzt eine action hinzugefügt.
    funktioniert aber immer noch nicht...
    Code:
    [check] => 0

  11. #8
    Benutzer
    Registriert seit
    28.05.2012
    Beiträge
    95
    Thanks
    7
    Thanked 5 Times in 5 Posts

    Standard

    Kannst Du mal den Inhalt des Action Attr zeigen und am besten auch den Code der uploadAction() ?

  12. The Following User Says Thank You to christian1987 For This Useful Post:

    St3il (19.08.2012)

  13. #9
    Neuer Benutzer
    Registriert seit
    19.08.2012
    Beiträge
    9
    Thanks
    6
    Thanked 0 Times in 0 Posts

    Standard

    gerne
    PHP-Code:
    public function uploadAction()    {        
    $uploadform = new Default_Form_PicUpload();        
    $request $this->getRequest();        
    if (
    $request->isPost()){            
    print_r($uploadform->getValues());            
    if(
    $uploadform->isValid($_POST)){                
    $requestdata $request->getPost();                
    if(
    $uploadform->image->isUploaded()){                    
    $uploadform->image->receive();                     
    $source $uploadform->image->getFileName();                    
    $pic = new Default_Model_GetPicInfos();                    
    $result $pic->updatePicDb($requestdata,$source);                    
    if(
    $result['success']){                        
    if(
    $result['coords']){
    //$this->_redirect('/');                        
    }else{
    //$this->_redirect('/index/coords?id='.$result['id']);                        
    }                                            
    }                
    }            
    }        
    }        
    $this->view->uploadform $uploadform;            

    PHP-Code:
    public function init(){         
    $this->setName('uploadForm');        
    $this->setAttrib('enctype''multipart/form-data');        
    $this->setAction('/index/upload')->setMethod('post');                
    $dbdogs = new Default_Model_DbTable_Dogs();        
    $dogs $dbdogs->getAll();        
    $dogdata = array();        
    $i 1;        
    foreach(
    $dogs as $dogy){            
    $dogdata[$i] = $dogy['name'];           
     
    $i++;        
    }                
    $dog = new Zend_Form_Element_Select('dog');        
    $dog->setMultiOptions($dogdata)->setRequired(true)->addValidator('NotEmpty'true)
    ->
    setLabel('Which dog do you have?');        
    $descr = new Zend_Form_Element_Textarea('description');        
    $descr->setLabel('Tell us your story about the dog:')->setRequired(true)
    ->
    setAttrib('COLS''50')->setAttrib('ROWS''6');        
    $image = new Zend_Form_Element_File('image');        
    $image->setLabel('Choose your image')->setRequired(true)->addValidator('Count'false1)            
    ->
    addValidator('Size'false5120000)->addValidator('Extension'false'jpg,png,gif');                
    $check = new Zend_Form_Element_Checkbox('check');        
    $check->setLabel('Hiermit')->setRequired(true)->addErrorMessage('Sie müssen die Nutzungsbedingungen akzeptieren.')                ->addValidator('Identical'false'1')
    ->
    setDecorators(array('ViewHelper', array('Label',array('optionalSuffix' => ':',
    'requiredSuffix' => ' stimmen Sie unseren <a href="#" onclick="popup(); return false;" />Nutzungsbedingungen</a>  zu!',
    'escape'=> false)),                     
    'Description',array('HtmlTag', array('tag' => 'div')),));                
    $submit = new Zend_Form_Element_Submit('Finish');        
    $submit->setAttrib('id''submitbutton');         
    $this->addElements(array($dog,$descr,$image$check,$submit));    

    updatePicDb erstellt thumbnails und verschiebt diese in eine Ordnerstruktur, und liefert wenn gps koordinaten hinterlegt sind success true/false zurück. dann wird eben auf home geleitet oder zu einer Eingabemaske für lat/lon Koordinaten!

    Gruß

  14. #10
    Benutzer
    Registriert seit
    28.05.2012
    Beiträge
    95
    Thanks
    7
    Thanked 5 Times in 5 Posts

    Standard

    Hm...sehe auf den ersten Blick irgendwie keinen Fehler....strange.

  15. The Following User Says Thank You to christian1987 For This Useful Post:

    St3il (19.08.2012)

  16. #11
    Neuer Benutzer
    Registriert seit
    19.08.2012
    Beiträge
    9
    Thanks
    6
    Thanked 0 Times in 0 Posts

    Standard

    hmm schade, aber viele dank, dass du es versucht hast ;-)

  17. #12
    Erfahrener Benutzer
    Registriert seit
    08.08.2011
    Beiträge
    466
    Thanks
    6
    Thanked 34 Times in 33 Posts

    Standard

    Das print_r() kann gar kein anderes Ergebnis liefern, da es aufgerufen wird, bevor das Formular befüllt wird (isValid($_POST)).

    action="" kann und darf leer bleiben, wenn das Ziel die selbe URL ist.

    P.S. bitte Code richtig einrücken.

  18. #13
    Neuer Benutzer
    Registriert seit
    19.08.2012
    Beiträge
    9
    Thanks
    6
    Thanked 0 Times in 0 Posts

    Standard

    ah okay blöd von mir :/ jetzt liefert check auch 1/0 zurück... dann hat es vllt vorher auch schon funktioniert...
    die checkbox wird also von isValid() auch überprüft?!
    das mit dem Einrücken habe ich schon versucht, dann steht der code fast nur noch in 4 Zeilen, sorry!
    vielen Dank für eure Hilfe!!

    liebe Grüße

  19. #14
    Erfahrener Benutzer
    Registriert seit
    10.02.2011
    Beiträge
    108
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Standard

    die checkbox wird also von isValid() auch überprüft?!
    Validatoren kannst du flexibel anwenden.
    Wenn Du Validatoren einem Element zu weist, werden diesen dann auch über isValid ausgewertet.
    Den Validator Identical würde ich weglassen, da die Methode setRequired( true ) bereits ein "true" verlangt.

  20. #15
    Benutzer Avatar von hoagster
    Registriert seit
    08.03.2008
    Ort
    Hamburg
    Beiträge
    36
    Thanks
    0
    Thanked 1 Time in 1 Post

    Standard

    Zitat Zitat von spicy Beitrag anzeigen
    Wenn Du Validatoren einem Element zu weist, werden diesen dann auch über isValid ausgewertet.
    Den Validator Identical würde ich weglassen, da die Methode setRequired( true ) bereits ein "true" verlangt.
    Soweit ich mich erinnere muss bei einer Checkbox und setRequired() zusätzlich noch setUncheckedValue('') gesetzt werden, sonst ist sie immer valide.

Ähnliche Themen

  1. Decorator Checkbox und Radio
    Von flod im Forum Formulare
    Antworten: 1
    Letzter Beitrag: 01.12.2009, 10:17
  2. Checkbox - Description
    Von ArneRie im Forum Formulare
    Antworten: 8
    Letzter Beitrag: 08.04.2009, 06:29
  3. setRequired Checkbox
    Von spin im Forum Formulare
    Antworten: 2
    Letzter Beitrag: 06.01.2009, 13:15
  4. Dojo Checkbox - Value 0
    Von Mr.AndersoN im Forum Javascript + RIA
    Antworten: 2
    Letzter Beitrag: 08.10.2008, 18:00
  5. Checkbox nicht checked
    Von Nilson im Forum MVC
    Antworten: 14
    Letzter Beitrag: 18.03.2008, 08:58

Lesezeichen

Berechtigungen

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