Problem mit Graph Script

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Problem mit Graph Script

    Hallo, habe mir ein graphen script gebastelt (abgeändert) aber probleme mit dem anpassen. Und zwar geht es mir darum ich hole mir Daten aus meiner DB und lasse die in die skala eintragen. Momentan nur den wert "gpunkte" wie ihr in der history seht, nun möchte ich allerdings noch mehr reinschreiben lassen sprich das feld heisst "tpunkte", nur kriege ich das einfach nicht eingebaut versuche es schon seit längerem.

    Hier mal der Code in der History die die Daten an das graphen script weitergibt:

    PHP-Code:
    <?php
    $result 
    mysql_query ("SELECT * FROM history WHERE pid=".$getpid." ORDER BY id ASC LIMIT 0,15");
    while (
    $row=mysql_fetch_array($result)) {
    $werte[]="wert".$i."=".$row['gpunkte'];
    $i++;

    }

    ?>
    in der variable $getpid ist die Nummer des jeweiligen spielers gespeichert damit erstelle ich jeden graphen einzeln für alle spieler.
    aufgerufen wird das ganze mit dem folgenden befehl :

    PHP-Code:
    <?php 
    echo '<img src="grid.php?'.implode("&",$werte).'">';
    ?>

    Hier mal das script :

    PHP-Code:
    <?php

    // Werte zum Diagramm hinzufügen
    foreach ($_GET as $name => $wert) {
     if (
    substr($name,0,4) =="wert") {
       
    $graphValues[] = $wert
     } 
    }

    $maxValue=max(array_values($graphValues));
    $minValue=min(array_values($graphValues));
    $graphHeight=250;

    for (
    $i=0;$i<count($graphValues);$i++){
     
    $value=$graphValues[$i]-$minValue+20;
     
    $graphValues[$i] = round($value*($graphHeight/($maxValue-$minValue+20)));
    }

    // PNG-Grafik definieren
    header("Content-type: image/png");
    $imgWidth=400;
    $imgHeight=250;

    // image-Objekt erstellen und Farben definieren 
    $image=imagecreate($imgWidth$imgHeight);
    $colorWhite=imagecolorallocate($image575757);
    $colorGrey=imagecolorallocate($image686868);
    $colorBlue=imagecolorallocate($image22188);


    // Rand für die Grafik erzeugen 
    imageline($image000250$colorGrey);
    imageline($image004000$colorGrey);
    imageline($image3990399249$colorGrey);
    imageline($image0249399249$colorGrey);


    // Raster erzeugen
    for ($i=1$i<18$i++){
    imageline($image$i*250$i*25400$colorGrey);
    imageline($image0$i*25400$i*25$colorGrey);
    }

    // Liniendiagramm erzeugen
    for ($i=0$icount ($graphValues)-1$i++){
    imageline($image$i*25, (250-$graphValues[$i]), 
        (
    $i+1)*25, (250-$graphValues[$i+1]), $colorBlue);
    }

    // Diagramm ausgeben und Grafik 
    // aus dem Speicher entfernen 
    imagepng($image);
    imagedestroy($image);
    ?>
    also wie gesagt ich möchte das er nicht nur den einen datensatz einträgt sondern auch eine extra skale mit dem anderen Werten. (in einer anderen Farbe)

    Wäre super wenn ihr mir weiterhelfen könntet.

    MFG
    Zuletzt geändert von DarksoldierXX; 28.01.2007, 23:29.

  • #2
    wo kommt denn das skript her, wie heißt es, wer ist der autor?

    Kommentar


    • #3
      Original geschrieben von penizillin
      wo kommt denn das skript her, wie heißt es, wer ist der autor?
      Hallo erstmal :-)

      das ist ein TUtorial gewesen. Hier die Seite :


      Klick

      Kommentar


      • #4
        alles klar.. schau dir mal jpgraph an, das ist vermutlich genau, was du brauchst.

        Kommentar


        • #5
          Original geschrieben von penizillin
          alles klar.. schau dir mal jpgraph an, das ist vermutlich genau, was du brauchst.
          ich möchte ja dieses Script verwenden, und es wird doch möglich sein dieses anzupassen oder sehe ich das falsch?

          Kommentar


          • #6
            klar. aber wozu?

            Kommentar


            • #7
              Original geschrieben von penizillin
              klar. aber wozu?

              du meinst also der aufwand wäre zu groß und es wäre wensetlich eifnach das andere zu nehmen da diese sfür 2 werte ausgelegt ist?

              Kommentar


              • #8
                je nach gesetzten zielen - ja.

                Kommentar


                • #9
                  Original geschrieben von penizillin
                  je nach gesetzten zielen - ja.
                  habe da smal versucht nur gefällt es mir äüsserlich gar nicht.


                  Mein Problem besteht immer noch, wie kriege ich denn den zweiten wert mit in die Skala?

                  oder bzw das der zweite wert überhaupt mal mit übertragen wird.


                  also könntest du mir da mal bitte bei helfen?
                  Zuletzt geändert von DarksoldierXX; 29.01.2007, 00:26.

                  Kommentar


                  • #10
                    beschreibe doch mal eben kurz in eigenen worten, wie die daten momentan aus der db in das skript (grid.php?) kommen.

                    Kommentar


                    • #11
                      Original geschrieben von penizillin
                      beschreibe doch mal eben kurz in eigenen worten, wie die daten momentan aus der db in das skript (grid.php?) kommen.

                      also sie werden aus der DB gelesen dann im array gespeichert dann per implode weiter an die grid.php geleitet. dieses wird dann über den link grip.php?wert=XX&wert1=XXX eingetragen.
                      Zuletzt geändert von DarksoldierXX; 29.01.2007, 00:43.

                      Kommentar


                      • #12
                        richtig. wenn du nun noch mehr werte übergeben möchtest, wie soll die url erweitert werden?

                        Kommentar


                        • #13
                          Original geschrieben von penizillin
                          richtig. wenn du nun noch mehr werte übergeben möchtest, wie soll die url erweitert werden?
                          Na dann muss noch die anderen werte gespeichert werden bzw es muss ja anstatt nur wert=xx ein weiterer name festgelegt werden. da kann ich ja nhemen wa sich möchte oder ?
                          in diesem fall tpunkte=

                          ich stelle mir das so vor :

                          grid.php?wert=xx&tpunkte=XX&wert1=xx&tpunkte1=XX

                          oder erst einmal alle daten des "wert=" und dann alle "tpunkte"

                          oder ist das falsch?

                          Kommentar


                          • #14
                            die reihenfolge ist egal.

                            gut, kannst du das umsetzen?

                            dann wäre der nächste schritt, neben $graphValues auch das array $tPunkte anzulegen ("empfangen").

                            Kommentar


                            • #15
                              Original geschrieben von penizillin
                              die reihenfolge ist egal.

                              gut, kannst du das umsetzen?

                              dann wäre der nächste schritt, neben $graphValues auch das array $tPunkte anzulegen ("empfangen").
                              also ab hier krieg ich enorme probleme mit der umsetzung, könntest du mir da einwenig helfen?

                              Kommentar

                              Lädt...
                              X