2011-02-18 2 views
0

Je veux voir si la valeur spécifiée est là dans le tableau T1. et si la valeur existe, je veux entrer la valeur dans la table T2,MYSQL/php question de base

Comment puis-je faire cela dans PHP?

Je veux vérifier l'existence puis insérez les valeurs par la commande suivante

Je veux dans ce format

if (table1.id = Exist's) 

then 

{insert into table2 (values) } 

Quelle est la bonne façon d'écrire ce code avec PHP?

+1

Que voulez-vous faire avec le dossier si elle existe déjà ? Voulez-vous le mettre à jour ou l'ignorer ou autre chose? –

+0

Quelle est la valeur que vous vérifiez? La table 'link' de votre code,' T1' ou 'T2', est-elle dans votre question? Est-ce que 'T1' a une contrainte unique sur la colonne que vous vérifiez? –

+0

Je vous suggère également de changer le titre de cette question. La partie "question de base" n'est pas vraiment informative. –

Répondre

3

Eh bien, cela pourrait vous aider.

RÉPONSE À JOUR

Eh bien, pour la table TB1

+-------+-------------+------+-----+---------+-------+ 
| Field | Type  | Null | Key | Default | Extra | 
+-------+-------------+------+-----+---------+-------+ 
| fld1 | varchar(20) | YES |  | NULL |  | 
| fld2 | varchar(20) | YES |  | NULL |  | 
| fld3 | varchar(20) | YES |  | NULL |  | 
+-------+-------------+------+-----+---------+-------+ 

et une table TB2

+-------+-------------+------+-----+---------+-------+ 
| Field | Type  | Null | Key | Default | Extra | 
+-------+-------------+------+-----+---------+-------+ 
| fld1 | varchar(20) | YES |  | NULL |  | 
| fld2 | varchar(20) | YES |  | NULL |  | 
| fld3 | varchar(20) | YES |  | NULL |  | 
+-------+-------------+------+-----+---------+-------+ 

INSERT INTO tb1 (fld1, fld2, fld3) SELECT tb2.fld1, tb2.fld2, 
    tb2.fld3 FROM tb2; 

Works pour version 5.1.49, la réponse serait

$sql = "INSERT INTO table1 (fld1, fld2, fld3) SELECT table2.fld1, ". 
    table2.fld2, table2.fld3 FROM table2 WHERE table2.id= ".$somevalue; 

MISE À JOUR ne pas besoin de vérifier id, il vérifie automatiquement s'il n'y a pas id alors, u ajoutera null

INSERT INTO table2 (fld1, fld2, fld3) SELECT table1.fld1, table1.fld2, table1.fld3 
FROM table1 where table1.id = someid ; 
+0

Votre réponse précédente était meilleure. 'SELECT' dans' VALUES' ne fonctionnera pas. –

+0

@The Scrum Meister ok je teste –

+0

je le veux dans ce format si (table1.id = Existent de) puis {insérer dans table2 (valeurs)} Quel est le format prople pour écrire ce code pour PHP? – Yahoo