Formater les données clients

6 messages dans ce sujet

Posté(e) · Signaler ce message

Bonjour

Je souhaiterai que lorsqu'un client s'enregistre sur le site ou que lorsque je créé un utilisateur en BO, à l'enregistrement de la fiche, les données se formatent comme cela :

-NOM de FAMILLE en MAJUSCULES (ne pas accentuer les majuscules)

-Prénom avec première lettre en majuscule seulement (le reste en minuscules)

-La VILLE tout en majuscule sans accent.

Je sais pas faire du tout, ni ou retoucher le code...

Merci pour le tuyau !

JL

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

Pour cela vous pouvez modifier la fonction qui enregistre les utilisateurs dans la base de données : insere_utilisateur qui est défini dans lib/fonctions/user.php

Dans cette fonction vous pouvez appliquer les fonctions PHP ucfirst : https://secure.php.net/manual/fr/function.ucfirst.php ou strtoupper : https://secure.php.net/manual/fr/function.strtoupper.php sur les variables souhaitées.

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

bonsoir Simon

Merci pour votre aide ! mais dans cette version 8, je ne retrouve plus comme dans la version 7 les variables de nom, prénom, ville...

Dans la version précédente je n'avais qu'à faire celà :

, '" . nohtml_real_escape_string(String::ucfirst(String::strtolower(vb($frm['prenom'])))) . "'

 , '" . nohtml_real_escape_string(String::strtoupper(vb($frm['nom_famille']))) . "'

 , '" . nohtml_real_escape_string(String::strtoupper(vb($frm['ville']))) . "'

Mais là, plus rien... A moins que ça se passe ailleurs...

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

Effectivement sur les versions 8 la requête est générée automatiquement en fonction des champs présent dans peel_utilisateurs. Pour appliquer les fonctions que vous souhaitez sur les champs prenom, nom_famille et ville, il faut ajouter un bloc de code au niveau de la ligne 276 (sur la version 8.0.4) :

Il faut remplacer le bloc ci dessous

		if(in_array($this_field, array('description', 'parameters'))) {
			$sql_fields_array[$this_field] = word_real_escape_string($this_field) . "='" . real_escape_string($frm[$this_field]) . "'";
		} else {
			$sql_fields_array[$this_field] = word_real_escape_string($this_field) . "='" . nohtml_real_escape_string($frm[$this_field]) . "'";
		}

par

		if(in_array($this_field, array('prenom'))) {
			$sql_fields_array[$this_field] = word_real_escape_string($this_field) . "='" . nohtml_real_escape_string(String::ucfirst($frm[$this_field])) . "'";
		} elseif(in_array($this_field, array('ville', 'nom_famille'))) {
			$sql_fields_array[$this_field] = word_real_escape_string($this_field) . "='" . nohtml_real_escape_string(String::strtoupper($frm[$this_field])) . "'";
		} elseif(in_array($this_field, array('description', 'parameters'))) {
			$sql_fields_array[$this_field] = word_real_escape_string($this_field) . "='" . real_escape_string($frm[$this_field]) . "'";
		} else {
			$sql_fields_array[$this_field] = word_real_escape_string($this_field) . "='" . nohtml_real_escape_string($frm[$this_field]) . "'";
		}

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour Simon

J'avais pas testé le code corrigé.

Aujourd'hui une cliente s'est inscrite sur le site via le front office, et bien que le nom de famille et la ville soient bien en majuscules, son prénom apparaît également en majuscule...

une idée s'il vous plait ?

Merci pour votre aide.

JL

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

Oui c'est le fonctionnement normal de la fonction ucfirst, qui met en majuscule uniquement la première lettre : http://php.net/manual/fr/function.ucfirst.php

Si vous souhaitez que le reste du prenom soit en minuscule, il faut utiliser la fonction strtolower sur la variable qui contient le prénom;

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !


Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.


Connectez-vous maintenant

Twitter Advisto ecommerce

Facebook PEEL Shopping