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 :

[Conception] requete qui ne s'effectue pas correctement


Sujet :

PHP & Base de données

  1. #1
    Membre du Club
    Inscrit en
    Septembre 2006
    Messages
    132
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 132
    Points : 47
    Points
    47
    Par défaut [Conception] requete qui ne s'effectue pas correctement
    bonjour,
    excusez moi de deranger encore, mais j'ai une requete qui est censee recuperer pour chaque type , la liste des processus qui lui sont rattachés

    et donc je construis un tableau a deux dimensions

    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
     
    $queryP= "SELECT T.NUM_TYPE AS NUM_TYPE, PT.id_process AS id
    	   FROM type_document T, processus_type PT
    	   WHERE T.NUM_TYPE=PT.NUM_TYPE ";
     
    $resultP = db_send_query("Erreur lors de la récupération des correspondances types de documents / processus", $queryP);
    $num_type=-1;
    while ($row = db_fetch_array($resultP)) {
    	if ($row['NUM_TYPE'] != $num_type) {
    		$num_type = $row['NUM_TYPE'];
    		$process[$num_type] = array();	
    	}
    	array_push($process[$num_type], $row['id']);
     
    }
    le probleme , c'est que au resultat , le tableau ne revoie que pour chaque type que un processus, et pas tous les processus , est ce que c'est mon array push qui est mal placé?

    merci d'avance de m'eclaircir

  2. #2
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    Ton $num_type est déclaré en interne dans ton if donc quand tu ne rentres pas dans la condition je pense qu'il y a un problème pour faire le array_push...
    Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

    Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)

  3. #3
    Membre du Club
    Inscrit en
    Septembre 2006
    Messages
    132
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 132
    Points : 47
    Points
    47
    Par défaut
    oui en fait j'ai initialise numtype en dehors de la boucle while a -1 mais ca marche pas, pourtant un momnet ca a marche mais le probleme c 'est que je me quis tellement cassee la tete et fait des modifs que je ne sais plus a quel moment ca a marché

  4. #4
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Essaie comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    	if (!isset($process[$row['NUM_TYPE']])) {
    		$process[$row['NUM_TYPE']] = array();	
    	}
    	array_push($process[$row['NUM_TYPE']], $row['id']);
    Sinon tu peux remplacer la syntaxe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    array_push($process[$row['NUM_TYPE']], $row['id']);
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $process[$row['NUM_TYPE']][] = $row['id'];

  5. #5
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    Citation Envoyé par eclipse012
    oui en fait j'ai initialise numtype en dehors de la boucle while a -1 mais ca marche pas, pourtant un momnet ca a marche mais le probleme c 'est que je me quis tellement cassee la tete et fait des modifs que je ne sais plus a quel moment ca a marché
    Ah oui désolé j'avais pas vu l'initialisation avant la boucle
    Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

    Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)

  6. #6
    Membre du Club
    Inscrit en
    Septembre 2006
    Messages
    132
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 132
    Points : 47
    Points
    47
    Par défaut
    oh mon dieu!!! j'ai essayé avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    if (!isset($process[$row['NUM_TYPE']])) {
    		$process[$row['NUM_TYPE']] = array();	
    	}
    	array_push($process[$row['NUM_TYPE']], $row['id']);
    et ca marche!!! woww
    mais apr contre je ne comprends pas trop pourquoi, je vais essayer de voir et revoir en detail

    merci a tous pour votrea aide!

  7. #7
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Je penses que tu peux meme supprimer le if et ne laisser que le array_push et ca devrait marcher

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

Discussions similaires

  1. Réinitialisation d'objets qui ne s'effectue pas
    Par djalouk dans le forum Langage
    Réponses: 1
    Dernier message: 26/01/2007, 09h49
  2. Réponses: 1
    Dernier message: 21/11/2006, 16h53
  3. [VB.NET] autopostback qui ne s'effectue pas
    Par pcdj dans le forum ASP.NET
    Réponses: 5
    Dernier message: 21/06/2006, 13h50
  4. Requete qui ne s'occupe pas de la casse
    Par tripper.dim dans le forum SQL
    Réponses: 2
    Dernier message: 09/12/2004, 19h17
  5. [C#] Redirection qui ne s'effectue pas
    Par Ditch dans le forum ASP.NET
    Réponses: 5
    Dernier message: 18/10/2004, 20h35

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