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 :

Afficher résultat que d'une partie de ma requete


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de korospoukine
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    176
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mars 2006
    Messages : 176
    Par défaut Afficher résultat que d'une partie de ma requete
    Bonjour,

    Voici mon problème :
    Je fais une requete qui va taper dans deux tables et me regroupe les données comme je le souhaite :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    	$req1 = "SELECT ActiveOnBoards.Repartition, COUNT(DISTINCT  ActiveOnBoards.EnclosureName) AS Chassis, COUNT(*) AS Nombre  FROM ActiveOnBoards, Blades WHERE ActiveOnBoards.EnclosureName=Blades.Enclosure GROUP BY ActiveOnBoards.Repartition";
    	$tablo1 = mssql_query($req1) or exit(mssql_error());
    Le résultat donne :
    VLAN2| 5 | 10
    VLAN3| 8 | 25
    VLAN5| 2 | 12

    Comment faire pour n'afficher que ce que je souhaite :
    Si VLAN3 alors j'affiche ceci :
    Nombre d'emplacement Libres :
    VLAN3 : (resultats d'un calcul entre colonne 2 et 3)

    SI VLAN2 ou VLAN5 je ne fais rien.

    Merci d'avance.

  2. #2
    Membre chevronné Avatar de Inazo
    Profil pro
    Gérant - société de développement web
    Inscrit en
    Avril 2007
    Messages
    417
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Gérant - société de développement web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2007
    Messages : 417
    Par défaut
    Bonjour,

    Euh... Et si tu m'étais

    WHERE ActiveOnBoards.Repartition="VLAN3"

    Dans ta requête ? Sinon tu n'as cas faire un test à l'affichage des données mais on ne voie pas tout ton code donc

    Cordialement,

  3. #3
    Membre éprouvé Avatar de korospoukine
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    176
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mars 2006
    Messages : 176
    Par défaut
    Cela aurait été simple, mais mon résultat me sort environ 50 lignes, mais je ne dois en afficher que 16.
    Voici le code ma page d'affichage :
    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    <?php
    session_start();
    ?>
    <HTML>
    <HEAD>
    	<TITLE>Blade Inventory Display Page</TITLE>
    	<style> 
    	TABLE { 
    	float : left; 
    	margin-left : 5px; 
    	} 
    	</style> 
    </HEAD>
     
    <BODY bgcolor="#DDDDDD">
    <?php
    	include("connect.php");
    	$req0 = "SELECT OnBoard1FirmwareVersion , COUNT(*) AS Nombre FROM Enclosures GROUP BY OnBoard1FirmwareVersion";
    	$tablo0 = mssql_query($req0) or exit(mssql_error());
    	$req1 = "SELECT ActiveOnBoards.Repartition, COUNT(DISTINCT  ActiveOnBoards.EnclosureName) AS Chassis, COUNT(*) AS Nombre  FROM ActiveOnBoards, Blades WHERE ActiveOnBoards.EnclosureName=Blades.Enclosure GROUP BY ActiveOnBoards.Repartition";
    	$tablo1 = mssql_query($req1) or exit(mssql_error());
     
    ?>	
    		<h1>Châssis OA</h1>
    		<table border="0" width="33%">
    			<tr>
    			<td width="5%" class="menu"></td><td width="20%" class="menu">VersionOA</td><td width="8%" class="menu">Nombre</td>
    			</tr>			
    			<?php
    				while ($recherche0 = mssql_fetch_array($tablo0))
    					{			
    					?>
    					<tr>
    					<td><label></label></td>
    					<td><label><?php echo $recherche0['OnBoard1FirmwareVersion'];?></label></td>
    					<td><label><?php echo $recherche0['Nombre'];?></label></td>
    					</tr>
    					<?
    					}
    			?>
    		</table>
    		<br clear="left">
     
    		<h1>Emplacements de libre par environnement</h1>
    		<table border="0" width="33%">
    			<tr>
    			<td width="5%" class="menu"></td><td width="20%" class="menu">Types de chassis (VLAN)</td><td width="13%" class="menu">Nombres libres</td>
    			</tr>
    Voici le résultat de ma requête :


    VOici ce que je souhaite :
    Types de châssis (VLAN) | Nombres de libre
    VLAN N2 HP SAN (repartition=120)| calcul en fonction des colonnes 2 et 3
    VLAN N3 HP SAN (repartition=220)| calcul en fonction des colonnes 2 et 3

    Par contre je souhaite ne pas faire d'explusion dans ma requete car je risque de devoir me servir de ce résultats à un autre endroit.

  4. #4
    Membre éprouvé Avatar de korospoukine
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    176
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mars 2006
    Messages : 176
    Par défaut
    J'ai trouvé une solution :
    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
    <h1>Emplacements de libre par environnement</h1>
    		<table border="0" width="33%">
    			<tr>
    			<td width="5%" class="menu"></td><td width="20%" class="menu">Types de chassis (VLAN)</td><td width="13%" class="menu">Nombres libres</td>
    			</tr>			
    			<?php
    				while ($recherche1 = mssql_fetch_array($tablo1))
    					{	
    					$i=$recherche1['Chassis'];
    					$j=$recherche1['Nombre'];
    					$k=16*$i-$j;
    					echo $k;
    					if ($recherche1['Repartition']=="120")
    						{
    						?>
    						<tr>
    						<td><label></label></td>
    						<td><label>VLAN N2 HP avec SAN</label></td>
    						<td><label><?php echo $k;?></label></td>
    						</tr>
    						<?
    						}
    					}
    			?>
    		</table>

  5. #5
    Membre éclairé
    Homme Profil pro
    Première S
    Inscrit en
    Juillet 2010
    Messages
    266
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France

    Informations professionnelles :
    Activité : Première S

    Informations forums :
    Inscription : Juillet 2010
    Messages : 266
    Par défaut
    j'ai un peu de mal a saisir ce que tu veux exactement, en fait, tu veux simplement limité le nb de lignes à l'affichage (et pas dans la requête) ?
    dans ce cas, tu incrément une variable à chaque tour de boucle, et quand tu en as afficher assez, tu sors de la boucle ...
    j'ai bien compris ce que tu souhaites ?

    EDIT

    zut, trop tard ... tu voulais juste affiché les résultat où la valeur de "repartition" était égale à 120 en fait ...

  6. #6
    Membre éprouvé Avatar de korospoukine
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    176
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mars 2006
    Messages : 176
    Par défaut
    Désolé de ne pas avoir été clair.
    Je ne souhaite afficher que certaines lignes qui se trouvent n'importe ou dans le resultat de ma requete.

    Ma solution fait pas très propre, mais bon déjà cela va fonctionner.

Discussions similaires

  1. Réponses: 13
    Dernier message: 27/04/2011, 16h59
  2. Réponses: 1
    Dernier message: 30/10/2009, 08h48
  3. Réponses: 3
    Dernier message: 22/02/2009, 21h27
  4. Afficher ce que renvoie une commande windows
    Par PorkyFighter dans le forum Réseau
    Réponses: 7
    Dernier message: 28/10/2006, 20h57
  5. JScrollPane : scroll que sur une partie du tableau
    Par mickael.guilbert dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 21/08/2006, 08h53

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