Perl Skript auf Xampp


Bambus Bambule

Grünschnabel
Hallo,

ich möchte eine Grafik mit Hilfe von Perl und GD erstellen. Hierzu habe ich mir auf Ubuntu Xampp installiert. GD sollte ja mitinstalliert sein.

Im Internet bin ich zunächst auf Beispiele gestoßen wie diesem hier: http://gdgraph.com/samples/sample51.html (nach unten scrollen).

Habe das als Skript.pl erstellt, den Pfad zur installation von Perl angegeben, die Save.pl in das Perl verzeichnis kopiert, eine PHP Datei erstellt und die Dateien auf den Server geladen.

Wenn ich nun meinen Browser öffne und die PHP lade, steht nur der Header und das Testwort auf dieser Seite. Das Skript wird nicht geladen.

Testweises laden im Terminal hat ergeben das das Skript funktioniert.

Könnt ihr mir sagen was ich nicht beachtet habe?

Hier die Codes:

Die Test.php:
Code:
<html>

<head>
Hallo
</head>

<body>
<?php passthru("perl skript.pl"); ?>
Test
</body>


</html>

und die skript.pl:
Code:
#!/opt/lampp/bin/perl -w

use GD::Graph::lines;
require 'save.pl';

print STDERR "Processing sample51\n";

# The reverse is in here, because I thought the falling line was
# depressing, but I was too lazy to retype the data set

@data = (
[ qw( Jan Feb Mar Apr May Jun Jul Aug Sep ) ],
[ reverse(4, 3, 5, 0, 3, 1.5, -1, -3, -4)],
);

$my_graph = new GD::Graph::lines();

$my_graph->set(
x_label => 'Month',
y_label => 'Measure of success',
title => 'A Simple Line Graph',
y_max_value => 8,
y_min_value => -6,
y_tick_number => 14,
y_label_skip => 2,
box_axis => 0,
line_width => 3,

transparent => 0,
);

$my_graph->plot(\@data);
save_chart($my_graph, 'sample51');
 

deepthroat

Erfahrenes Mitglied
Hi.

Hast du denn mal geschaut was PHPs passthru überhaupt macht?

Du kannst doch nicht die Bilddaten direkt in das HTML einbinden.

Das Perl Skript erzeugt eine Bilddatei. Diese Datei müßtest du in einem img Tag einbinden.

z.B.
PHP:
if (system("skript.pl") == 0) {
  echo "<img src='pfad/zur/generierten/sample51'>";
}
Gruß