Schrift
[thread]631[/thread]

Hilfe bei Website mit Perl/CGI/XML benötigt!

Leser: 1


<< |< 1 2 3 4 ... 6 >| >> 58 Einträge, 6 Seiten
wusel81
 2005-12-20 19:44
#6350 #6350
User since
2005-12-20
27 Artikel
BenutzerIn
[default_avatar]
Hallo zusammen,
bin neu hier. Habe mir gestern erstmal "Einführung in Perl" bei Amazon bestellt, da ich Null Plan von CGI/Perl habe.

Ich muss für&´s Studium eine Website in Perl/CGI erstellen.
Das Design und eine Template Datei des Layouts steht.

Die Anzeige der Inhaltsseiten soll dynamisch mit CGI erfolgen.
Brauche dazu also mehrere Perl-CGI-Skripte mit deren Hilfe die Seiten abhängig von der jeweiligen Anfrage erzeugt werden.

Die Skripte sollen die Daten aus einer xml oder textdatei beziehen.
- Das HTML Template
- Datei mit Texten
- Datei mit den Bild- und Linkpfaden

Das CGI Skript muss dann die HTML Schablone einlesen und nach den Inhalten parsen.

Leider hab ich bis jetzt keine Ahnung wie ich das angehen.
Muss bis Ende Januar fertig sein.

Leider finde ich auch nirgends Beispiele im Netz.

Habt ihr da mal ein paar Tipps/Hilfestellungen?
steffenw
 2005-12-20 21:07
#6351 #6351
User since
2003-08-15
692 Artikel
BenutzerIn
[Homepage] [default_avatar]
Du brauchst Module, die Dir helfen. Die findest Du bei:
http://search.cpan.org/
1. CGI - param holt Dir die Parameter, mit der die jeweilige Seite aufgerufen wurde
2. HTML::Template - schreibe Dir einen Sack voll .html-Dateien und ersetze mit dem Modul die Platzhalter
3. XML::LibXML - parst Dir die XML-Dateien
Textdateien können vielfältig sein:
1. ini-Dateien - Modul: Config::IniFiles
2. csv-Dateien - Modul: Text::CSV
3. hier mußt Du konkreter werden
$SIG{USER} = sub {love 'Perl' or die};
wusel81
 2005-12-21 00:21
#6352 #6352
User since
2005-12-20
27 Artikel
BenutzerIn
[default_avatar]
okay da werde ich mal schauen.

ein paar mitstudenten haben die xml dateien etwas so aufgebaut:
<seiten>
<titel>Die Geschichte
<descr>Die Geschichte Irlands
<text>blablablablablablablablablablablablablablablablablabla
</seiten>
renee
 2005-12-21 00:29
#6353 #6353
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Das ist aber kein gültiges XML (die schliessenden Tags fehlen). Du kannst dieses XML mit dem von steffenw genannten Modul parsen und die Platzhalter im Template durch die Werte in der XML-Datei ersetzen...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
MartinR
 2005-12-21 08:29
#6354 #6354
User since
2004-06-17
305 Artikel
BenutzerIn
[default_avatar]
[quote=wusel81,20.12.2005, 18:44]Das CGI Skript muss dann die HTML Schablone einlesen und nach den Inhalten parsen.[/quote]
Hi,

zu HTML::Template empfehle ich Dir das hier:

http://perl.renee-baecker.de/HTML_Template.pdf

cu
wusel81
 2005-12-21 13:55
#6355 #6355
User since
2005-12-20
27 Artikel
BenutzerIn
[default_avatar]
Super das hilft mir auf jeden Fall weiter !

Morgen kommt auch das Perl Buch an hoffe ch !
wusel81
 2006-01-02 14:24
#6356 #6356
User since
2005-12-20
27 Artikel
BenutzerIn
[default_avatar]
Hallo,

alsi ich arbeite gerade das pdf mit HTML::Template durch.
Leider scheitert es schon beim ersten Beispiel.

Bekomme immer den Fehler:
Serverfehler!

Die Anfrage kann nicht beantwortet werden, da im Server ein interner Fehler aufgetreten ist.

Fehlermeldung:
Premature end of script headers: html_template.cgi

Habe den neusten Xampp zum Testen am laufen.
Andere Scripts laufen, wie z.B.:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
#!D:\xampp\perl\bin\perl.exe

print "Content-type: text/html\n\n";
print '<html>';
print '<head>';
print '<meta name="author" content="Kay Vogelgesang">';
print '<link href="/xampp/xampp.css" rel="stylesheet" type="text/css">';
print '</head>';
print "<body>&nbsp;<p><h1>GCI with MiniPerl</h1>";
print "CGI with MiniPerl is ready ...</body></html>";
\n\n

<!--EDIT|wusel81|1136206737-->
GwenDragon
 2006-01-02 15:29
#6357 #6357
User since
2005-01-17
14760 Artikel
Admin1
[Homepage]
user image
Da ist ein Fehler im PDF.

So sollte das erste Beispiel lauten:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
#! /usr/bin/perl

use strict;
use warnings;
use HTML::Template;

print "Content-type: text/html\n\n";

my $template = HTML::Template->new(filename => './template.tmpl');
my $willkommen = 'Willkommen bei der Perl-Community';
$template->param(WILLKOMMEN => $willkommen);
print $template->output();
wusel81
 2006-01-02 16:53
#6358 #6358
User since
2005-12-20
27 Artikel
BenutzerIn
[default_avatar]
Diese Zeile print "Content-type: text/html\n\n";
hatte ich schon so.

Funktioniert aber leider auch nicht.
geht es denn bei dir?!
GwenDragon
 2006-01-02 21:39
#6359 #6359
User since
2005-01-17
14760 Artikel
Admin1
[Homepage]
user image
1) Bei dir muus natürlich oben
Code: (dl )
#!D:\xampp\perl\bin\perl.exe
stehen ;)

2) Lässt es sich von der Kommandozeile starten?
Wenn nicht, welche Fehlermeldung kommt dann?

3) Hast du auch HTML-Template installiert? ;)\n\n

<!--EDIT|GwenDragon|1136231532-->
<< |< 1 2 3 4 ... 6 >| >> 58 Einträge, 6 Seiten



View all threads created 2005-12-20 19:44.