Se connecter avec
S'enregistrer | Connectez-vous

Insert ou update

Dernière réponse : dans Programmation

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

Lassé par la pub ? Créez un compte
Expert Programmation

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.
Lassé par la pub ? Créez un compte
Tom's guide dans le monde