Créer un compte ou loggez-vous pour pouvoir ajouter, commenter et noter les snippets.

Navigation

Tags relatifs

my Symfony Plugins

Plugins demos


My bookmarks

Vous pouvez commenter/noter en utilisant le compte anonymous (mot de passe: anonymous)
You can comment/rate using the anonymous account (password: anonymous).

Snippets taggés : "validation" Snippets taggés : "validation"

[symfony 1.1 / 1.2] : Validation OR sur 2 champs différents - 813 view(s)

    // Check category or query
    $v = new sfValidatorCallback(array(
      'callback' => array($this, 'checkCategoryOrQuery')
    ,) ,
    array(
      'invalid'  => 'Veuillez choisir une rubrique ou un mot clé'
    ));
 
    $this->validatorSchema->setPostValidator($v);

et le callback qui va bien:

  /**
   * Check if a category or a keyword has been set.
   *
   * @param sfValidator $validator
   * @param Array $value Form values
   * @param Array $arguments  Validation arguments
   * 
   * @return mixed
   */
  public function checkCategoryOrQuery($validator, $value, $arguments)
  {
    if (empty($value['category_id']) && empty($value['nature_id']))
    {
      throw new sfValidatorError($validator, 'invalid');
    }
 
    return $value;
  }
par COil le 2008-09-29, taggé : callback  form  symfony  validation  validator 
(3 commentaires)

[symfony 1.0] Validation avec un fichier de validateurs externes - 151 view(s)

fillin:
  enabled:      on
  param:
    id:         seller_stockcreate_form
 
fields:
  shop_product{quantity}:
    required:
      msg:                 Vous devez selectionner une quantité
    itemQuantityValidator:
 
  shop_product{price}:
    required:
      msg:                 Vous devez entrer un prix
    shopProductPriceValidator:
 
# Inclusion de l'ensemble des validateurs definis pour le site
<?php include('validate/_validators.yml'); ?>
par COil le 2008-09-29, taggé : config  symfony  validation  validator 
(1 commentaire)

[symfony 1.0] Fichier de validation typique - 352 view(s)

methods:
  post:
    - "user_profile{login}"
    - "user_profile{password}"
    - "user_profile{check_password}"
    - "user_profile{email}"
    - "user_profile{civility}"
    - "user_profile{first_name}"
    - "user_profile{last_name}"
    - "user_profile{birth_date}"
    - "user_profile{address}"
    - "user_profile{postal_code}"
    - "user_profile{town}"
    - "captcha"
    - "user_profile{is_newsletter_subscribed}"
    - "user_profile{is_partners_subscribed}"
    - "user_profile{photo}"
    - "user_profile{personal_url}"
 
fillin:
  enabled: true
  param:
    name: form_register_member
 
names:
  user_profile{login}:
    required:      Yes
    required_msg:  le login est obligatoire
    validators:    [usernameValidator, loginValidator]
 
  user_profile{password}:
    required:      Yes
    required_msg:  le mot de passe est requis
    validators:    passwordValidator
 
  user_profile{check_password}:
    required:     Yes
    required_msg: La confirmation du mot de passe est obligatoire 
    validators:   passwordValidator
 
  user_profile{email}:
    required:      Yes
    required_msg:  l'email est obligatoire
    validators:    [emailValidator, mailuniqValidator]
 
  user_profile{civility}:
    required:      Yes
    required_msg:  veuillez choisir votre civilité
 
  user_profile{first_name}:
    required:      Yes
    required_msg:  le prénom est obligatoire
    validators:    usernameValidator
 
  user_profile{last_name}:
    required:      Yes
    required_msg:  le nom est obligatoire
    validators:    usernameValidator
 
  user_profile{birth_date}:
    required:      Yes
    required_msg:  le nom est obligatoire
    validators:    usernameValidator     
 
  user_profile{address}:
    required:     Yes
    required_msg: l'adresse est obligatoire
 
  user_profile{postal_code}:
    required:      Yes
    required_msg:  le code postal est obligatoire
    validators:    zipcodeValidator

  user_profile{town}:
    required:     Yes
    required_msg: la ville est obligatoire
 
  captcha:
    required:      Yes
    required_msg:  vous devez recopier le code
    validators:    captchaValidator
 
  user_profile{is_newsletter_subscribed}:
    required:     no
 
  user_profile{is_partners_subscribed}:
    required:     no
 
  user_profile{photo}:
    required:     no
 
  user_profile{personal_url}:
    required:     no
 
