PHP-MYSQL fonction insert

Fermé
nikalkal Messages postés 232 Date d'inscription mercredi 3 septembre 2003 Statut Membre Dernière intervention 14 avril 2006 - 2 oct. 2003 à 10:41
stfm Messages postés 60 Date d'inscription jeudi 7 mars 2002 Statut Membre Dernière intervention 8 mars 2004 - 2 oct. 2003 à 11:15
Salut à tous,
je voulais savoir si la methode WHERE peut-etre utilisée dans la fonction insert car j'arrive pas à trouver d'exemple ou where est utilisé.
Moi je fais la requete suivante:
$sql = "INSERT INTO `match` WHERE nom_match='$MATCH' (score1,score2) VALUES ('$Score_equipe1','$Score_equipe2')";

et elle passe pas! Par contre si j'omet la partie where ca passe. Le probleme est que j'ai besoin d'affecter les valeurs que sur certains champs.

Faut-il passer par plusieurs commandes?


La plus belle parole est encore le silence!
A voir également:

6 réponses

nikalkal Messages postés 232 Date d'inscription mercredi 3 septembre 2003 Statut Membre Dernière intervention 14 avril 2006 8
2 oct. 2003 à 11:08
Finalement, j'avais un probleme de passage de parametre!

Par contre, tu as raison stfm -> la fonction update est mieux aproprié pour ce que je veux faire.

La requete du coup est bien éxécutée mais j'ai un probleme c'est que dans mes champs score1 et score2 concernés, je n'ai pas du tout mon score.
Les variables: $score_equipe1 et $score_equipe2 sont des entiers car juste avant je fais $score_equipe1 = 1 et $score_equipe2 = 3 par exemple et les champs score1 et score2 de ma base de donée sont déclarés comme étant des entiers.

D'ou peut venir le problème??


La plus belle parole est encore le silence!
1
nikalkal Messages postés 232 Date d'inscription mercredi 3 septembre 2003 Statut Membre Dernière intervention 14 avril 2006 8
2 oct. 2003 à 10:48
Attendez, j'crois qu'mon erreur vient d'ailleur. je vais voir...


La plus belle parole est encore le silence!
0
Utilisateur anonyme
2 oct. 2003 à 10:52
Bonjour,
Heu bah, c'est unpeu normal... :)

C'est pas très logique de mettre une clause WHERE dans un INSERT... En gros, pour traduire en francais ta requete, ca serait:

Inserez un nouvel enregistrement dans match si le champs nom_match est égal à la variable $match en donnant pour valeur à score1 et score2 les variables $Score_equipe1 et $Score_equipe2.

Tu veux comparer quoi avec le WHERE ??? Il n'y a rien dans le champs nom_match puisque tu es en train de créer l'enregistrement !

C'est quoi la finalité de ta requete, tu veux faire quoi en fait ?

Kalamit,
Parle à ma culasse, mon carter est malade. :)
0
stfm Messages postés 60 Date d'inscription jeudi 7 mars 2002 Statut Membre Dernière intervention 8 mars 2004 16
2 oct. 2003 à 10:55
Salut,

Ca n'a pas beaucoup de sens de faire un where dans un insert,
soit tu utilises un update,
UPDATE `match` SET score1='$score_equipe1', score2='$score_equipe2' WHERE nom_match='$MATCH'
soit un insert,
INSERT INTO `match` (nom_match, score1, score2) VALUES ('$MATCH', '$Score_equipe1', '$Score_equipe2')

A toi de voir ce que tu attends de cette requete

STF
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nikalkal Messages postés 232 Date d'inscription mercredi 3 septembre 2003 Statut Membre Dernière intervention 14 avril 2006 8
2 oct. 2003 à 11:12
REdésolé: j'fais n'importe quoi: mes variables $score_equipe1 et $score_equipe2 sont mal afféctées!

Je vous remercie pour vos conseils stfm et kalamit!!
Maintenant je devrais pouvoir me debrouiller!
@+


La plus belle parole est encore le silence!
0
stfm Messages postés 60 Date d'inscription jeudi 7 mars 2002 Statut Membre Dernière intervention 8 mars 2004 16
2 oct. 2003 à 11:15
De rien

Et enleve les quotes autour des scores si se sont des entiers...

STF
0