Bonjour,
Je souhaite récupérer un identifiant avec après une insertion, PDO que j'utilise implémente une méthode $connexion->lastInsertId()...
Dans mon cas cela ne marche pas...
Voici mon code :
Colorez votre code PHP sur les forums grâce à Developpez.com<?php
                  // Préparation de la requête
                  $statement = $this->oPdoConnexion->prepare($sqlInsertFolder);
                  
                  $statement->bindParam(':nom_doss', $sFolderName, PDO::PARAM_STR);
                  $statement->bindParam(':date_create_doss', $sDateNow, PDO::PARAM_STR);
                  $statement->bindParam(':id_user', $iUserId, PDO::PARAM_INT);
                  self::printDebugTrace("--> " ."\$sDateNow = $sDateNow");
                  self::printDebugTrace("--> " .$sqlInsertFolder);                  
                  
                  $statement->execute();
                  
                  $iLastInsertId = $this->oPdoConnexion->lastInsertId();
                  
                  $iRowCount = (integer) $statement->rowCount();
                  
                  if (! $iRowCount == 1)
                  {
                        throw new Exception(
                              __CLASS__ . '::' . __METHOD__ .
                              ' --> Aucun enregistrement affecté lors de l\'ajout du dossier'
                        );
                  }
                  
                  return $iLastInsertId;
?>
A noter que tout se passe bien, l'enregistrement est bien ajouté mais impossible de choper d'avoir le lastInsertId ...
J'ai vu dans la doc pdo que cette methode pouvait prendre un argument de type string ... mais je vois pas trop à quoi ça pourrait m'avancer
La doc ici: http://fr2.php.net/pdo
Par avance merci de votre aide
@++
Partager