IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Procédure stockée [SQL-Server]


Sujet :

PHP & Base de données

  1. #1
    Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut Procédure stockée
    Bonjour a tous,
    je suis nouveau et j'ai besoin d'un petit coup de pouce !
    Je suis étudiant en bts IG 2eme année je bloque sur une PTI (pratique des techniques informatique) et développe un forum en php avec base de données sous SQL Server.
    Pour les requêtes SQL j'utilise MsSql, et j'ai un soucis avec les procédures stockées, j'en ai fait une pour afficher les membres.
    Sous Sql server elle fonctionne et sous php j'arrive à récupérer une seule ligne je ne sais pas comment accéder aux autres lignes. voila ce que j'ai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    //Appel et utilisation de la procédure stockée "info_profil".
    $query = mssql_init ("info_membres",$link);
     
    //Parametre de la variable de sortie
    mssql_bind ($query,"@nom",$nom,SQLVARCHAR, TRUE, FALSE, 50);
    mssql_bind ($query,"@prenom",$prenom,SQLVARCHAR, TRUE, FALSE, 50);
    mssql_bind ($query,"@pseudo",$pseudo,SQLVARCHAR, TRUE, FALSE, 50);
    mssql_bind ($query,"@status",$status,SQLVARCHAR, TRUE, FALSE, 50);
     
    //execution de la requete
    $result = mssql_execute ($query);
    voila merci d'avance pour votre aide, je bloque depuis un petit moment.

  2. #2
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    D'après la documentation il faut utiliser la fonction mssql_next_result pour accéder aux résultats suivants.

  3. #3
    Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    ça ne marche pas j'obtiens les erreurs suivantes :

    Warning: mssql_fetch_row(): supplied argument is not a valid MS SQL-result resource in c:\program files\easyphp1-8\www\forum\membres.php on line 26

    Warning: mssql_next_result(): supplied argument is not a valid MS SQL-result resource in c:\program files\easyphp1-8\www\forum\membres.php on line 31

    Warning: mssql_free_result(): supplied argument is not a valid MS SQL-result resource in c:\program files\easyphp1-8\www\forum\membres.php on line 32

  4. #4
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    Sans le code je ne peux pas en dire plus. Dans la documentation de mssql_execute() il y a cet exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $result=mssql_execute($sql_statement);
    while ($row = mssql_fetch_assoc($result))
        print_r($row);
    Ajout de messages d'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    //Appel et utilisation de la procédure stockée "info_profil".
    $query = mssql_init ("info_membres",$link);
     
    //Parametre de la variable de sortie
    mssql_bind ($query,"@nom",$nom,SQLVARCHAR, TRUE, FALSE, 50);
    mssql_bind ($query,"@prenom",$prenom,SQLVARCHAR, TRUE, FALSE, 50);
    mssql_bind ($query,"@pseudo",$pseudo,SQLVARCHAR, TRUE, FALSE, 50);
    mssql_bind ($query,"@status",$status,SQLVARCHAR, TRUE, FALSE, 50);
     
    //execution de la requete
    $result = mssql_execute ($query) or die("Erreur MSSQL : " . mssql_get_last_message());
    Peut etre y a-t-il un probleme dans la procédure stockée.

  5. #5
    Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    c'est bon j'ai trouvé, mon erreur ce trouvé dans ma procedure stockée, il ne fallait pas mettre de parametre de sortie pour avoir tout les resultats je le saurai pour la prochaine fois ^^ merci pour l'aider

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. passage d'un nom de table dans une procédure stockée
    Par thierry V dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 26/07/2010, 16h48
  2. Procédure stocké:Insert et renvoie de la clé primair
    Par caramel dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 17/04/2003, 09h34
  3. [Pervasive SQL ] procédure stockée
    Par magellan dans le forum Autres SGBD
    Réponses: 2
    Dernier message: 25/10/2002, 13h17
  4. Explication procédure stockée
    Par underworld dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 09/09/2002, 10h51
  5. [Comparatif] Procédures stockées, triggers, etc.
    Par MCZz dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 28/08/2002, 12h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo