As-tu déjà vu un contact avoir pour nom 24 et prénom Paul? Retournes vite dans tes cahiers. Il s'agit du BABA et la modélisation.
As-tu déjà vu un contact avoir pour nom 24 et prénom Paul? Retournes vite dans tes cahiers. Il s'agit du BABA et la modélisation.
L’appétit vient en mangeant.
Pourquoi compliquer quand on peut faire plus simple?
Une réponse vous a été utile? pensez à
Vous avez eu la réponse à votre question? marquez votre discussion
Faites un tour aux FAQs et aux tutoriels et cours.
Désolé mais ca fait que 6 mois que j'apprends ces langages donc ce n'est pas évident de tout retenir d'un coup !
Donc, je vais créer un autre champs afin de pouvoir les connectés mes tables. Mais je pense pas que ca va changer mon problème.
Oooh que si!Mais je pense pas que ca va changer mon problème.
L’appétit vient en mangeant.
Pourquoi compliquer quand on peut faire plus simple?
Une réponse vous a été utile? pensez à
Vous avez eu la réponse à votre question? marquez votre discussion
Faites un tour aux FAQs et aux tutoriels et cours.
Bon voila j'ai changer j'ai rajouté un champs dans mes tables pour que ce soit cohérent :
Table 1 : contact
Champs : nom / prenom / numero / interaction/ code_interaction/ code_loge
Table 2 : interaction
Champs: commentaire / reponse / date / lieux/ code_interaction
Table 3: loge
Champs : adresse / ville / region / pays/ code_loge
J'ai rajouter aussi dans ma requête mais ca change rien a mon problème.
(oui j'ai remit "nom" en vachard et les nouveaux champs en INT)
Est-ce que code_loge dans contact a des valeurs correspondantes à celle de code_loge dans loge?
interaction est en relation avec quoi?
L’appétit vient en mangeant.
Pourquoi compliquer quand on peut faire plus simple?
Une réponse vous a été utile? pensez à
Vous avez eu la réponse à votre question? marquez votre discussion
Faites un tour aux FAQs et aux tutoriels et cours.
Elle est où ta nouvelle requête?
L’appétit vient en mangeant.
Pourquoi compliquer quand on peut faire plus simple?
Une réponse vous a été utile? pensez à
Vous avez eu la réponse à votre question? marquez votre discussion
Faites un tour aux FAQs et aux tutoriels et cours.
Cela ne sert à rien d'optimiser quelque chose qui ne fonctionne pas.
Mon site : www.emmella.fr
Je recherche le manuel de l'Olivetti Logos 80B.
Bonjour,
(6 jours, 6 heures,... OK. Mais 6 MOIS !! re- )
AVANT TOUTE CHOSE, il faut revoir (apprendre) LES BASES des tables SQL !!
1/ TRES IMPORTANT : Il te faut ajouter des INDEX (INT, CLE PRIMAIRE, AUTO-INCREMENTE)
Ce n'est pas "nom" qui peut servir à ça (d'abord parce que c'est un VARCHAR, et que plusieurs personnes peuvent avoir le même nom !)
Avantages des INDEX :
- ils s'incrémentent automatiquement (lors d'un INSERT, par ex.)
- ils sont forcément UNIQUES,
- donc identifient de manière sûre et certaine chaque ligne
- ils servent aux jointures
- ...
Table 1 : contact
- id_contact (INT, CLE PRIMAIRE, AUTO-INCREMENTE)
- nom
- prenom
- numero
- interaction
- id_interaction (INT, CLE ETRANGERE)
- id_loge (INT, CLE ETRANGERE)
Table 2 : interaction
- id_interaction (INT, CLE PRIMAIRE, AUTO-INCREMENTE)
- commentaire
- reponse
- date
- lieux
Table 3: loge
- id_loge (INT, CLE PRIMAIRE, AUTO-INCREMENTE)
- adresse
- ville
- region
- pays
2/ JOINTURES
Les jointures se font grâce aux INDEX des tables :
N.B. CC, II et LL sont des "alias" des noms des tables (ce qui évite de les recopier x fois, et rend la requête plus facile à lire)
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 SELECT * FROM contact CC INNER JOIN interaction II ON CC.id_interaction = II.id_interaction INNER JOIN loge LL ON CC.id_loge = LL.id_loge WHERE .....
3/ RECHERCHE multi-critères, avec Requête préparée
ex.
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 // 1- requete $req = "SELECT .......... .......... WHERE CC.nom LIKE :nom OR CC.prenom LIKE :prenom OR LL.ville LIKE :ville ...." // 2- on prépare la requête $select = $bdd->prepare($req); // 3- on exécute, avec les paramètres de la recherche $result = $select->execute(array( ':nom' => '%'.$recherche.'%', ':prenom' => '%'.$recherche.'%', ':ville' => '%'.$recherche.'%', ));
Dernière modification par Invité ; 10/06/2017 à 09h06.
Bonjour jreaux62, Nazoïde et badaze,
Je vous remercie pour votre aide!
Merci Nazoide grâce a toi j'ai mieux compris certaines choses.
Aujourd'hui ma requête fonctionne se n'est peut être pas la mieux mais pour le moment je vais laissé comme ca et continuer à apprendre afin de pouvoir ensuite l'améliorer.
Bonne journée à vous tous.
Merci du temps que vous avez pris pour m'expliquer les choses.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager