|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Inscription : septembre 2009 Messages : 9 ![]() |
Bonjour à tous,
Débutant sur php/mysql, je vous expose mon problème J'ai une tableA champTexte | champInfosComplémentaire champTexte contient du texte, champInfosComplémentaire est vide J'ai une tableB champVille | champPays champVille (PK) est une chaîne de caractère unique ChampPays est rempli Je veux vérifier si pour chaque enregistrement de tableA, champTexte contient une des valeurs de champVille de tableB Si c'est le cas, je voudrais attribuer à champInfosComplémentaire de tableA la valeur de champPays de tableB je pensais à quelque chose du type Code :
Pourriez-vous m'aider, Merci d'avance pour vos réponses |
||
|
|
00
|
|
|
#2 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
Et si champTexte contient plusieurs réferences ?
|
|
|
00
|
|
|
#3 |
|
Inscription : septembre 2009 Messages : 9 ![]() |
Bonne remarque; j'y ai pensé également , mais ce ne pourra être le cas.
|
|
|
00
|
|
|
#4 | ||||
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
Je ne suis pas sur qu'on puisse faire un update sur une fausse jointure mais essaie :
Code :
Code :
|
||||
|
|
00
|
|
|
#5 |
|
Inscription : septembre 2009 Messages : 9 ![]() |
Merci, je vais manger, parce qu'on code mieux le ventre plein
|
|
|
01
|
|
|
#6 | ||
|
Inscription : septembre 2009 Messages : 9 ![]() |
J'ai essayé ceci :
Code :
Code :
mysql_query("UPDATE tableA, tableB SET champInfosComplementaire = $valeurAajouter, image=$valeurImage WHERE champTexte LIKE '%$valeurAchercher%'"); Code :
mysql_query("UPDATE tableA SET champInfosComplementaire =$valeurAajouter, image=$valeurImage WHERE champTexte LIKE '%$valeurAchercher%' "); Quelqu'un aurait une idée...? Merci d'avance |
||
|
|
00
|
|
|
#7 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
Teste déjà les requêtes en direct, comme je t'ai dit, je ne suis pas sur de la syntaxe.
|
|
|
00
|
|
|
#8 | ||
|
Membre habitué
![]() |
Si je comprends bien le soucis, il s'agit en quelques sorte de copier les valeurs de la TableB dans la TableA si un champ de TableA contient la valeur d'un champ de la TableB. (un peu
cette explication).Bon, alors voici une proposition, et désolé, mais j'ai pas le temps dans l'immédiat de pondre tout le code correspondant. Commence par réaliser une requête du format "SELECT * FROM TableB". Ensuite, pour chaque élément récupéré, tu procède dans une boucle à la requête suivant : Code SQL :
UPDATE TableA SET champInfosComplémentaire = :tavariableaAssigner WHERE champTexte LIKE :tavariableCorrespondante En passant par un objet PDO, et PDOStatement, il te sera possible d'appeler la requête sans pour autant devoir à chaque fois retaper toute la requête, et tu aurais donc quelques choses comme ceci : Code PHP :
En espérant que cela puisse t'aider...
__________________
First step: F.A.Q. Second step: Forum -> Recherche Thrid step: Forum -> Poser une question Fourth step: Forum -> Attendre une réponse Fifth step: Forum -> Remercier les personnes ayant répondu et signaler comme résolu Simple non ? l'utilisation de developpez.com
|
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com