Forum CMS Made Simple Francophone

Aide francophone sur CMS Made Simple

Vous n'êtes pas identifié(e).

Annonce

ATTENTION

  • Prenez le temps de rechercher si quelqu'un n'a pas déjà proposé une solution à votre problème. Sur le forum français et sur le wiki
  • Pensez à mettre à jour votre version de CMS Made Simple. Nous ne faisons de support que sur LA dernière version de CMS Made Simple.
  • Renseignez impérativement le formulaire de nouveau message de manière la plus complète que possible. Dans votre CMS utiliser le menu Administration du site/Informations du système en haut Vue au format texte. Ces informations demandées nous permettent de mieux vous aider
  • Ajoutez [Résolu] au début du titre de votre 1er message lorsqu'une solution a été trouvée.

#1 05/10/2016 17:53:16

pixetmots
Membre
Inscription : 23/09/2015
Messages : 31

Faire des requêtes SQL via une UDT , passage de plusieurs paramètres

#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: 1.12.x
#~ Url du site :
#~ Hébergeur / Soft :
#~ Informations Système :
#~~~~~ FIN BLOC A NE PAS SUPPRIMER ~~~~~



Bonjour,

J'utilise dans mon site les informations contenus dans le tuto "Faire des requêtes SQL via une UDT" sur le wiki (désolé je n'ai pas l'autorisation de mettre des URL...)  , et doit modifier mon UDT pour passer plusieurs paramètres

Cependant , je ne comprends pas l'utilisation du ? pour le passage du paramètre.
Aussi, comment passer plusieurs paramètres ?

Merci

Hors ligne

#2 05/10/2016 22:51:57

jissey
Administrateur
Lieu : Volx
Inscription : 30/10/2009
Messages : 2 538
Site Web

Re : Faire des requêtes SQL via une UDT , passage de plusieurs paramètres

Bonsoir,
tu as un exemple de code?


Inscrivez-vous à notre Newsletter sur le site (colonne de droite, en bas).
Vous appréciez CMSMS et l'aide qui vous est fournie ici, aidez-nous en participant au projet.
Formation CMS Made Simple | Création de site CMS Made Simple.

C'est en se plantant qu'on devient cultivé.
J'ai un string dans l'Array (Paris Hilton)

Hors ligne

#3 06/10/2016 10:29:55

exacore
Membre
Lieu : Pau (France)
Inscription : 04/02/2013
Messages : 98
Site Web

Re : Faire des requêtes SQL via une UDT , passage de plusieurs paramètres

pixetmots a écrit :

Cependant , je ne comprends pas l'utilisation du ? pour le passage du paramètre.
Aussi, comment passer plusieurs paramètres ?

Si il s'agit d'un passage de paramètres à partir d'une URL, alors cela se transmet de cette façon :

http://www.domain.tld/page?param1=plop&param2=29&param3=toto

Exacore - Freelance en communication

Hors ligne

#4 07/10/2016 11:06:35

pixetmots
Membre
Inscription : 23/09/2015
Messages : 31

Re : Faire des requêtes SQL via une UDT , passage de plusieurs paramètres

Voici le code extrait du wiki que j'utilise  :

*** debut de citation du wiki ****

Et avec un paramètre ?
On a vu dans les autres tuto que l'on pouvait appeler les UDT avec des paramètres.

Exemple {mon_udt prenom="Jean"} qui est récupérable dans mon udt sous la forme

$prenom = params['prenom'];
On peut donc utiliser ce paramètre pour améliorer les requêtes de notre exercice.


changer ces quelques lignes :

// on crée la requête SQL, en s'assurant de se libérer du préfixe cms_ qui peut différer d'une installation à une autre
$sql = 'SELECT nom,prenom,email FROM `'.cms_db_prefix().'module_monmodule_user` WHERE prenom = ? ORDER BY `nom`';

//Liste des paramètres (array)
$parametreSql = array();
$parametreSql[] = $params['prenom'];

//exécution de la requête et on test le code retour
$dbretour = $db->Execute($sql, $parametreSql);

Notez l'utilisation d'un point d'interrogation, c'est plus sécurisé que de faire Where prenom = '.$param["prenom"].'

*** Fin de citation du wiki ***

Ma question est donc comment utiliser 2 paramètres différents dans l'écriture de la requête $sql=... 

Merci

Hors ligne

#5 10/10/2016 20:44:02

airelibre
Administrateur
Lieu : Alsace
Inscription : 01/12/2009
Messages : 1 169
Site Web

Re : Faire des requêtes SQL via une UDT , passage de plusieurs paramètres

Bonsoir,

Exemple :

$query = 'SELECT nom, prenom FROM ' . cms_db_prefix() . 'module_monmodule_user WHERE prenom=? AND nom=?';
$result = cmsms()->GetDb()->GetArray($query, array($params['prenom'], $params['nom']) );

Hors ligne

Pied de page des forums