String bei IMAGETTFText

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

  • String bei IMAGETTFText

    Hallo,

    ich versuche eine Ratingskala in PHP zu schreiben.

    Code:

    function drawRating($rating, $id) {
    $link = mysql_connect('localhost', 'DB', 'password');
    mysql_select_db('DB', $link);
    $result = mysql_query("SELECT * FROM Accounts WHERE Username = '$user'");
    $row = mysql_fetch_row($result);

    $startvalue = $row(4); // For Exampel 105
    $endvalue = $row(5); // For Exampel 82

    $difference = $startvalue - $endvalue; // in exampel 23
    $half = $difference / 2;

    $image = imagecreate(102,40);
    $maroon = ImageColorAllocate($image,123,9,60);
    $white = ImageColorAllocate($image,255,255,255);
    $black = ImageColorAllocate($image,0,0,0);
    $red = ImageColorAllocate($image,255,60,75);
    ImageFilledRectangle($image,0,0,101,19,$maroon);
    ImageFilledRectangle($image,0,10,101,19,$white);
    ImageFilledRectangle($image,1,11,$rating,18,$red);
    ImageRectangle($image,0,10,101,19,$black);
    ImageTTFText ($image, 8, 0, 1, 9, $white, "./arial.ttf","1");
    ImageTTFText ($image, 8, 0, 48, 9, $white, "./arial.ttf",$half);
    ImageTTFText ($image, 8, 0, 90, 9, $white, "./arial.ttf",$difference);
    ImageTTFText ($image, 8, 0, 30, 33, $white, "./arial.ttf","Kg to go");
    imagePNG($image);
    imagedestroy($image);
    }

    Header("Content-type: image/png");
    drawRating($rating,$id);


    --> End of Code

    Problem ist das er nicht so funktioniert wie ich mir das vorstelle.

    Wenn ich die Werte der Variablen $half und $difference von Hand reinschreibe dann gehtb es.

    ImageTTFText ($image, 8, 0, 90, 9, $white, "./arial.ttf","23");

    Ansonsten Fehler:

    <br />
    <b>Fatal error</b>: Function name must be a string in <b>C:\Programme\xampplite\htdocs\wwclient\P01\rating.php</b> on line <b>28</b><br />


    Kann mir hier einer helfen ?

    Danke

  • #2
    die Funktion erwartet als letzter Parameter einen String, also was würdest du ändern?

    Kommentar


    • #3
      ich habe noch nicht so viel erfahrung mit php

      ich habe es schon mit der funktion "strval()" versucht aber das hat nicht wirklich gefunzt

      Kommentar


      • #4
        Wenn ich das richtig sehe, sind $half und $difference numerische Werte, die Du durch eine Berechnung erzeugst .... musst jetzt halt einen String daraus erzeugen ...

        Kommentar


        • #5
          so sehe ich das auch aber ich weiss nicht wie

          Kommentar


          • #6
            http://www.php.net/manual/de/languag...es.typecasting
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              Das sollte es deutlich machen ....

              PHP-Code:
              $test 55;
              $test1 "55";
              $half 55;
              if (
              $test === $half)
                  echo 
              "Korrekt <br>";
              ELSE
                  echo 
              "NICHT KORREKT <br>";
              $half "$half";
              if (
              $test === $half)
                  echo 
              "Korrekt <br>";
              ELSE
                  echo 
              "NICHT KORREKT <br>";
                  
              if (
              $test1 === $half)
                  echo 
              "Korrekt <br>";
              ELSE
                  echo 
              "NICHT KORREKT <br>"

              Kommentar


              • #8
                Es geht nun,

                der fehler war auch das die Klammer desw Arrays für row eckig sein müssen

                Kommentar

                Lädt...
                X