begin process at 2010 02 10 17:42:46
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Général

 > 

afficher des données d'une BD dans un histogramme !


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

afficher des données d'une BD dans un histogramme !

dimanche 23 mars 2008 à 00:06:51 | afficher des données d'une BD dans un histogramme !

bezzaz

Bonjour,

au niveau du code de cette page
http://www.phpcs.com/codes/HISTOGRAMME-HORIZONTAL_27803.aspx

si je veux affecté à $values des données à partir de ma BD comment faire !

par ce que quand je change dans le code ya d'autre erreurs qui se génére !

dimanche 23 mars 2008 à 03:32:43 | Re : afficher des données d'une BD dans un histogramme !

bcmfr

Membre Club
slt
quoi comme erreurs? quel est ton code
@+
dimanche 23 mars 2008 à 13:07:44 | Re : afficher des données d'une BD dans un histogramme !

bezzaz

Bonjour

le code est comme suite:

<?php

$connect=mysql_connect("localhost", "root", "") or die ("Echec de la connexion au serveur !");
    $select=mysql_select_db("OCP");

// $values : Les valeurs a soumettre
// $order : L'ordre de classement:  0:Pas de classement; 1:Ordre croisant; 2:Ordre décroissant
// $showValue : Montrer la valeur (True/false))
// $maxLength : Longeur Maximale des Bars de statistiques
// $barHeight : Epesseur / Hauteur des bars de statistiques
// $spacing : espace entre les valeurs
// $gap : Espace entre le Nom et les bars de statistiques
// $tableWidth : Taille de la table (<table></table>)
// $colors : Couleurs ( a envoyer dans un array ex: $colors=array('blue','purple','gold');)
// $repeat : Répétition des couleurs si il n'y en a pas assez (true / false) ATTENTION : Si cette fonction est activé (true) vous risquez de perdre de la vitesse
// $Couleur_de_remplissage : L'image qui sera répètée jusqu'a la fin si il n'y a pas assez de couleur. En fonction des images données (ne pas mettre les extentions et les extentions doivent etre png)


$sql="select production, libelle from produit;";
$query=mysql_query($sql) or die("Erreur requête :<br>".$sql);

// alimentation dynamique du tableau $values
for ($j=0;$assoc=mysql_fetch_assoc($query);$j++) {
   $values[$j][0]=$assoc['production'];
   $values[$j][1]=$assoc['libelle'];
}
//$values=array('Windows XP' => 58, 'Windows 98' => 20, 'Windows 3.11' => 30, 'Windows 95' => 18, 'Linux' => 51,'Knoppix' => 12,'Inconnu' => 11);
$colors=array('blue','purple','gold', 'gray');
histogram($values,2,true,200,12,10,6,'100%',$colors,false,'green');

//This is the function that echoes (not returns!) the table in HTML
function histogram($values,$order, $showValue, $maxLength, $barHeight, $spacing, $gap, $tableWidth, $colors, $repeat, $Couleur_de_remplissage){

    $a=$values;
    rsort($a);
$maxValue=$a[0];// On obtiens la valeur maximum qui correspond à $maxLength

// On classe les résultats
    if($order !== 0){// 0 pas de classement
        if($order === 1){
            asort($values);// 1 Classement par ordre croissant
         }else{
            arsort($values);// 2 ou + Classement par ordre décroissant

         }
    }

// On séparre les Clés et leurs valeurs
$captions=array_keys($values);
    $values=array_values($values);

// Transform values into ratio compared to $maxValue

$ratio=$values;
for($i=0;$i<count($ratio);$i++){
$ratio[$i]/=$maxValue;
}

    // Nombre de Valeur
$nb_value=count($values);

if(empty($colors)){// Couleur par défaut si rien n'est indiqué
$colors=array('gold','gray','purple','blue','green');
}


    $nb_color = count($colors);// Nombre de couleur
    if($repeat){
        // On répète les couleurs
        while(count($colors)<$nb_value) {
            $colors = array_merge($colors,$colors);
        }
    }else{
        // On ne répète pas les couleurs
        if($nb_color<$nb_value){
            // Si il n'y a pas assez de couleur on ajout la couleur $Couleur_de_remplissage jusqu'a ce qu'il y en ai assez
            $colors = array_pad($colors, $nb_value, $Couleur_de_remplissage);
   }
}


echo '<table width="',$tableWidth,'" cellpadding="0" cellspacing="0" border="0">',"\r\n";

for($i=0;$i<$nb_value;$i++){
echo '<tr style="height: ',($barHeight+$spacing),'px;" valign="middle">',"\r\n"
,'<td style="width:',($tableWidth/5-$gap),'px;" align="right">',$captions[$i],'</td>',"\r\n"
,'<td style="width:',$gap,'px; text-align: right;"><img src="./Images/bar.png" style="height:100%; width:1px;" alt="Barre de séparation" /></td>',"\r\n"
,'<td style="width:',(4*$tableWidth/5),'px;">',"\r\n"
,'<img src="./Images/',$colors[$i],'.png" style="height:',$barHeight,'px; width:',($maxLength*$ratio[$i])-1,'px;" alt="',$captions[$i],'" title="Il y a ',$values[$i],' dans ',$captions[$i],'" /> ';
        if($showValue){
            echo '(<span class="Italic">'.$values[$i].'</span>)',"\r\n";
        }
        echo '</td></tr>',"\r\n";
    }

echo '</table>',"\r\n";

    // On supprime toutes les variables utilisées
    unset($a,$values,$maxValue,$order,$captions,$ratio,$i,$nb_value,$colors,$repeat,$Couleur_de_remplissage,$tableWidth,$barHeight,$spacing,$gap,$barHeight,$maxLength,$showValue);
}
?>

l'erreur :
Fatal error: Unsupported operand types in g:\program files\easyphp1-8\www\les camemberts\modifié.php on line 74






Cette discussion est classée dans : bd, code, données, afficher, histogramme


Répondre à ce message

Sujets en rapport avec ce message

comment afficher sous forme de tableau [ par Xime ] bonjourvoila j'aimerais savoir comment afficher mes données que je recupere de ma base de données sous forme de tableau (la taille sera en fonction du connexion aun base de données [ par jessicalba ] bonjour jai posé cette question tout a lheure dans le thème base de données mais je nai pas eu de retour je rencontre un problème au niveau dune base Afficher les données dans un tableau ? [ par inceV ] Contenant 2 lignes et 1 seule cellule :c'est à dire :- 1ère ligne où je veux afficher le titre de l'article par exemple,-2ème ligne où je veux affiche Insérer des données dans une BD sur la fermeture d'une page [ par cfabre22 ] Bonjour, je souhaiterais savoir, s'il est possible d'insérer des données dans une base de données sur la fermeture d'une page php (sans redirection de URGENT! [ par tatofr ] Salut a tous!!Voici mon problemeJ'ai dans ma base de données un champs texte, et dans certains enregistrements il y a des caracteres " ' \\ (guillemet Enregistrement De Données Dans Une Base De Donné. [ par BenXbox ] Slt à tous,voila c la premiere fois que sa m'arive je veux enregistrer dans ma base de donner des données et la j'arive pas c bizzare, je fais sa : < Moteur de Recherche [ par MAsterC ] Salut à tous,je suis en train de développé un moteur de recherche, puis il me manque seulement la "recherche par mot clé" c'est à dire que... si je ma Créer bd [ par Seamless ] Voila ma question:En fiate j'utilise donc easyphp pour tester mais mainteantn j'aimerai savoir ou je dois écrire le code pour créer une base de donnée comment insérer des données dans une db et comment les afficher [ par Yoteco ] Voili voilà j'ai deux questions!!!La première et:Est ce que mon code est juste?$host = "localhost";$user = "root";$password = "";$database = "test";$c iframe et base de données [ par bolbo ] Bonjour, Je cherche actuellement à utiliser des iframes pour afficher un texte récupéré grace à une requete MySQL.Pour le moment, j'arrive à récupérer


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,576 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales