Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1363 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  aide pour formuler une requete sql-ça y est presque!!-

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

aide pour formuler une requete sql-ça y est presque!!-

n°1300682
flock86
oh non les gars pas le slip!
Posté le 07-02-2006 à 18:06:29  profilanswer
 

Salut à tous!!
 
voilà j'ai une requete sql à faire et je vois pas comment la formuler :  
 
j'ai une bdd qui comporte (on va simplifier à mort ) :  
 
id en autoincrement
identifiant
nom
prenom
adresse
date d'intégration de l'info
 
pour éclaircir la situation je vais prendre un exemple  :) :
id=1 identifiant=abcd  nom=Dupont prénom=Jean Louis adresse : 3, rue pied de poule date=2004-01-01
id=2 identifiant=abcd nom=Dupont prénom=Jean Louis adresse : 3, rue des abrutis date=2005-05-15
id=3 identifiant=abcd  nom=Brutos prénom=Jean Louis adresse : 3, rue des abrutis date=2006-11-15
je voudrais faire une requete qui me dit :  
"trouve moi les lignes de la bdd pour lesquelles l'identifiant est celui que j'ai envoyé (via un formulaire). si il y a une différence dans ces lignes (exemple le changement d'adresse) affiche moi le nom du champ où c'est différent et la date d'intégration de l'info la plus récente."
 
en fait ce que je veux pouvoir dire après c'est :  
identifiant= abcd  cette personne a changé d'adresse le 2005-05-15 ancienne adresse : 3, rue pied de poule  nouvelle adresse : 3, rue des abrutis  
identifiant= abcd cette personne a changé de nom le 2005-11-15 ancien nom : Dupont nouveau Nom : Brutos
 
je suis un peu novice en php/mysql et je vois vraiment pas comment formuler une requete qui me permettrait d'avoir ce résultat... :euh: :heink:  
 
quelq'un peut-il m'aider s'il vous plait???
 
merci d'avance!! :D


Message édité par flock86 le 08-02-2006 à 15:18:46
mood
Publicité
Posté le 07-02-2006 à 18:06:29  profilanswer
 

n°1300687
omega2
Posté le 07-02-2006 à 18:25:19  profilanswer
 

Si ta version de mysql est assez récente :
"select table1.colone1,table1.colone2 ... FROM table1 t1,(SELECT identifiant,count(*) nb FROM table1 GROUP BY identifiant HAVING nb>1) t2 WHERE table1.identifiant=table2.identifiant ORDER BY table1.identifiant,table1.date"
 
Ca te donne pas le nom de la colone où il y a eu des changements mais ca te racourcis quand même grandement le travail.
 
Explication de la requette :
a premiére vu la seule chôse difficile dans cette requette, c'est de trouver une seconde requette à l'intérieur. On appelle ça une "requette imbriqué".
Pour faire simple, une requette imbriqué est à considérer comme une table virtuelle dont le contenu est le résultat de la requette.
 
La "requette imbriquée" de cette requette sert à chercher les identifiant comuns à plusieurs lignes et la requette principale sert à retourner les champs des lignes qui correspondent à cet identifiant.
 
Pour avoir ce qui a changé, il te reste à comparer, grace à php, le contenu des champs avec le contenu des champs de la lignes précédante si c'est la même personne pour les deux lignes.

n°1300695
flock86
oh non les gars pas le slip!
Posté le 07-02-2006 à 18:34:37  profilanswer
 

ok merci!! c'est déjà une piste!!
pour comparer sur php je pense pouvoir me débrouiller...
faut que je prenne en compte le nombre des lignes si je te suis bien (?)
c'est t1 et t2 dans ta requete que je saisis pas...
et ça aussi : "GROUP BY identifiant HAVING nb>1"
en gros ça veut dire sélectionne les groupes d'identifiants qui sont en nombre supérieur à 1? (pour éviter de sélectionner une seule ligne si unique c'est ça?)
en fait l'identifiant est donné via un formulaire...ça doit ptet changer un peu la donne....
 
 :lol:  c'est la tempête sous un crâne là!!!
 
mais merci beaucoup pour ces infos!!! je vais pouvoir fouiner dans ce sens!!

Message cité 1 fois
Message édité par flock86 le 07-02-2006 à 18:39:29
n°1300722
peter45
Posté le 07-02-2006 à 19:27:34  profilanswer
 

Voila ce que je te propose, je n'ai pas testé, fais moi signe si ça marche ou pas. Je pense qu'il est indispensable  traiter le résultat de la requête via le while pour afficher les changements :

Code :
  1. <?php
  2. $identifiant='abcd';
  3. $requete = "SELECT * FROM ma_table where identifiant='$identifiant' ORDER BY `date` DESC";
  4. $resultat = @mysql_query($requete);
  5. if(@mysql_numrows($resultat)>1){//1
  6. $i=0;
  7. while($aff = mysql_fetch_array($resultat)){//while
  8. if ($i ==0){//0  première ligne de résultats, c'est la plus récente
  9. $nom_actuel = $aff["nom"];
  10. $prenom_actuel = $aff["prenom"];
  11. $adresse_actuelle = $aff["adresse"];
  12. }//0
  13. if ($aff["nom"] != $nom_actuel && $stop1 != 1){//2
  14. echo "identifiant= ".$identifiant." - cette personne a changé de nom le ".$date changement;
  15. echo "<br> ancien nom : ".$aff["nom"]."<br>nouveau nom : ".$nom_actuel;
  16. $stop2 = 1;//permet de ne pas afficher les changements de nom plus anciens
  17. }//2
  18. if ($aff["prenom"] != $prenom_actuel && $stop2 != 1){//3
  19. echo "identifiant= ".$identifiant." - cette personne a changé de prénom le ".$date changement;
  20. echo "<br> ancien prénom : ".$aff["prenom"]."<br>nouveau prénom : ".$prenom_actuel;
  21. $stop2 = 1;//permet de ne pas afficher les changements de prénom plus anciens
  22. }//3
  23. if ($aff["adresse"] != $adresse_actuelle && $stop3 != 1){//4
  24. echo "identifiant= ".$identifiant." - cette personne a changé d'adresse le ".$date changement;
  25. echo "<br> ancienne adresse : ".$aff["adresse"]."<br>nouvelle adresse : ".$adresse_actuelle;
  26. $stop3 = 1;//permet de ne pas afficher les changements d'adresse plus anciens
  27. }//4
  28. $date changement = $aff["date"];
  29. $i++;
  30. }//while
  31. }//1
  32. ?>


Message édité par peter45 le 07-02-2006 à 19:53:12
n°1300961
flock86
oh non les gars pas le slip!
Posté le 08-02-2006 à 08:59:26  profilanswer
 

excellent!! merci du coup de main!
 
il faut que je teste ça...ça rique de me prendre un peu de temps...
faut que j'adapte à ma situation exacte
 
mais un grand merci à vous deux!  je vous tiens au courant!!
 
[edit] j'ai compris ton code...ça m'a l'air adapté à mon besoin, c'est vraiment sympa de m'avoir écrit ça! je vais pouvoir taffer dessus!
le truc (je vais voir comment ça se bidouille) je voudrais bien afficher les anciens changements d'adresse également... en gros si tu veux ça fera une "tracabilité" totale de la personne...si elle change 4 fois de logement dans l'année, deux fois de nom etc... me fera autant de ligne que de changements...
mais ton code c'est déjà ENORME pour moi...
merci encore!!!
++


Message édité par flock86 le 08-02-2006 à 09:12:42
n°1301079
omega2
Posté le 08-02-2006 à 11:07:20  profilanswer
 

flock86 a écrit :

ok merci!! c'est déjà une piste!!
pour comparer sur php je pense pouvoir me débrouiller...
faut que je prenne en compte le nombre des lignes si je te suis bien (?)
c'est t1 et t2 dans ta requete que je saisis pas...
et ça aussi : "GROUP BY identifiant HAVING nb>1"
en gros ça veut dire sélectionne les groupes d'identifiants qui sont en nombre supérieur à 1? (pour éviter de sélectionner une seule ligne si unique c'est ça?)
en fait l'identifiant est donné via un formulaire...ça doit ptet changer un peu la donne....
 
 :lol:  c'est la tempête sous un crâne là!!!
 
mais merci beaucoup pour ces infos!!! je vais pouvoir fouiner dans ce sens!!

Je viens de me relire, et c'est normal que t1 et t2 te semblent compliqué vu qu'aprés je les utilisent plus. :lol:
En fait, t1 est un alias de la table "table1" et t2 un alias de la table virtuelle généré par la requette imbriqué.
Ce qui t'as compliqué la compréhension, c'est qu'ensuite pour indiquer les champs, j'ai utilisé table1 et table2 au lieu de t1 et t2. (erreur de saisie)
 
Comme tu l'as compris, le "group by" permet de regrouper les lignes dont les valeurs des champs indiqué ensuite sont identique.
Comme on a mis un "count(*)" et un "group by", le "count(*)" indique le nombre de lignes correspond à chaque groupe. Le "having" situé derriére peut donc suprimer ceux qui ont plus d'un membre.
 
 
Si t'as juste les lignes d'un seul identifiant à récupérer ta requette est beaucoup plus simple et se limite donc à un simple "select" tout ce qu'il y a de classique. Côté mysql, un "mysql_num_rows()" te permettre de savoir combien de lignes sont retourné par la requette et donc s'il y a eu des changements probables (plusieurs lignes) ou aucun changement. (1 seule ligne trouvé) C'est d'ailleur exactement ce que t'as indiqué "peter45".

n°1301108
flock86
oh non les gars pas le slip!
Posté le 08-02-2006 à 11:16:30  profilanswer
 

ouais merci beaucoup, je comprends ce que tu m'as dit (serais-je entrain de progresser?)
 
concernant peter45, j'ai fait des tests à partir de son code mais la pageme renvoie quelque chose de bizarre :  
 
 
1) {//1 $i=0; while($aff = mysql_fetch_array($resultat))//while {if ($i ==0){//0 première ligne de résultats, c'est la plus récente $nom_actuel = $aff["nom"]; $prenom_actuel = $aff["prenom"]; $adresse_actuelle = $aff["adresse"]; }//0 if ($aff["nom"] != $nom_actuel && $stop1 != 1){//2 echo "identifiant= ".$identifiant." - cette personne a changé de nom le ".$date changement; echo "
ancien nom : ".$aff["nom"]."
nouveau nom : ".$nom_actuel; $stop2 = 1;//permet de ne pas afficher les changements de nom plus anciens }//2 if ($aff["prenom"] != $prenom_actuel && $stop2 != 1){//3 echo "identifiant= ".$identifiant." - cette personne a changé de prénom le ".$date changement; echo "
ancien prénom : ".$aff["prenom"]."
nouveau prénom : ".$prenom_actuel; $stop2 = 1;//permet de ne pas afficher les changements de prénom plus anciens }//3 if ($aff["adresse"] != $adresse_actuelle && $stop3 != 1){//4 echo "identifiant= ".$identifiant." - cette personne a changé d'adresse le ".$date changement; echo "
ancienne adresse : ".$aff["adresse"]."
nouvelle adresse : ".$adresse_actuelle; $stop3 = 1;//permet de ne pas afficher les changements d'adresse plus anciens }//4 $date changement = $aff["date"]; $i++; }//while }//1 ?>  
 
je me suis demandé si c'était un problème de quotes ou de guillements, mais apparemment non...ou j'ai pas les yeux en face des trous...
 
c'est de la requete complexe à mon niveau mais je vais tenter de trouver ce qui plante.
 
en tous les cas merci pour votre coup de main (ouais je le dit 8 fois dans chaque post mais j'y serais pas arrivé seul sur ce coup...)
je continue dans cette voie, et attends de vos nouvelles quand même!!
 
chapo bas

n°1301114
omega2
Posté le 08-02-2006 à 11:21:52  profilanswer
 

Si t'as tout ça qui s'affiche, alors par hasard, t'aurais pas un "?>" qui traine là où il faudrait pas?

n°1301140
flock86
oh non les gars pas le slip!
Posté le 08-02-2006 à 11:41:33  profilanswer
 

autant pour moi...
je sais pas pourquoi mais j'avais du mal regarder un truc...
en fait il n'y a pas de ?> en trop vuè qu'il n'y en a qu'un dans le code...
à la fin.
mais en revanche j'ai une faute de syntaxe (parse error) à la ligne 17...
je regarde ce que c'est...je sais que c'est toujouts pénible les quotes et les " dans ce genre de requete... vais échapper mes variables en les concaténant avec des quotes..
 
me penche dessu...
je vais y arriver!!!!
 
merci omega 2 de preter attention à mes turpitudes de noob!
(et de 9)

n°1301176
flock86
oh non les gars pas le slip!
Posté le 08-02-2006 à 12:28:31  profilanswer
 

bon j'ai trouvé ou il ya un problème :  
y'avait une variable "date_changement" qui était écrit à un moment (lignes 14 19 et 24 ) "date changement".  
après, je m'y connais pas trop mais il y a cette fameuse variable qui est déclarée en fin de script.
du coup je l'ai remise avec les autres ($nom_actuel etc...)  
et là ça roule....
je continue sur ma lancée de test  
 
je vais y arriver!! (bis)
 
[edit]
ok ça marche presque!!
  tout est presque ok peter45 t'es un chef!!!
 
les $stop1 et $stop2 ne sont pas définis...et yé né sais pas... faut ptet les déclarer plus tôt aussi?  
 
 
voici ce que j'ai dans ma page :  
 
 
Notice: Undefined variable: stop3 in c:\documents and settings\pflo123\bureau\site_demarchage\essaihistorique2.php on line 28
identifiant= abcd - cette personne a changé d'adresse le 2005-11-15
ancienne adresse : 3 rue mamie 86000 poitiers
nouvelle adresse : 3 rue grand mamie 86000 Poitiers
 
Notice: Undefined variable: stop1 in c:\documents and settings\pflo123\bureau\site_demarchage\essaihistorique2.php on line 17
identifiant= abcd - cette personne a changé de nom le 2005-11-14
ancien nom : Dupont
nouveau nom : Brutos
 
et dans mes données  de la base j'ai :  
 id identifiant nom prenom adresse date  
      1 abcd Dupont Jean  3 rue papi 86000 poitiers 2005-11-12  
      2 abcd Dupont Jean 8 rue mamie 86000 poitiers 2005-11-13  
      3 abcd Brutos Jean 3 rue mamie 86000 poitiers 2005-11-14  
      4 abcd Brutos Jean 3 rue grand mamie 86000 Poitiers 2005-11-15
 
donc :  
normalement je devrais avoir comme résultat :  
 
identifiant= abcd - cette personne a changé d'adresse le 2005-11-15
ancienne adresse : 3 rue mamie 86000 poitiers
nouvelle adresse : 3 rue grand mamie 86000 Poitiers
 
identifiant= abcd - cette personne a changé d'adresse le 2005-11-13
ancienne adresse : 3 rue papi 86000 poitiers
nouvelle adresse : 3 rue mamie 86000 Poitiers
 
identifiant= abcd - cette personne a changé de nom le 2005-11-14
ancien prénom : Dupont
nouveau prénom : Brutos
 
 
 
entous les cas c'est vraiment cool d'avoir des mecs compétents en pour m'aider!!


Message édité par flock86 le 08-02-2006 à 14:56:18
mood
Publicité
Posté le 08-02-2006 à 12:28:31  profilanswer
 

n°1301205
flock86
oh non les gars pas le slip!
Posté le 08-02-2006 à 13:10:15  profilanswer
 

je sais ce qu'il faudrait pour que ça roule pile poil :  
il faudrait qu'il lise la deuxième ligne (la deuxième plus ancienne),  la compare avec la première uniquement (la plus ancienne), puis qu'il prenne la 3e, la compare avec la 2e etc... jusqu' à arriver à la plus récente! et hop pour toute modification d'une ligne sur l'autre, ça m'affiche toutes les modifications dans l'ordre chronologique...
c'est presque ça en fait...
 
sauf que quand je vire les $stop pour m'afficher tous les changements, il me compare pas la ligne 2 avec la ligne 1 et la ligne1 avec la ligne 0, mais ligne2 ->ligne1 et ligne2->ligne0...
 
mais alors pour écrire le script exact  :sweat: c'est toujours pas de mon niveau...
si près du but!!!
 
c'est enorme déjà ce que vous zavez fait pour moi c'est trop coool  :jap:  :jap:  :jap:  
 :D  allez hop je me remets au turbin!! on sait jamais vais ptet y arriver  :D !!


Message édité par flock86 le 08-02-2006 à 14:59:28
n°1301378
omega2
Posté le 08-02-2006 à 15:29:00  profilanswer
 

Si tu veux faire autant de comparaisons, alors mets tout dans un tableau et utilise les indices du tableau pour choisir les lignes à comparer.

n°1301434
flock86
oh non les gars pas le slip!
Posté le 08-02-2006 à 16:02:36  profilanswer
 

omega2 a écrit :

Si tu veux faire autant de comparaisons, alors mets tout dans un tableau et utilise les indices du tableau pour choisir les lignes à comparer.


ok! je vais me pencher la dessus, j'y avais pas pensé (et pas près de le faire!  :lol: )
 
je vois pas trop ce que ça peut donner pour l'instant mais bon je dirai que c'est normal, vu mon niveau de quiche!
ça va le faire au bout d'un moment...perseverance!!
 
sinon ptet en faisant 1 " for ($i=0, >10, $i++)"? un truc du genre ?...ché pas.
car je compare toujours en fonction de l'identifiant... j'entendais par comparaison "ligne par ligne" en fonction de l'identifiant...
vraiment désolé si j'ai pas été clair la dessus...
mais t'as sans doute raison pour le tableau!
 
 :lol: quel monde de fou!  
 
 :jap: pour ta patience omega2!


Message édité par flock86 le 08-02-2006 à 16:35:23
n°1301608
peter45
Posté le 08-02-2006 à 20:46:02  profilanswer
 

Bonjour Flock86, j'ai vérifié le script avec une table.  
Je ne pense pas qu'il soit utile de mettre les lignes de la requête dans un tableau pour effectuer de nouvelles requête à partir de ce tableau car ce que tu demandes est simple mais c'est très utile pour des cas plus complexes comme le dit omega2 ; j'ai appris cela en épluchant Phorum.
Les corrections :

  • ligne 16 corriger le n° : $stop1 = 1;//permet de ne pas afficher les changements de nom plus anciens
  • si tu souhaites afficher toutes les modifications, il faut supprimer les  && $stop1 != 1 dans les lignes 16, 21 et 26 et eventuellement les $stop1 = 1;//permet de ne pas afficher les changements d'adresse plus anciens
  • oubli du symbole underline dans $date changement ==> $date_changement
  • mettre une balise retour à la ligne <br>après la fin de chaque message echo "<br> ancien nom : ".$aff["nom"]."<br>nouveau nom : ".$nom_actuel."<br>";

voici la table :

Code :
  1. --
  2. -- Structure de la table `ma_table`
  3. --
  4. CREATE TABLE `ma_table` (
  5.   `id` int(3) NOT NULL default '0',
  6.   `identifiant` varchar(50) NOT NULL default '',
  7.   `nom` varchar(70) NOT NULL default '',
  8.   `prenom` varchar(70) NOT NULL default '',
  9.   `adresse` varchar(120) NOT NULL default '',
  10.   `date` datetime NOT NULL default '0000-00-00 00:00:00',
  11.   PRIMARY KEY  (`id`),
  12.   UNIQUE KEY `nom` (`nom`,`prenom`,`adresse`)
  13. ) TYPE=MyISAM;
  14. --
  15. -- Contenu de la table `ma_table`
  16. --
  17. INSERT INTO `ma_table` VALUES (1, 'abcd', 'Dupont', 'Jean', ' 3 rue papi 86000 poitiers', '2005-11-12 00:00:00');
  18. INSERT INTO `ma_table` VALUES (2, 'abcd', 'Dupont', 'Jean', '8 rue mamie 86000 poitiers', '2005-11-13 00:00:00');
  19. INSERT INTO `ma_table` VALUES (3, 'abcd', 'Brutos', 'Jean', '3 rue mamie 86000 poitiers', '2005-11-14 00:00:00');
  20. INSERT INTO `ma_table` VALUES (4, 'abcd', 'Brutos', 'Jean', '3 rue grand mamie 86000', '2005-11-15 00:00:00');


voici ce que le script retourne :

Citation :

identifiant= abcd - cette personne a changé d'adresse le 2005-11-15 00:00:00
ancienne adresse : 3 rue mamie 86000 poitiers
nouvelle adresse : 3 rue grand mamie 86000
identifiant= abcd - cette personne a changé de nom le 2005-11-14 00:00:00
ancien nom : Dupont
nouveau nom : Brutos

n°1301799
flock86
oh non les gars pas le slip!
Posté le 09-02-2006 à 08:36:09  profilanswer
 

vraiment peter45 un grand merci pour ton investissement sur mon problème!
 
sans déprécier la qualité des aides d'autres membres du forums (et je ne dis surtout pas ça pour toi omega2, tu m'as déjà bcp apporté dans ce post et dans d'autres auparavant), le genre de coup de main que tu me files est plutôt rare, et m'a permis d'avancer énormément sur des taches qui me seraient impossibles à réaliser à l'heure actuelle. le fait que tu m'aies filé un  bout de code m'a permis de comprendre la démarche à adopter et comment le faire! génial!! :wahoo:  
je peux te dire que j'apprécie vraiment ton aide à sa juste valeur!!  :jap:  
 
En fait, je ne sais pas si tu as lu les posts précédents (plutot longs je l'admets), mais j'avais potassé pas mal ton code pour arriver à mes fins, et j'en étais arrivé au même niveau que ce que tu m'as donné actuellement.(en 20 fois plus de temps que toi mais bon. j'y suis arrivé c'est déjà ça!)
 
Déjà, c'est vraiment extra ce que tu m'as filé...
là où je dis que j'y suis presque c'est que :  
si on vire les $stop, pour afficher les anciens changements, ça me comparera toujours la ligne la plus récente avec une plus ancienne.
or, j'aurais besoin qu'il me compare, par exemple, l'avant-avant dernier changement d'adresse avec l'avant dernier changement d'adresse, puis l'avant dernier changement d'adresse avec le dernier changement d'adresse.
je sais pas si je suis clair, c'est toujours compliqué à formuler simplement.
 je vais prendre un exemple :  
 
 
tu vois dans la base il y a deux changements d'adresse : on passe d'abord  de rue papi à rue mamie, puis de rue mamie à rue grand mamie.
si on vire les $stop :  
ça nous comparera rue grand mamie à rue mamie -ok c'est ce qu'on veut!-  
MAIS
ça nous comparera rue grand mamie à rue papi, alors qu'il faudrait qu'il compare  rue mamie à rue papi !  
 
c'est juste ça qui me bloque en fait... c'est sans doute une histoire de $i un truc comme ça...
 
Je peux pas te demander d'en faire plus c'est déjà beaucoup.  
je sais pas comment arriver à ça encore, vu mon niveau, mais je fais tout pour en tous les cas.
j'essaye de voir la méthode d'omega2 pour les tableaux, même si j'avance au sonar plutot qu'à vue de ce coté.  
mais avec la combinaison de vos aides respectives, je vais bien finir par trouver un moyen! :wahoo:  
 
 
à moins qu'il existe, comme tu dis un moyen plus simple d'y arriver?  
 
en tous les cas  :jap:  :jap:  pour l'aide que tu m'apportes!
 :hello:


Message édité par flock86 le 09-02-2006 à 14:02:54
n°1302407
peter45
Posté le 09-02-2006 à 18:41:23  profilanswer
 

Bonjour Flock86,

  • il suffit de déplacer les lignes 9,10 et 11 entre les lignes 29 et 30
  • remplacer la ligne 8 par if ($i !=0){//0  
  • et de déplacer la ligne 12 juste après la ligne 27.

Bien content de t'avoir dépanné.
@+
 

n°1303275
flock86
oh non les gars pas le slip!
Posté le 10-02-2006 à 21:03:39  profilanswer
 

et bien peter 45 respect!
je n'ai pas testé ce que tu viens de me filer, mais je ne doute pas que ça me permettra d'arriver à mes fins! (au pire je rebidouillerai mais tu m'auras filé les clefs pour y arriver..et même plus!!
merci beaucoup, je potasse ça et je te préviendrai si ça marche. c'est génial!


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  aide pour formuler une requete sql-ça y est presque!!-

 

Sujets relatifs
Aide Vbscript type incompatible.Table invisible dans requête access, possible?
Demande d' aide sur les pointeursBesoin d'aide pour création d'interface graphique
Requete php/mysqlAide pour développer avec delta3D
aide inseré gif sur photoProblème avec une requête
Numérotation dans requête sql vers fichier Excel[PHP] - Aide : Expression Régulière
Plus de sujets relatifs à : aide pour formuler une requete sql-ça y est presque!!-


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR