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 non exécutée


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 1
    Par défaut Procédure stockée non exécutée
    Bonjour,
    j'appelle une procédure stockée dans mon code PHP, mais, rien ne se passe:
    pas d'erreur, pas d'insertion..
    La version de MySql : 5

    Code PHP (appel de la procédure):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    if( isset($_POST['INSERT_BIEN']) == 'Ajouter') {
    			$id_ven_loc=$_POST['choix_ven_loc'];
    			$id_typ_bien=$_POST['choix'];
    			$prix=$_POST['prix'];
    			$etat=$_POST['etat'];
    			$surface=$_POST['surface'];
    			$id_ville=$_POST['choixVille'];
    			$com=$_POST['com'];
    			$quartier=$_POST['quartier'];
    			$piece = $_POST['nbPiece'];
     
    			try {
    			echo "try";
    			  $dbh = new PDO("mysql:host=localhost;dbname=nbyimmo", "root", "************");
    			} catch(PDOException $e) {
    			  echo $e->getMessage();
    			  die();
    			}			
    			echo "stmt1";
    			$stmt = $dbh->prepare("CALL pcnb_ajout_bie($etat,$surface,$piece,$prix,$com,$id_ville,$quartier,$id_ven_loc,$id_typ_bien)"); 
    			echo "stmt2";
     
    			// Appel de la procédure stockée 
    			echo "exe1";
    			$stmt->execute(); 
    			echo "exe2";
    			if(false != ($return_value = $stmt->fetch(PDO::FETCH_ASSOC))) 
    			{ 
    				echo "(La procédure a retourné : $return_value[Result])"; 
    			} else {
    				echo "(La procédure a retourné uuuuuu : $return_value)"; 
    			}	
     
    }
    La procédure stockée :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    DELIMITER $$
    --
    -- Procédures
    --
    DROP PROCEDURE IF EXISTS `pcnb_ajout_bien`$$
    CREATE DEFINER=`root`@`localhost` PROCEDURE `pcnb_ajout_bien`(
    in etat varchar(10),
    in surface int,
    in piece int,
    in prix varchar(10),
    in com varchar(1000),
    in id_ville int,
    in quartier varchar(20),
    in id_ven_loc int,
    in val_ven_loc int)
    begin
    declare id_bien int;
    INSERT INTO biens (etat,surface,piece,prix,com,id_ville,quartier,id_ven_loc) values 
    (etat,surface,piece,prix,com,id_ville,quartier,id_ven_loc);
    SELECT LAST_INSERT_ID() into id_bien;
    INSERT INTO rel_bien_typ (id_bien,id_typ_bien) values 
    (id_bien,val_ven_loc);
    end$$
    Je sais plus où chercher...
    J'ai aussi cherché à exécuter ma procédure dans une fenetre mysql...mais rien a faire, j'ai une erreur quand je me connecte :
    ERROR 1045 (28000): AccÞs refusÚ pour l'utilisateur: 'ODBC'@'@localhost' (mot de passe: OUI)
    Si quelqu'un a une idée...

    Merci,

  2. #2
    Expert confirmé
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par défaut
    il te dit que l'utilisateur dont le nom est 'ODBC' sur la machine '@localhost' n'a pas le droit de se connecter

    je pense que tu as quelque part une erreur de paramètre d'accès à la base.

    A+JYT

Discussions similaires

  1. Procédure stockée non terminée
    Par hiul dragonfel dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 05/07/2011, 12h10
  2. Procédure stockée non modifiable
    Par KeKeMaN dans le forum MS SQL Server
    Réponses: 8
    Dernier message: 16/01/2010, 00h53
  3. Procédure stockée non visible dans le schéma
    Par Floduh dans le forum Développement
    Réponses: 2
    Dernier message: 24/11/2009, 14h53
  4. [DEBUTANT]Procédure stocké non bloquante
    Par tripper.dim dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 22/06/2007, 12h45
  5. Réponses: 3
    Dernier message: 09/06/2007, 13h19

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