Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & Oracle
PHP & Oracle Forum d'entraide sur Oracle avec PHP. Avant de poster -> FAQ Oracle et Cours Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/06/2011, 15h55   #1
Invité régulier
 
Karim
Inscription : juin 2010
Messages : 20
Détails du profil
Informations personnelles :
Nom : Karim
Localisation : France

Informations forums :
Inscription : juin 2010
Messages : 20
Points : 8
Points : 8
Par défaut probleme d'affichage des resultats de la requete select

Bonjour,

J'ai un problème d'affaichage des resultats de la requette select

Je travaille avec zend server et j’implémente la classe PDO pour se connecter à la base de données Oracle Voilà mon script :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
 
    include_once("Connexion.php");
 
   try {
      $connect=Connexion::getInstance();
 
       $sql = 'SELECT COUNT(*) AS nb FROM dept';
       $result = $connect->query($sql);
       $columns = $result->fetch();
       $nb = $columns['nb'];
 
       echo 'Il y a '.$nb.' enregistrement(s).';
 
      } catch(PDOException $e) {
          echo 'Erreur PDO : '.$e->getMessage();
      }
 
 
?>

lorsque j’exécute le script, la connexion s’établit correctement, mais lors de l'affichage des résultats , j'ai cela sans l'affichage du nombre d'enregistrement:

il y a enregistrement(s).


le log du serveur zend il y a la notification suivante :

PHP Notice: Undefined index: nb in C:\Program Files\Zend\Apache2\htdocs\test.php on line 11

Merci de votre aide.
gigabit32 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2011, 16h47   #2
Membre confirmé
 
Avatar de Retrokiller069
 
Homme Bertrand
Étudiant
Inscription : octobre 2010
Messages : 216
Détails du profil
Informations personnelles :
Nom : Homme Bertrand
Localisation : France

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : octobre 2010
Messages : 216
Points : 268
Points : 268
Bonjour,

pourrais tu faire un print_r de columns s'il te plait pour voir s'il contient quelque chose...
__________________
Ce n'est pas ce que nous voulons faire qui est impossible mais ce sont les moyens à sa mise en oeuvre qui peuvent le paraître

Ps: N'oubliez pas SVP
Retrokiller069 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2011, 17h12   #3
Membre chevronné
 
Homme
Développeur Web
Inscription : mars 2011
Messages : 399
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur Web
Secteur : Finance

Informations forums :
Inscription : mars 2011
Messages : 399
Points : 662
Points : 662
Par défaut, fetch(), retourne avec
Citation:
PDO::FETCH_BOTH (défaut): retourne un tableau indexé par les noms de colonnes et aussi par les numéros de colonnes, commençant à l'index 0, comme retournés dans le jeu de résultats
Donc, $columns[0] devrait fonctionner... Si et seulement si, la requête a fonctionné.

+1 pour le print_r et sinon, vérifier que $columns != false serait bien aussi
__________________
Membre de StackOverflow, je suis un fervant utilisateur de PHP et de jQuery.
Après des études de graphisme, j'ai décidé de mélanger développement web et web design. J'ai ainsi donc créé mon site web mais aussi plusieurs projets personnels.
Dans les plus aboutis, vous pourrez trouver dans mon labo et dans mon devblog, un raccourcisseur d'url, un bookmarklet pour envoyer l'url de la page actuelle vers votre email pour lire plus tard ou sauvegarder, mon générateur de template HTML5, etc...
Shikiryu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2011, 17h22   #4
Invité régulier
 
Karim
Inscription : juin 2010
Messages : 20
Détails du profil
Informations personnelles :
Nom : Karim
Localisation : France

Informations forums :
Inscription : juin 2010
Messages : 20
Points : 8
Points : 8
Merci pour vos réponses

Le resultat est:

Array ( [NB] => 10 [0] => 10 ) Il y a 1 enregistrement(s).


donc il y a un problème de casse il falait mettre au lieu de l'instruction:

$nb = $columns['nb'];

l'instruction

$nb = $columns['NB'];

Merci encore
gigabit32 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h41.


 
 
 
 
Partenaires

Hébergement Web