Avatar billede k-jessen Nybegynder
21. januar 2015 - 00:15 Der er 3 kommentarer

CSV fil som graf med drop down menu php

Hej jeg har over længer tid samlet data fra mit "fyr" projekt, jeg arbejder på at fin justere mit centralvarme anlæg.
nu er jeg dog lidt træt af at skulle rode rundt på serveren for at se den rigtige graf.
jeg roder der for med en drop down menu for at se hvilke filer der er i biblioteket.
ok hvad har jeg til at virke.:
jo drop down menuen virker!!!! jeg kan se filerne, men jeg kan ikke rigtigt få variablen ud så jeg kan sende det til php koden der laver grafen.

kode for drop down menuen kommer her:
<?php

$dir    = './data/test111';
$ddArray1 = scandir($dir,1);
print ($ddarray1[2]);

// Values from array 1
PRINT '<select name="Words">';

// for each value of the array assign a variable name word
FOREACH($ddArray1 AS $word){
    PRINT '<option value="'.$word.'">'.$word.'</option>';
}

PRINT '</select>';



?>

koden for grafen kommer her:

<?php
   
    define("LOG_FILE", "./data/test111/test111-2015-01-20.csv");
    require_once('jpgraph/src/jpgraph.php');
    require_once('jpgraph/src/jpgraph_line.php');
   
    $times = array();
    $values = array();   
   
    $file_lines = file(LOG_FILE, FILE_IGNORE_NEW_LINES|FILE_SKIP_EMPTY_LINES);
   
    foreach($file_lines as $line_num => $line_value) {
        $line_elements = explode(",", $line_value);
        $times[] = date($line_elements[0]);
        $values[] = $line_elements[1];
    }
   
    $graph = new Graph(800, 400);
    $graph->SetFrame(false);
    $graph->SetScale('intint');
    $graph->SetMarginColor('white');
    $graph->title->Set("Temp midt tank");
   
    $graph->xaxis->SetTickLabels($times);
    $graph->yaxis->scale->SetAutoMin(0);
    $graph->yaxis->title->Set("°C");
   
    $graph->ygrid->SetFill($aFlg=true, $aColor1='white', $aColor2='gray9');
    $lineplot = new LinePlot($values);
    $lineplot->SetColor('blue');
   
    $graph->Add($lineplot);
    $graph->Stroke();
?>



jeg vil antage at jeg skal bruge en get funktion i graf koden for at få fat i fil den del tror jeg godt jeg kan finde ud af.
det er mere i drop down menue koden jeg ikke rigtig kommer videre.
jeg mangler en aktion knap( har haft en men den virkede ikke) og noget at sende?? nogen der vil give en hånd.
pfh kim jessen
Avatar billede greatee Nybegynder
21. januar 2015 - 02:21 #1
Indholdet er ikke tilladt

Dette indlæg er blevet modereret af en CoAdmin

Avatar billede k-jessen Nybegynder
21. januar 2015 - 07:27 #2
Jeg har ændret de øverste linjer i graf koden :
<?php
   
    $id=$_GET["id"];
   

    define("LOG_FILE", "./data/test111/".$id.".csv");

så nu kan jeg hente de forskellige grafer via. browseren.

så nu mangler jeg bare menuen.
Avatar billede Compl3xity Nybegynder
21. januar 2015 - 21:01 #3
Det ser ikke ud som om du har en formular til din select menu hvilket også forklarer hvorfor din submit knap ikke virker. Sørg først for at pakke din select i en <form method="get"></form> hvis du ønsker at bruge GET metoden. Alternativt vil jeg anbefale POST metoden. Du kan læse mere om det på W3schools (www.w3schools.com/tags/ref_httpmethods.asp), hvilket i øvrigt er et glimrende site for nybegyndere. Du mangler også at fange værdien i din select efter at formen er submitted.

Et ekstra tip er at bruge echo i stedet for PRINT og lad være med at skrive funktionerne med store bogstaver. Brug små bogstaver f.eks. echo "hej"; i stedet for ECHO "hej";

Jeg vil anbefale dig at læse følgende: www.corephp.com/blog/php-best-practices-that-you-must-follow/
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester