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 :

PDO et SELECT * [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Novembre 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Services de proximité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 12
    Par défaut PDO et SELECT *
    Bonjour à tous,
    je cherche en vain une solution, voici mon code:

    Code php : 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
    <?php
    $bdd = new PDO('mysql:host=localhost;dbname=parc', 'root', 'pass');// connexion à la BDD
    $sql='SELECT * FROM prc_societe;';
    ?>
    <table>
    <?php
    foreach  ($bdd->query($sql) as $row) {?>
    	<tr>
    		<td><input type="text" size="1" id="IDSoc" name="IDSoc" value="<?php echo $row["IDSoc"]; ?>" /></td>
    		<td><input type="text" size="30" id="NomSoc" name="NomSoc" value="<?php echo $row["NomSoc"]; ?>" /></td>
    		<td><input type="text" size="30" id="AdrSoc" name="AdrSoc" value="<?php echo $row["AdrSoc"]; ?>" /></td>
    		<td><input type="text" size="3" id="CPSoc" name="CPSoc" value="<?php echo $row["CPSoc"]; ?>" /></td>
    		<td><input type="text" size="7" id="VilleSoc" name="VilleSoc" value="<?php echo $row["VilleSoc"]; ?>" /></td>
    		<td><input type="text" size="10" id="TelSoc" name="TelSoc" value="<?php echo $row["TelSoc"]; ?>" /></td>
    		<td><input type="text" size="10" id="FaxSoc" name="FaxSoc" value="<?php echo $row["FaxSoc"]; ?>" /></td>
    		<td><input type="text" size="30" id="MailSoc" name="MailSoc" value="<?php echo $row["MailSoc"]; ?>" /></td>
    		<td><input type="text" size="2" id="PaysSoc" name="PaysSoc" value="<?php echo $row["PaysSoc"]; ?>" /></td>
    	</tr><?php 
    }?>
    </table>

    Lorsque je teste avec $sql='SELECT * FROM prc_societe;';, il m'est impossible d'afficher la page dans Chrome ou IE.
    Lorsque je teste avec $sql='SELECT NomSoc FROM prc_societe;';, ça fonctionne correctement dans Chrome ou IE.

    Merci pour vos réponses..

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    C'est quoi "impossible d'afficher la page" exactement ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    De toute façon, les SELECT * c'est mal
    Utiliser SELECT *, ça veut dire remonter tous les champs de la table pour chaque ligne, y compris ceux dont tu n'as pas besoin.

    Alors évidemment, sur une table à 5 colonnes et 20 lignes, c'est pas dimensionnant. Mais sur une table à 135 colonnes et 200 000 lignes ça commence à faire.
    Et ce n'est pas parce que actuellement tu as besoin de toutes les colonnes que ce sera toujours le cas dans le futur.

    Donc, si ça fonctionne lorsque tu écris le nom des colonnes, fais-le et ce sera d'autant mieux
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  4. #4
    Membre Expert
    Avatar de Dendrite
    Femme Profil pro
    Développeuse informatique
    Inscrit en
    Juin 2008
    Messages
    2 129
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 59
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeuse informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2008
    Messages : 2 129
    Billets dans le blog
    8
    Par défaut
    Tu passes de * à un champ.
    Quel comportement pour n champs précis ?
    PDO, une soupe et au lit !
    Partir de la fin est un bon moyen de retrouver son chemin. Bibi - 2020

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2013
    Messages
    243
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2013
    Messages : 243
    Par défaut
    Quel est le nom de ta table dans ta BDD?
    Il est évidant que si tu fais une boucle avec une requête qui interroge une table inexistante ça va coincer quelque part.
    Et puis les espaces sont à proscrire dans les noms de table. "prc societe"

  6. #6
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Novembre 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Services de proximité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 12
    Par défaut
    Bonjour à tous et merci pour toutes ces pistes,
    je vais tacher de répondre le plus précisément à toutes vos question:
    C'est quoi "impossible d'afficher la page" exactement ?
    C'est ce que m'affiche mon navigateur, comme s'il n'arrivait pas à terminer le foreach (sans fin).
    Quel comportement pour n champs précis ?
    Si je passe plusieurs champs (de deux à tous), j'ai la même erreur
    Quel est le nom de ta table dans ta BDD?
    Il est évidant que si tu fais une boucle avec une requête qui interroge une table inexistante ça va coincer quelque part.
    Et puis les espaces sont à proscrire dans les noms de table. "prc societe"
    Le nom de la table dans la BDD est "prc_societe" (ce n'est pas un espace mais un underscore)

    Merci encore mais pour le moment je n'ai pas encore de solution.
    Je pensait plutot pour un problème de config de mon fichier php.ini car lorsque j'execute toutes les requetes dans MySQL: Aucun problème, un champ, *, deux champ, toutes fonctionnent correctement.

    D'autres idées??

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

Discussions similaires

  1. [PDO] PDO table SELECT
    Par kamina dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 20/03/2013, 20h46
  2. [MySQL] Erreur PDO sur SELECT
    Par heretik25 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 18/11/2011, 12h34
  3. PDO select - execute()
    Par bouuuh dans le forum Langage
    Réponses: 2
    Dernier message: 25/07/2011, 15h35
  4. [MySQL] PDO +SELECT + LIKE
    Par Paniez dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 22/02/2011, 16h17
  5. [PDO] PDO select avant insert
    Par Invité dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 08/05/2010, 01h14

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