Hallo zusammen,
ich habe folgendes Problem: Bei Klick auf eine Grafik soll sich ein neues Fenster öffnen und die Grafik soll vergrößert dargestellt werden. Dies ist aber nicht der Fall, jedenfalls wird diese Fehlermeldung ausgegeben:Notice: Undefined variable: soll2 in (Pfad) on line 309. Das gleich Problem gilt auch für soll3, jedoch NICHT für soll4, da meckert er nicht.
Wie kann ich diese Fehlermeldung umgehen? Wo liegt das Problem mit soll2 und soll3 ?
Ich hoffe jemand kann mir helfen, bin Einsteiger und werde alleine damit nicht fertig
ich habe folgendes Problem: Bei Klick auf eine Grafik soll sich ein neues Fenster öffnen und die Grafik soll vergrößert dargestellt werden. Dies ist aber nicht der Fall, jedenfalls wird diese Fehlermeldung ausgegeben:Notice: Undefined variable: soll2 in (Pfad) on line 309. Das gleich Problem gilt auch für soll3, jedoch NICHT für soll4, da meckert er nicht.
Wie kann ich diese Fehlermeldung umgehen? Wo liegt das Problem mit soll2 und soll3 ?
Ich hoffe jemand kann mir helfen, bin Einsteiger und werde alleine damit nicht fertig
Code:
<?php include '../../../lib/php/portal/connect.php'; include '../../../lib/php/portal/session.php'; include '../../../lib/jpgraph/src/jpgraph.php'; include '../../../lib/jpgraph/src/jpgraph_bar.php'; include '../../../lib/jpgraph/src/jpgraph_line.php'; include '../config.php'; error_reporting(E_ALL); $month_count = 0; //Anzahl der darzustellenden Monate function calc_next_date($date) { $_month = substr($date,4,2); $_year = substr($date,0,4); $_next_date = 0; if($_month == 12) { $_next_date = $_year+1 . "01"; } elseif($_month == 01) { $_next_date = $_year . "02"; } else { $_next_date = $date + 1; } return $_next_date; } function calc_prev_date($date) { $_month = substr($date,4,2); $_year = substr($date,0,4); $_prev_date = 0; if($_month == "12") { $_prev_date = $_year . "11"; } elseif($_month == "01") { $_prev_date = $_year-1 . "12"; } else { $_prev_date = $date - 1; } return $_prev_date; } $ziel = $cfg["ppm_ziel"]; if ($_GET['start'] && $_GET['ende'] && $_GET['abt']) { $start = $_GET['start']; $ende = $_GET['ende']; } else { $start = 200407; $ende = 200501; } $team = $_GET['abt']; if ($team == "QKT1") { $sql_abt = "team LIKE '1%' AND"; } elseif($team == "QKT2") { $sql_abt = "team LIKE '2%' AND"; } elseif ($team == "AbtGesamt") { $sql_abt = ""; } else { $sql_abt = "team = '$team' AND"; } $werk = $_GET['werk']; if ( $werk == "Alle Werke"){ $sql_werk = ""; }else{ $sql_werk = "AND werk = '$werk'"; } $i = 0; $y = array(); $y2 = array(); $datum = array(); $soll = array(); $max = array(); $end = $start; if($ende > $start) { while ($end <= $ende) { $result2 = mysql_query(" SELECT (sum(t_bea_fk1+t_bea_fk2)/sum(t_gel))*1000000 as ppm FROM ".$cfg['datatable']." WHERE $sql_abt zeitraum ='$end'$sql_werk"); $result = mysql_query(" SELECT (sum(t_bea_fk1+t_bea_fk2)/sum(t_gel))*1000000 as ppmol FROM ".$cfg['datatable']." WHERE $sql_abt zeitraum BETWEEN '$start' and '$end' $sql_werk"); $res2 = mysql_fetch_assoc($result2); $res = mysql_fetch_assoc($result); $y[$i] = round($res2['ppm']); $max[$i] = round($res2['ppm']); $y2[$i] = round($res['ppmol']); $datum[$i] = $end; // Hochsetzen des Zeitraumes;wenn Jahr12, dann Jahr++01 if (substr($end,4,2) == "12") { $jahr = 0; $tmp = "01"; $end = substr_replace($end,'01',4,2); $jahr = (int)substr($end,0,4); $jahr++; $jahr = "".$jahr; $end = substr_replace($end,$jahr,0,4); } else { $end++; } if (($end<=200901) && ($end<=200909)) { $soll[$i] = $ziel; $soll2[$i] = ''; $soll3[$i] = ''; $soll4[$i] = ''; if($end > $ende) { $soll2[$i] = $cfg["ppm_ziel_09"];$soll2[$i+1] = $cfg["ppm_ziel_09"]; } else { $soll[$i+1] = $ziel; } if ($end>= 200910) { //$soll[$i] = $cfg["ppm_ziel_09"]; $soll[$i+1] = $cfg["ppm_ziel_09"]; } } elseif (($end<=$ende) && ($end<=200911)) { $soll2[$i] = $cfg["ppm_ziel_09"]; //Neue Ziellinie 2009 } If (($end <= 200910)) //neue Ziellinie 2010 { $soll3[$i] = ''; } elseif(($end<=$ende) && ($end<=201009)) { $soll3[$i]= $cfg["ppm_ziel_10"]; $soll3[$i+1] = $cfg["ppm_ziel_10"]; } if(($end <= 201009)) { $soll4[$i] = ''; } else { $soll4[$i]= $cfg["ppm_ziel_10_2"]; $soll4[$i+1] = $cfg["ppm_ziel_10_2"]; } $i++; $month_count++; } //Ende While if(max($max) < $ziel) { $maximum = $ziel*1.1; } else { $maximum = max($max)*1.1; } $ydata1 = $soll; // Ziel $ydata2 = $y; // ppm nicht kumuliert $ydata3 = $y2; // ppm ohne Logistik // $ydata4 = $soll2; // Ziel 09 // $ydata5 = $soll3; //neues Ziel 2010 // $ydata6 = $soll4; //neues Ziel ab 201009 // // $datax = $datum; $graph = new Graph(800,560,"auto"); $graph->SetScale("textint"); $graph->title->Set(''.$_GET['abt'].' Zeitraum: '.$start.' - '.$ende.''); $graph->yaxis->SetColor("black"); $graph->yaxis->SetFont(FF_ARIAL,FS_NORMAL,10); $graph->yaxis->title->SetFont(FF_ARIAL,FS_BOLD,14); $graph->yaxis->SetTitle('ppm','middle'); $graph->yaxis->SetTitlemargin(60); $graph->xaxis->SetColor("black"); $graph->xaxis->title->SetFont(FF_ARIAL,FS_BOLD,12); $graph->xaxis->SetFont(FF_ARIAL,FS_NORMAL,10); $graph->xaxis->SetTitle('Zeitraum','middle'); $graph->xaxis->SetTitlemargin(5); $graph->xaxis->SetTickLabels($datax); //Drehung der Labels "x-Achse" um 45 Grad //falls mehr als 12 Monate angezeigt werden if($month_count >= 13) { $graph->xaxis->SetTextLabelInterval(2); //$graph->xaxis->SetFont(FF_ARIAL); //$graph->xaxis->SetLabelAngle(45); } $graph->ygrid->SetFill(true,'#CDE0FE@0.5','#ECF3FF@0.5'); $graph->ygrid->Show(); $graph->xgrid->Show(); $graph->yscale->SetAutoMin(0); $graph->yscale->SetAutoMax($maximum); $graph->SetMarginColor('grey'); $graph->SetFrame(false); // Linie Q-ppm kum. $lineplot2 = new LinePlot($ydata3); $lineplot2->SetColor("chartreuse3"); $lineplot2->SetWeight(2); $lineplot2->value->Show(); // Werte werden im Graphen angezeigt $lineplot2->value->SetFormat('%0.0f'); $lineplot2 ->value->SetColor("dimgray","darkred"); $lineplot2->SetLegend("Q-ppm kumuliert"); // Linie Q-ppm Einzelmonate $bplot = new BarPlot($ydata2); $bplot->SetWidth(0.6); $bplot->SetFillGradient("navy","lightsteelblue",GRAD_VER); $bplot->SetColor("navy"); $bplot->value->Show(); $bplot->value->SetColor("white","darkred"); $bplot->value->SetFormat('%0.0f'); $bplot->SetValuePos("bottom"); $bplot->SetLegend("Q-ppm Einzelmonat"); if(count($ydata1)>0){ // Linie Ziel $lineplot1 = new LinePlot($ydata1); $lineplot1->SetColor("darkorange"); $lineplot1->SetWeight(2); // $lineplot1->SetBarCenter(); } if(count($soll2)>0){ // Linie Ziel $lineplot4 = new LinePlot($soll2); $lineplot4->SetColor("darkorange"); $lineplot4->SetWeight(2); } if(count($soll3)>0){ // Linie Ziel $lineplot5 = new LinePlot($soll3); $lineplot5->SetColor("darkorange"); $lineplot5->SetWeight(2); $lineplot5->SetLegend("Ziel"); } if(count($soll4)>0) { // Linie Ziel $lineplot6 = new LinePlot($soll4); $lineplot6->SetColor("darkorange"); $lineplot6->SetWeight(2); } // Add the plot to the graph $graph->Add($bplot); $graph->Add($lineplot2); if(count($ydata1)>0){ // $graph->Add($lineplot1); } if(count($soll2)>0){ // $graph->Add($lineplot4); } if(count($soll3)>0){ // $graph->Add($lineplot5); } if(count($soll4)>0){ // $graph->Add($lineplot6); } //Legend $graph->legend->Pos(0.13,0.07,"left","top"); $graph->legend->SetColumns(3); $graph->legend->SetFillColor('white'); $graph->legend->SetFrameWeight(0); $graph->legend->SetShadow('lightgray',0); $graph->legend->SetFont(FF_ARIAL,FS_NORMAL,10); // Display the graph $graph->Stroke(); } /* Ueberpruefung ob nur ein Monat dargestellt werden soll */ elseif($start == $ende) { $query = "SELECT (sum(t_bea_fk1+t_bea_fk2)/sum(t_gel))*1000000 as ppmol FROM ".$cfg['datatable']." WHERE $sql_abt zeitraum = $start $sql_werk"; $result = mysql_query($query); $query2 = "SELECT (sum(t_bea_fk1+t_bea_fk2)/sum(t_gel))*1000000 as ppm FROM ".$cfg['datatable']." WHERE $sql_abt zeitraum ='$end' $sql_werk"; $result2 = mysql_query( $query2); $res = mysql_fetch_assoc($result); $res2 = mysql_fetch_assoc($result2); $y_ppm = array(); $y_ppmol = array(); $xaxis_skala = array(); $y_ppm[] = round($res2['ppm']); // ppm $y_ppmol[] = round($res['ppmol']); // ppm ohne Logistik $y_ppmol[] = round($res['ppmol']); $xaxis_skala[] = $start; if($start<=200901){ $y_ziel=array($cfg["ppm_ziel"],$cfg["ppm_ziel"]); }elseif ($start<=200909) { $y_ziel=array($cfg["ppm_ziel_09"],$cfg["ppm_ziel_09"]); } elseif ($start<=200909) { $y_ziel=array($cfg["ppm_ziel_10"],$cfg["ppm_ziel_10"]); } elseif ($start<=200909) { $y_ziel=array($cfg["ppm_ziel_10_2"],$cfg["ppm_ziel_10_2"]); } if((max($y_ppm[0],$y_ppmol[0])) * 1.1> $y_ziel[0]){ $yaxis_skala = (max($y_ppm[0],$y_ppmol[0])) * 1.1; }else{ $yaxis_skala = $y_ziel[0] * 1.1; } // echo $_GET['abt']; //var_dump($y_ziel); //Formatierung des Graphen $graph = new Graph(800,560,"auto"); $graph->SetScale("textint"); $graph->title->Set(''.$_GET['abt'].' Zeitraum: '.$start.' - '.$ende.''); $graph->yaxis->SetColor("black"); $graph->yaxis->SetFont(FF_ARIAL,FS_NORMAL,10); $graph->yaxis->title->SetFont(FF_ARIAL,FS_BOLD,14); $graph->yaxis->SetTitle('ppm','middle'); $graph->yaxis->SetTitlemargin(60); $graph->xaxis->SetColor("black"); $graph->xaxis->title->SetFont(FF_ARIAL,FS_BOLD,12); $graph->xaxis->SetFont(FF_ARIAL,FS_NORMAL,10); $graph->xaxis->SetTitle('Zeitraum','middle'); $graph->xaxis->SetTitlemargin(5); $graph->xaxis->SetTickLabels($xaxis_skala); $graph->ygrid->SetFill(true,'#CDE0FE@0.5','#ECF3FF@0.5'); $graph->ygrid->Show(); $graph->xgrid->Show(); $graph->yscale->SetAutoMin(0); $graph->yscale->SetAutoMax($yaxis_skala); $graph->SetMarginColor('grey'); $graph->SetFrame(false); //Balken ppm $bplot_ppm = new BarPlot($y_ppm); $bplot_ppm->SetFillGradient("navy","lightsteelblue",GRAD_VER); $bplot_ppm->SetColor("navy"); $bplot_ppm->SetValuePos("top"); $bplot_ppm->value->Show(); $bplot_ppm->value->SetFormat('%0.0f'); $bplot_ppm->SetLegend("Q-ppm"); $graph->Add($bplot_ppm); // Linie Ziel $lplot = new LinePlot($y_ziel); $lplot->SetColor("darkorange"); $lplot->SetWeight(2); $lplot->SetLegend("Ziel"); $graph->Add($lplot); //$bplot_ppmol->SetWidth(0.2); $bplot_ppmol = new LinePlot($y_ppmol); $bplot_ppmol->SetColor("chartreuse3"); $bplot_ppmol->SetWeight(2); $bplot_ppmol->value->Show(); // Werte werden im Graphen angezeigt $bplot_ppmol->value->SetFormat('%0.0f'); $bplot_ppmol ->value->SetColor("dimgray","darkred"); $bplot_ppmol->SetLegend("Q-ppm kumuliert"); $graph->Add($bplot_ppmol); //Legend $graph->legend->Pos(0.13,0.07,"left","top"); $graph->legend->SetColumns(3); $graph->legend->SetFillColor('white'); $graph->legend->SetFrameWeight(0); $graph->legend->SetShadow('lightgray',0); $graph->legend->SetFont(FF_ARIAL,FS_NORMAL,10); $graph->Stroke(); } ?>
Kommentar