PDO et procédure stockée SQL Server

PDO et procédure stockée SQL Server - PHP - Programmation

Marsh Posté le 07-11-2014 à 11:30:10    

Bonjour,
Depuis plusieurs jours je suis bloquée .
 
Voici mon php :
 
// Connexion à la base de données

Code :
  1. $DB = new DB;
  2. $req = "ut_DocSupprim $iIdDoc"; // Procédure stockée avec passage d'une variable
  3. $DB->query($req); // Execution procédure


 
L'execution se passe bien, je rentre bien dans la procédure, la variable est bien récupérer.
Cependant je voudrait récupérer le retour que me renvois cette procédure stockée via php pour pouvoir l'afficher.
Comment faire ? Existe t-il une fonction spécifique ?
Help me  
 
Je précise que ce n'est pas moi qui ai écrit le code ^^
 
EDIT: ma procédure SQL
 
 

Code :
  1. USE [maBASE]
  2. GO
  3. SET ANSI_NULLS ON
  4. GO
  5. SET QUOTED_IDENTIFIER ON
  6. GO
  7. ALTER Procedure [dbo].[ut_DocSupprim]
  8. (
  9. @IdDoc int = null
  10. )
  11. As
  12. /* set nocount on */
  13. declare @nb int,
  14.   @IdVer int,
  15.   @Titre varchar(100),
  16.   @Rev smallint,
  17.   @Sql varchar (255)
  18. SELECT     @nb= count(*)
  19. FROM       Documents
  20. WHERE     (IdDoc = @IdDoc)
  21. if @nb=0
  22.  begin
  23.  return 'Document inexistant'
  24.  end
  25. SELECT     @Titre=DocTitre
  26. FROM       Documents
  27. WHERE     (IdDoc = @IdDoc)
  28. SELECT     @nb= count(*)
  29. FROM       Menu
  30. WHERE     (IdDoc = @IdDoc)
  31. if @nb>0
  32.  begin
  33.  return 'Suppression impossible, le document '''+@Titre+''' est lié à un menu'
  34.  end
  35. --suppression de la dernière version du document
  36. SELECT   top 1   @IdVer=IdVer
  37. FROM       DocVersions
  38. WHERE     (IdDoc = @IdDoc)
  39. ORDER BY DocRev DESC
  40. set @Sql = 'DELETE FROM Form_Cases WHERE IdVer = ' + convert(varchar(10),@Idver)
  41. --execute (@Sql)
  42. set @Sql = 'DELETE FROM DocVersions WHERE IdVer = ' + convert(varchar(10),@Idver)
  43. --execute (@Sql)
  44. SELECT   @nb= count(*)
  45. FROM     DocVersions
  46. WHERE    (IdDoc = @IdDoc)
  47. if @nb=0
  48. -- suppression du document s'il ne reste plus aucune version
  49.  begin
  50.  --si le doc est réservé à des groupes, il faut supprimer les réservations
  51.  SELECT   @nb= count(*)
  52.  FROM     BS_GROUPE_DOCUMENT
  53.  WHERE    (IdDoc = @IdDoc)
  54.  if @nb>0
  55.   begin
  56.   set @Sql = 'DELETE FROM BS_GROUPE_DOCUMENT WHERE IdDoc = ' + convert(varchar(10),@IdDoc)
  57.   --execute (@Sql)
  58.   end
  59.  --suppression du document
  60.  set @Sql = 'DELETE FROM Documents WHERE IdDoc = ' + convert(varchar(10),@IdDoc)
  61.  --execute (@Sql)
  62.  return  'Document '''+@Titre+''' supprimé.'
  63.  end
  64. else
  65. -- s'il reste encore une version, mise à jour de la table document
  66.  begin
  67.  SELECT top 1 @Rev=DocRev
  68.  FROM       DocVersions
  69.  WHERE     (IdDoc = @IdDoc)
  70.  ORDER BY DocRev DESC
  71.  UPDATE Documents set DocRev=@Rev, Valid_Date=NULL, Valid_Id=NULL
  72.  FROM Documents
  73.  WHERE(IdDoc = @IdDoc)
  74.  end
  75. return 'Dernière version du document '''+@Titre+''' supprimée.'

Reply

Marsh Posté le 07-11-2014 à 11:30:10   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed