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 :

Limite d'un fetch array


Sujet :

PHP & Base de données

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 6
    Par défaut Limite d'un fetch array
    Bonjour tout le monde,

    Je suis entrain d'écrire une procédure de sauvegarde de ma base de donnée via ma page php !! Pour cela, je décris table par table, en réecrant en gros le fichier *.sql qu'on a via mysqlmyadmin.

    Au début, tout se passe comme il faut mais voilà, à un moment , tout bloque !! . Je décide donc de tester table par table et je me rends compte que le fetch_array bloque sur une table particulière.

    Cette dernière comprend plus de 4000 enregistrements, alors je voulais savoir si la boucle while ($row = mysql_fetch_array ($result) ) { traitement} avait une limite d'enregistrement où il perdrait les pédales ???!!!!!

    Mes autres tables tournent aux alentours de 500 enregistrements, et pour l'instant ça passe.

    Est ce quelqu'un pourrait m'éclairer sur ce point ?

    ps: je n'ai pas trouvé d'indication sur cela sur le site de php

  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
    Qu'est ce que tu entends pas "bloque" ?

    4000 enregistrements ce n'est pourtant pas énorme (sous reserve du contenu des colonnes evidemment).
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 814
    Billets dans le blog
    14
    Par défaut
    Un mysql_num_rows($result) donne combien de lignes dans $result ?
    S'il donne les 4000, comme le while affecte une valeur à $row à chaque itération de la boucle, je ne vois pas pourquoi il y aurait un problème.

    L'application sur laquelle je travaille fait des boucles entre autres sur toutes les villes de France métropolitaine, soit plus de 36500 lignes.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  4. #4
    Membre Expert

    Homme Profil pro
    SDE
    Inscrit en
    Août 2007
    Messages
    2 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : SDE

    Informations forums :
    Inscription : Août 2007
    Messages : 2 013
    Par défaut
    Bonjour,

    Citation Envoyé par CinePhil Voir le message
    S'il donne les 4000, comme le while affecte une valeur à $row à chaque itération de la boucle, je ne vois pas pourquoi il y aurait un problème.

    L'application sur laquelle je travaille fait des boucles entre autres sur toutes les villes de France métropolitaine, soit plus de 36500 lignes.
    +1

    De plus un SGBD (MySQL dans notre cas) est capable de gérer plusieurs millions d'enregistrements, si l'on ne peut pas récupérer ces données c'est grave

    Peut-être un bout de code ?

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 6
    Par défaut
    Bonjour !!

    Merci pour vos réponses, ca me paraissait bizarre à moi aussi qu'il bloque comme ca, je dois avoir un bug dans mon code ou soit ma table a un enregistrement qui pose problème !! Mais déjà, vous me confortez dans mon idée !! Merci

    Je vais bien revérifier tout cela !!

    Je mets ta proposition en joker Kazou, je vais d'abord essayer de débugger toute seule et si vraiment je pédale dans la choucroute, je ferais appel à vous.

    Merci en tout cas !!

Discussions similaires

  1. [MySQL] Fetch array et recuperation de parametres
    Par nicolasferraris dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 17/02/2009, 10h11
  2. fetch array vs count ou autre
    Par wormzoom dans le forum Langage
    Réponses: 10
    Dernier message: 17/07/2008, 22h51
  3. [MySQL] tester si un fetch array est vide
    Par boubourse92 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 04/04/2008, 12h30
  4. [MySQL] mysqli fetch array
    Par Kiwimenthe dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 16/08/2007, 09h17
  5. probleme avec mysql fetch array
    Par philsand77 dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 19/04/2007, 07h56

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