passwordValidator:
  class:          sfCompareValidator
  param:
    check:          passconf
    compare_error:  les mots de passe ne correspondent pas
 
loginValidator:
  class:            sfPropelUniqueValidator
  param:
    class:          sfGuardUser
    column:         username
    unique_error:   ce login est déjà enregistré, choisissez en un autre.
 
mailuniqValidator:
  class:            sfPropelUniqueValidator
  param:
    class:          UserProfile
    column:         email
    unique_error:   cet email est déjà enregistré, choisissez en un autre.

zipcodeValidator:
  class:            sfNumberValidator
  nan_error:        Veuillez n'entrer que des chiffres
  min:              5
  min_error:        le code postal est au minimum composé de 5 chiffres
 
usernameValidator:      
  class: sfStringValidator
  param:
    min: 3
    min_error: ce login doit être plus long
 
emailValidator:
  class:         sfEmailValidator
  param:
    email_error: l'adresse email n'est pas valide
 
captchaValidator:
  class:         captchaValidator
  param:
    error:       vous devez recopier correctement le code de validation
 
 
 
 
 
methods:         [post]     # This is the default setting
 
fillin:
  enabled:       true
  param:         
    name:        send_page_to_friend_form
    #skip_fields:   [email]  # Do not repopulate these fields
    #exclude_types: [hidden, password] # Do not repopulate these field types
    #check_types:   [text, checkbox, radio, password, hidden] # Do repopulate these
 
validators:
  myStringValidator:
    class: sfStringValidator
    param:
      min:       2
      min_error: This field is too short (2 characters minimum)
      max:       100
      max_error: This field is too long (100 characters maximum)
 
fields:
  name:
    required:
      msg:       The name field cannot be left blank
    myStringValidator:
  email:
    required:
      msg:       The email field cannot be left blank
    myStringValidator:
    sfEmailValidator:
      email_error:  This email address is invalid
  age:
    sfNumberValidator
      nan_error:    Please enter an integer
      min:          0
      min_error:    "You're not even born. How do you want to send a message?"
      max:          120
      max_error:    "Hey, grandma, aren't you too old to surf on the Internet?"
  message:
    required:
      msg:          The message field cannot be left blank
par COil le 2008-09-29, taggé : config  form  symfony  validation  validator 
(1 commentaire)

[symfony 1.0] Validation manuelle d'extension de fichier uploadé - 335 view(s)

Pour eviter les problemes de type MIME, notemment sous MAC.

    /**
     * Fonction de validation manuelle de l'importation
     * 
     * @internal Pour bug Mac type mime
     * 
     * @author Vernet Loic
     * @since  6 mars 2007
     */
     public function validateImport()
     {
        $fieldName = 'importfile';
        $fileName = $this->getRequest()->getFileName($fieldName);
        $validExts = array('.CSV');
 
        if ($this->getRequest()->getMethod() == sfRequest::POST) {
            if ($fileName) {
                foreach($validExts as $validExt) {
                    if (strpos(strtoupper($fileName), $validExt)) {
                        return true;
                    }
                }
                $this->getRequest()->setError($fieldName , 'Extension invalide, l\'extension doît être .csv');                
                return false;
            } else {
                $this->getRequest()->setError($fieldName , 'Fichier invalide');                
                return false;
            }
        }        
        return true;
     }
 
par COil le 2008-09-28, taggé : excel  file  form  post  symfony  upload  validation 
(1 commentaire)

[symfony 1.0] Boucle sur les erreurs de validation - 111 view(s)

<?php 
if ($sf_request->hasErrors()) { 
    foreach($sf_request->getErrors() as $key => $error) {
        echo '<li>'. $key. ' => '. $error. '</li>';
    }    
}
?>
 

Version synthaxe alternative

<?php if ($sf_request->hasErrors()): ?> 
    <ul>
    <?php foreach($sf_request->getErrors() as $key => $error): ?> 
        <li><?php echo $key; ?> => <?php echo $error; ?></li>
    <?php endforeach; ?>
    </ul>    
<?php endif; ?>
 
par COil le 2008-09-28, taggé : error  form  symfony  validation 
Debug toolbar