Se connecter / S'enregistrer
Votre question

Insert ou update

Tags :
  • Script
  • Programmation
Dernière réponse : dans Programmation
22 Juin 2011 15:39:37

Bonjour ,
j'essaye de faire un script en php pour pouvoir faire un insert "si le fichier n'existe pas dans la base de données) ou update s'il existe déja!

j'ai commencé par ça:

$req1 = $bdd->prepare('SELECT Id FROM fichier WHERE nom_x = :nom_y');
$req1 ->execute(array('nom_y' => $_GET['nom_y']));

et apres j'ai essayé d'utiliser (if ...else) pour insert ou update je n'arrivais pas!

si vous avez une idée

(SGBD:Mysql, php)

je vs remercie

Autres pages sur : insert update

a c 145 L Programmation
22 Juin 2011 17:42:36

Je ne sais pas quel type d'objet est $bdd, donc comment tu peux accèder au résultat de requête, mais voici ce que je ferai:
  1. $req1 = $bdd->prepare('SELECT COUNT(*) AS exist FROM fichier WHERE nom_x = :nom_y');
  2. $req1 ->execute(array('nom_y' => $_GET['nom_y']));
  3. // ici il faut récupére la valeur de $exist
  4. if ($exist > 0) {
  5. // update
  6. } else {
  7. // insert
  8. }

Une autre possibilité serait de ne pas avoir de champ ID et de mettre une contrainte d'index sur nom_x (clé unique) et d'utiliser une requête de type REPLACE
Mais ce n'est peut-être pas applicable.
m
0
l
22 Juin 2011 18:07:54

excuse moi je n'avais pas donné assez de détail et je te remercie pour cette réponse

$bdd = new PDO('mysql:host=localhost;dbname=...', 'root', '');

je vais tester ta réponse pour voir ce que ça va donner

merci encore
m
0
l
23 Juin 2011 13:59:38

et finalement j'ai utilisé les fonctions mysql simple! et le sujet est bien résolu

et merci;)
m
0
l
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS