jpgraph und smarty

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

  • #31
    wie gesagt, wenn ich das script direkt aufrufe klappts, doch wenn ich es über den <img src="test_code.php?type=week"> aufrufe nicht

    würde sagen das der parameter "type" nicht mitübergeben wird.
    Leider steht im FAQ bei JP-graph das genau das aber geht
    thx Mukraker

    Kommentar


    • #32
      wie gesagt, wenn ich das script direkt aufrufe klappts, doch wenn ich es über den <img src="test_code.php?type=week"> aufrufe nicht
      nochmal???

      wenn du test_code.php?type=week im browser aufrufst, klappts???

      Kommentar


      • #33
        ja ( da ist der bildgenerierungscode drin)


        ////
        habs mit den beispielseiten hinbekommen das es funzt, doch in meinem hauptscript klappts immer noch nicht!
        Zuletzt geändert von mukraker; 07.05.2004, 15:14.
        thx Mukraker

        Kommentar


        • #34
          das kann nicht sein. soll heißen, du müsstest das mal live präsentieren, oder weiter probieren. Ich kanns jedenfalls nicht glauben.
          EDIT:
          fragt sich, was du geändert hast. aber jetzt weißt du, dass es nicht sein kann, wie du schreibst.

          Kommentar


          • #35
            hier nochmal meine 3 testfiles mit den es nun klappt (entspricht aufbau meiner site):


            PHP-Code:
            filename:test_root.php
            <?php
            switch($_GET['cat']) 
            {
                case 
            'foo':
                include(
            'test_code.php');
                
            $instanz = new test;
                
            $instanz->statistic();
                break;
            }
            ?>
            PHP-Code:
            filename:test_code.php
            <?php
            class test {

                function 
            statistic() 
                {
                    switch(
            $_GET['type']) {
                        case 
            'week':
                        include (
            "_external/jpgraph/jpgraph.php");
                        include (
            "_external/jpgraph/jpgraph_bar.php");
                        
                        
            // We need some data
                        
            $datay=array(+0.13,0.25,+0.21,0.35,0.31,0.04);
                        
            $datax=array("Jan","Feb","Mar","Apr","May","June");
                        
                        
            // Setup the graph. 
                        
            $graph = new Graph(500,200,"auto");    
                        
            $graph->img->SetMargin(60,150,30,50);
                        
            $graph->SetScale("textlin");
                        
            $graph->SetMarginColor("silver");
                        
            $graph->SetShadow();
                        
                        
            // Set up the title for the graph
                        
            $graph->title->Set("Example negative bars");
                        
            $graph->title->SetFont(FF_VERDANA,FS_NORMAL,16);
                        
            $graph->title->SetColor("darkred");
                        
                        
            // Setup font for axis
                        
            $graph->xaxis->SetFont(FF_VERDANA,FS_NORMAL,10);
                        
            $graph->yaxis->SetFont(FF_VERDANA,FS_NORMAL,10);
                        
                        
            // Show 0 label on Y-axis (default is not to show)
                        
            $graph->yscale->ticks->SupressZeroLabel(false);
                        
                        
            // Setup X-axis labels
                        
            $graph->xaxis->SetTickLabels($datax);
                        
            $graph->xaxis->SetLabelAngle(50);
                        
                        
            // Set X-axis at the minimum value of Y-axis (default will be at 0)
                        
            $graph->xaxis->SetPos("min");    // "min" will position the x-axis at the minimum value of the Y-axis
                        
                        // Create the bar pot
                        
            $bplot = new BarPlot($datay);
                        
            $bplot->SetWidth(0.6);
                        
            $bplot->SetLegend("Result week","red");
                        
                        
            // Setup color for gradient fill style 
                        
            $bplot->SetFillGradient("navy","steelblue",GRAD_MIDVER);
                        
                        
            // Set color for the frame of each bar
                        
            $bplot->SetColor("navy");
                        
            $graph->Add($bplot);
                        
            // Finally send the graph to the browser
                        
            $graph->Stroke();
                        break;
                    } 
            //-- end switch
                
            }  //-- end method
            }  //-- end class
            ?>
            PHP-Code:
            filename: test_img.php
            <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
            "http://www.w3.org/TR/html4/loose.dtd">
            <html>
            <head>
            <title>Untitled Document</title>
            <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
            </head>

            <body>
            <table width="545" border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td width="80">dasdasdadad</td>
                <td width="30"><img src="test_root.php?cat=foo&type=week"> </td>
              </tr>
            </table>
            </body>
            </html>
            <?php
            show_source
            (__FILE__);
            ?>

            ich werd meinen code nachmal genaustes durchforsten
            ein einziges 'echo()' sorgt dafür das das bild nicht mehr angezeigt wird !!!
            thx Mukraker

            Kommentar


            • #36
              ein einziges 'echo()' sorgt dafür das das bild nicht mehr angezeigt wird !!!
              denk mal drüber nach!!! Dur darfst natürlich nur das Bild senden und nichts anderes.

              deswegen ist deine Template-idee auch totaler hirnsinn gewesen.

              Kommentar


              • #37
                jo das hab ich nun auch gecheckt das nichts anderes gesendet werden darf, doch wie zum henker soll das gehn ?

                gibts nen befehl der nur einen funktion ausführt und alles andere nicht ? sicher NICHT.


                bevor diese funktion gerufen wird, habe ich allerhand krams vorher im code um das 'framework' zu bauen....


                wie würdet ihr das machen ?
                thx Mukraker

                Kommentar


                • #38
                  denk mal in ruhe drüber nach, was du eigentlich willst, und wie das aufzubauen ist. mit logischem denken ist die thematik eigentlich leicht zu meistern...

                  Kommentar


                  • #39
                    hab doch gerade schon gesagt was das problem ist:
                    <?php


                    require_once('_inc/global.inc.php');

                    //das ding ist nun ordentlich im der user.class
                    /*login auf logput im tpl setzen (evtl noch mal anders machen)
                    if ($U->eid != "0") { //0 => Geuest
                    $tpl->assign('login', "true");
                    $tpl->assign('user_name', $U->name);
                    }*/

                    //dauercheck nach nachrichten



                    $action = $_GET['sek'];
                    if(isset($_POST['login'])) {
                    $action = 'login';
                    }elseif(isset($_POST['msg_text']) ){
                    include('account.class.php');
                    $instanz = new account_class($tpl, $objDB, $U);
                    $instanz->insert_messages($objDB, $U->eid);
                    //auf aktueller seite bleiben
                    $action = $action;
                    }elseif(!isset($_GET['sek']) ){
                    $action = 'home';
                    }
                    switch($action)
                    {


                    case "login":
                    include('login.class.php');
                    $instanz = new login_class;
                    $instanz->login($tpl, $objDB, $U);
                    $call_tpl = $instanz->call_tpl;
                    break;

                    [...] erst hier kommt die classe mit der funktion die das statistikbild macht
                    thx Mukraker

                    Kommentar


                    • #40
                      dann rall halt mal langsam, dass das Bild in einer extra datei generiert werden muss, wie willst du das sonst in nen img-tag reinpacken??? oder du nimmst halt die gleiche seite wie die anzeigeseite, aber sagst dem, wenn das bild erstellt wird, dass auf die ausgabe verzichtet wird.

                      scheint als ob du einfach nicht kapierst, dass man ein bild nicht "inline" in eine HTML-Seite packen kann..

                      Kommentar


                      • #41
                        dass man ein bild nicht "inline" in eine HTML-Seite packen kann
                        ??

                        seit wann geht <img src="meinbild.png"> nicht mehr ?


                        dass das Bild in einer extra datei generiert werden muss
                        das sagt ich ja ebend auch, also ne wirklich extra file die nicht includet wird !! wo sonst nichts drin is !!!
                        thx Mukraker

                        Kommentar


                        • #42
                          Wozu hab ich bitte "inline" dahin gepackt??? Du kannst ein Bild NUR über scr des Img-Tags einbinden. Aber das hat ja rein gar nichts mit PHP zu tun.

                          wird mir aber auch langsam zu bunt. Fast so bunt wie mein MP3-Player.

                          Kommentar


                          • #43
                            sry das mit dem "inline" check ich ehrlich gesagt nicht, eine letzte klare ausasge von dir wäre vielleicht noch genial, dann lass mal den threat dicht machen
                            thx Mukraker

                            Kommentar


                            • #44
                              mit inline war gemeint, dass du htmlcode und bild auf einmal erstellen lässt.

                              inline war das beste wort, was mir grad in den sinn kam...

                              Kommentar


                              • #45
                                ich glaub wir sollten uns mal über mirc oder icq unterhalten, irgendwie reden wir aneinander vorbei
                                thx Mukraker

                                Kommentar

                                Lädt...
                                X