Hi Thomas, 

Here's my code:

$form_config = new Zend_Config_Ini($this->_application_path
."config/forms/user.ini", "user_form");

                $this->_form = new Zend_Form($form_config->form);

                if ($this->getRequest()->isPost())
                {
                        if 
($this->_form->isValid($this->getRequest()->getPost()))
                        {
                                $data = $this->_form->getValues();

                                unset($data["submit"]); // Is there any other 
way?

                                $this->_row->setFromArray($data);

                                $this->_row->save();

// Now the file name with the correct path gets saved in database
// File does not exist. Folder exists and its writable

                                $this->_redirect("user/profile");
                        }
                        else
                        {
                                $codes = $this->_form->getErrors();
                                $messages = $this->_form->getMessages();

                                Zend_Debug::dump($messages);

                                echo "No success"; exit;
                        }
                }

And in user.ini

[user_form]

form.id = "user_form"
form.method = "post"
form.enctype = "multipart/form-data"
form.action = ""

; username element
form.elements.username.type = "text"
form.elements.username.options.validators.notempty.validator = "NotEmpty"
form.elements.username.options.validators.notempty.breakChainOnFailure =
true
form.elements.username.options.validators.strlen.validator = "StringLength"
form.elements.username.options.validators.strlen.options.min = 6
form.elements.username.options.validators.strlen.options.max = 20
form.elements.username.options.required = true
form.elements.username.options.label = "Username:"

; firstname element
form.elements.firstname.type = "text"
form.elements.firstname.options.validators.notempty.validator = "NotEmpty"
form.elements.firstname.options.validators.notempty.breakChainOnFailure =
true
form.elements.firstname.options.validators.strlen.validator = "StringLength"
form.elements.firstname.options.validators.strlen.options.min = 2
form.elements.firstname.options.validators.strlen.options.max = 30
form.elements.firstname.options.required = true
form.elements.firstname.options.label = "Firstname:"

; lastname element
form.elements.lastname.type = "text"
form.elements.lastname.options.validators.notempty.validator = "NotEmpty"
form.elements.lastname.options.validators.notempty.breakChainOnFailure =
true
form.elements.lastname.options.validators.strlen.validator = "StringLength"
form.elements.lastname.options.validators.strlen.options.min = 2
form.elements.lastname.options.validators.strlen.options.max = 30
form.elements.lastname.options.required = true
form.elements.lastname.options.label = "Lastname:"

; street element
form.elements.street.type = "text"
form.elements.street.options.validators.notempty.validator = "NotEmpty"
form.elements.street.options.validators.notempty.breakChainOnFailure = true
form.elements.street.options.validators.strlen.validator = "StringLength"
form.elements.street.options.validators.strlen.options.min = 2
form.elements.street.options.validators.strlen.options.max = 200
form.elements.street.options.required = false
form.elements.street.options.label = "Street:"

; zipcode element
form.elements.zipcode.type = "text"
form.elements.zipcode.options.validators.notempty.validator = "NotEmpty"
form.elements.zipcode.options.validators.notempty.breakChainOnFailure = true
form.elements.zipcode.options.validators.strlen.validator = "StringLength"
form.elements.zipcode.options.validators.strlen.options.min = 5
form.elements.zipcode.options.validators.strlen.options.max = 5
form.elements.zipcode.options.required = false
form.elements.zipcode.options.label = "Zipcode:"

; city element
form.elements.city.type = "text"
form.elements.city.options.validators.notempty.validator = "NotEmpty"
form.elements.city.options.validators.notempty.breakChainOnFailure = true
form.elements.city.options.validators.strlen.validator = "StringLength"
form.elements.city.options.validators.strlen.options.min = 2
form.elements.city.options.validators.strlen.options.max = 100
form.elements.city.options.required = false
form.elements.city.options.label = "City:"

; phone element
form.elements.phone.type = "text"
form.elements.phone.options.validators.notempty.validator = "NotEmpty"
form.elements.phone.options.validators.notempty.breakChainOnFailure = true
form.elements.phone.options.validators.strlen.validator = "StringLength"
form.elements.phone.options.validators.strlen.options.min = 1
form.elements.phone.options.validators.strlen.options.max = 15
form.elements.phone.options.required = false
form.elements.phone.options.label = "Phone:"

; fax element
form.elements.fax.type = "text"
form.elements.fax.options.validators.notempty.validator = "NotEmpty"
form.elements.fax.options.validators.notempty.breakChainOnFailure = true
form.elements.fax.options.validators.strlen.validator = "StringLength"
form.elements.fax.options.validators.strlen.options.min = 1
form.elements.fax.options.validators.strlen.options.max = 15
form.elements.fax.options.required = false
form.elements.fax.options.label = "Fax:"

; mobile element
form.elements.mobile.type = "text"
form.elements.mobile.options.validators.notempty.validator = "NotEmpty"
form.elements.mobile.options.validators.notempty.breakChainOnFailure = true
form.elements.mobile.options.validators.strlen.validator = "StringLength"
form.elements.mobile.options.validators.strlen.options.min = 1
form.elements.mobile.options.validators.strlen.options.max = 15
form.elements.mobile.options.required = false
form.elements.mobile.options.label = "Mobile:"

; email element
form.elements.email.type = "text"
form.elements.email.options.validators.notempty.validator = "NotEmpty"
form.elements.email.options.validators.notempty.breakChainOnFailure = true
form.elements.email.options.validators.strlen.validator = "StringLength"
form.elements.email.options.validators.strlen.options.min = 5
form.elements.email.options.validators.strlen.options.max = 255
form.elements.email.options.required = true
form.elements.email.options.label = "E-mail:"

; description element
form.elements.description.type = "textarea"
form.elements.description.options.validators.notempty.validator = "NotEmpty"
form.elements.description.options.validators.notempty.breakChainOnFailure =
false
form.elements.description.options.required = false
form.elements.description.options.label = "Description:"

; blog element
form.elements.blog.type = "text"
form.elements.blog.options.validators.notempty.validator = "NotEmpty"
form.elements.blog.options.validators.notempty.breakChainOnFailure = true
form.elements.blog.options.validators.strlen.validator = "StringLength"
form.elements.blog.options.validators.strlen.options.min = 5
form.elements.blog.options.validators.strlen.options.max = 255
form.elements.blog.options.required = false
form.elements.blog.options.label = "Mobile:"

; signature element
form.elements.signature.type = "textarea"
form.elements.signature.options.validators.notempty.validator = "NotEmpty"
form.elements.signature.options.validators.notempty.breakChainOnFailure =
false
form.elements.signature.options.required = false
form.elements.signature.options.label = "Signature:"

; picture element
form.elements.picture.type = "file"
form.elements.picture.options.required = false
form.elements.picture.options.destination = "/path/to/my/userspics"
form.elements.picture.options.label = "Picture:"

; submit button element
form.elements.submit.type = "submit"
form.elements.submit.options.name = "submit"
form.elements.submit.options.value = "Update"
form.elements.submit.options.label = "Update"



thomasW wrote:
> 
> Hy Marko,
> 
> Please give us some example code.
> 
> Normally I would say, that you forgot to validate the form, or the
> specified 
> directory does not exist.
> Files are transferred (copied) AFTER the validation was successfull.
> 
> Greetings
> Thomas Weidner, I18N Team Leader, Zend Framework
> http://www.thomasweidner.com
> 
> ----- Original Message ----- 
> From: "Marko Korhonen" <[EMAIL PROTECTED]>
> To: <[email protected]>
> Sent: Saturday, August 16, 2008 9:41 AM
> Subject: [fw-general] Zend_Form_Element_File with new Zend_File + ini
> config
> 
> 
>>
>> Hi,
>>
>> I have my form defined in onw ini file.
>>
>> I added following lines to use the new Zend_File component:
>>
>> form.enctype = "multipart/form-data"
>>
>> and:
>>
>> form.elements.picture.type = "file"
>> form.elements.picture.options.required = false
>> form.elements.picture.options.destination = "/path/to/my/userspics"
>> form.elements.picture.options.label = "Picture:"
>>
>>
>> database seems to get the correct path to the correct file, but file does
>> not appear to the
>> folder I have defined.
>>
>> Any clue what I'm doing wrong?
>>
>> I didn't find any examples using ini file, so I just tried this.
>>
>> br, Marko
>> -- 
>> View this message in context: 
>> http://www.nabble.com/Zend_Form_Element_File-with-new-Zend_File-%2B-ini-config-tp19009432p19009432.html
>> Sent from the Zend Framework mailing list archive at Nabble.com. 
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Zend_Form_Element_File-with-new-Zend_File-%2B-ini-config-tp19009432p19009910.html
Sent from the Zend Framework mailing list archive at Nabble.com.

Reply via email to