Verification format code postal et telephone
Publié: 13 Mars 2013, 23:12
Bonjour
Pour ceux qui utilisent OPENCART uniquement pour la vente en France, voici une petite astuce pour obliger les clients à saisir un code postal à 5 chiffres et un numéro de téléphone à 10 chiffres commençant par 01,02,03,04,05,06,07 ou 09 les modifications ci dessous sont à apporter aux fichiers suivants:
Pour le téléphone sous :
catalog\controller\account\edit,
catalog\controller\account\register
catalog\controller\account\return
catalog\controller\checkout\guest,
catalog\controller\checkout\register
Chercher la ligne suivante :
Remplacer par
Pour le code postal sous :
catalog\controller\account\register
catalog\controller\checkout\guest,
catalog\controller\checkout\guest_shipping
catalog\controller\checkout\payment_adress
catalog\controller\checkout\register
catalog\controller\checkout\shipping_adress
Chercher la ligne suivante :
Remplacer par
Une fois cela fait penser à modifier les traductions des erreurs se trouvant dans le fichiers langages pour adapter votre message d'erreur et alerter les clients sur la mauvaise saisie du format attendu
Pour ceux qui utilisent OPENCART uniquement pour la vente en France, voici une petite astuce pour obliger les clients à saisir un code postal à 5 chiffres et un numéro de téléphone à 10 chiffres commençant par 01,02,03,04,05,06,07 ou 09 les modifications ci dessous sont à apporter aux fichiers suivants:
Pour le téléphone sous :
catalog\controller\account\edit,
catalog\controller\account\register
catalog\controller\account\return
catalog\controller\checkout\guest,
catalog\controller\checkout\register
Chercher la ligne suivante :
- Code: Tout sélectionner
if ((utf8_strlen($this->request->post['telephone']) < 3) || (utf8_strlen($this->request->post['telephone']) > 32)) {$this->error['telephone'] = $this->language->get('error_telephone');}
Remplacer par
- Code: Tout sélectionner
if (!preg_match('#^0[1-79][0-9]{8}$#', $this->request->post['telephone'])) {
$this->error['telephone'] = $this->language->get('error_telephone');}
Pour le code postal sous :
catalog\controller\account\register
catalog\controller\checkout\guest,
catalog\controller\checkout\guest_shipping
catalog\controller\checkout\payment_adress
catalog\controller\checkout\register
catalog\controller\checkout\shipping_adress
Chercher la ligne suivante :
- Code: Tout sélectionner
if ($country_info && $country_info['postcode_required'] && (utf8_strlen($this->request->post['postcode']) < 2) || (utf8_strlen($this->request->post['postcode']) > 10)) {
$json['error']['postcode'] = $this->language->get('error_postcode');
}
Remplacer par
- Code: Tout sélectionner
if ($country_info['postcode_required'] && !preg_match('#^[0-9]{5}$#', $this->request->post['postcode'])) {
$this->error['postcode'] = $this->language->get('error_postcode');
}
Une fois cela fait penser à modifier les traductions des erreurs se trouvant dans le fichiers langages pour adapter votre message d'erreur et alerter les clients sur la mauvaise saisie du format attendu