Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]9220[/thread]

HTML Formulare und Perl

Leser: 2


<< |< 1 2 3 >| >> 24 Einträge, 3 Seiten
kruemmel
 2007-07-24 20:47
#78785 #78785
User since
2006-02-12
33 Artikel
BenutzerIn
[default_avatar]
Hallo Leute,

ich suche nach einem Workshop bzw. HowTo in dem es ausführlich um das Thema Formulardaten in HTML/Perl geht. Sprich wie bereitet man am saubersten HTML/Perl Formulare auf. Was ist derzeitige Standard und das sinnvollste vorgehen. Habe mal einige Formulare mit dem Modul HTML::Template gemacht. Ist das noch uptodate mit diesem Modul oder gibt es schon bessere Vorgehen und warum sind diese dann besser? Ich habe mir mal das Buch Web-Programmierung mit Perl vom Addison-Wesley Verlag zu gelegt. Das Buch ist von 2002 und ich bin mir nicht sicher ob man so noch Sachen fürs Web programmiert weil dort wird z.B. HTML und Perl noch in eine Datei geklatscht was finde ich die Sache recht unübersichtlich macht. Ich frage nach einem Workshop weil ich nicht nur detailierte Erklärungen sondern auch Anregungen benötige. Unteranderem soll als Web-Server Apache mit mod_perl und ner MySQL DB eingesetzt werden. Das Konstrukt steht auch schon. Ich suche wie gesagt nach einer guten Quelle die einem Step by Step moderne Vorgehensweisen im Zusammenhang mit HTML/Perl liefert und mit Beispielen nicht geitzt. Solche Sachen wie SelfHTML sind mir einfach nicht ausführlich und detailliert genug und gut Bücher die wirklich zeitgemäß sind habe ich auch noch nicht zu diesem Thema gefunden. Ich habe einige Oreilly Bücher über Perl. Diese Bücher kann man empfehlen es steht halt nicht so viel über die HTML/Perl Geschichte drin. Lange Rede kurzer Sinn vielleicht kann mir ja einer von euch etwas empfehlen oder zukommen (mathias.kruemmel@yahoo.de) lassen.
renee
 2007-07-24 20:56
#78786 #78786
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
HTML::Template ist vollkommen ok. Es kommt natürlich auch darauf an, was Du genau machen willst.

Wenn Du "modern" sein willst, kannst Du Catalyst einsetzen...
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/
kruemmel
 2007-07-24 21:21
#78787 #78787
User since
2006-02-12
33 Artikel
BenutzerIn
[default_avatar]
kennst du vielleicht Anwendungen oder kleine Beispiele die man sich mal ansehen kann? Sprich z.B. eine Webseite oder einen Shop oder oder oder wo man das ergebnis bzw. den Quellcode betrachten kann um sich ein Bild von der vorgehensweise zu machen. In Büchern findet man immer nur Schnipsel. Wenn man aber mal den kompletten Code vor augen hat und sieht was durch ihn passiert ist das für mich übersichtlicher und ich lerne es schneller. Halt wie ein Workshop oder HowTo was sich mit HTML/Perl befasst. Praxisbeispiele sind immer die besten (jedenfalls lerne ich so am besten). Wie geagt die Frage nach einem guten zeitgemäßen Buch zu diesem Thema ist auch noch offen. Bin für alles dankbar darum erste einmal dank für den Typ mit Catalyst. Werde ich mir mal ansehen.
MisterL
 2007-07-24 22:40
#78788 #78788
User since
2006-07-05
334 Artikel
BenutzerIn
[default_avatar]
Quote
Buch Web-Programmierung mit Perl vom Addison-Wesley Verlag
Das hab ich auch (damals von tecchannel.de für rd. 3 Euro geholt)
So durchgängige Literatur mit MySQL, Perl, HTML,... kenne ich zwar keine, aber terrashop und ciando könnten was im Angebot haben:
Perl bei Terrashop und http://www.ciando.de
“Perl is the only language that looks the same before and after RSA encryption.”
MartinR
 2007-07-25 09:01
#78789 #78789
User since
2004-06-17
305 Artikel
BenutzerIn
[default_avatar]
Hi,

wundert mich eigentlich, dass renee nicht darauf hingewiesen hat. Ich verwende nun anstatt HTML::Template lieber CPAN:HTML::Template::Compiled in Zusammenarbeit mit CPAN:CGI::Application. Ganz einfach weil es mehr Funktionalität bietet und schneller sein soll (habs aber nicht getestet). In den Dokus dazu sind eigentlich recht selbsterklärende Beispiele drin.

BTW: In diesem Zusammenhang interessiert mich auch brennend die Frage wie man am intelligentesten Formulareingaben prüft. Also Punkt 3 und 4 bei folgendem - wobei Punkt 4 ja wieder irgendwie verwandt ist mit Punkt 1:

1) Formular anzeigen ( leer oder vorbelegt mit vorhandenen Daten)
2) Neueingabe oder editieren von Daten
3) Prüfen der Daten am Server
4) Bei Fehler das Formular nochmal anzeigen mit allen bereits eingegebenen Daten ...
bieber
 2007-07-25 09:40
#78790 #78790
User since
2007-06-18
148 Artikel
BenutzerIn
[default_avatar]
also, das gehört eigentlich in den Bereich Webprogrammierung....

so nun zu den Forumlardaten,
der einfachste (mir bekannte)Weg ist hier Perl und Html zu mischen
z.B.:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
     
print<<"1";
<form method="post" action="index.pl ">
<select name="JAHR">
1

print"<option selected>$jahr</option>\n";
for($i=2007;$i<=2060;$i++)
{
       print" <option>$i</option>\n";
};

print<<"2";
</select></form>
2


ungetestet, der rest ist reines html, vorauswahl usw.

wenn du nun ein edit-Feld hast, kannst du anschlißend mit regulars überprüfen ob alles so ist wie du es haben willst, wenn nicht rufst du eine error-Meldung auf
Es gibt immer Leute die meinen, sie seien schlauer als ich. Das Schlimmste ist, sie sind es auch.
renee
 2007-07-25 10:58
#78791 #78791
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
@bieber: So macht man das eigentlich nicht mehr. Genau dafür nimmt man Templates.

@MartinR: Ich war gestern etwas in Eile. Und zu Catalyst gibt es doch noch etwas mehr Doku... Ich selbst verwende die gleiche Kombination wie Du.

@Kruemmel: Ein durchgängiges Beispiel habe ich nicht.Ich kann Dir nur einzelne Links bieten wie:

* Wiki:FAQ zu CGI
* Vortragsunterlagen (auch HTML::Template)
* Using CGI::Application
* Rapid Website Development with CGI::Application
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/
bieber
 2007-07-25 11:14
#78792 #78792
User since
2007-06-18
148 Artikel
BenutzerIn
[default_avatar]
jupp stimme dir zu, nur habe ich selbst erst vor wenigen Tagen mit Templates angefangen, kenne mich da wenig aus (Asche auf mein Haupt)

schön ist meine Lösung nicht, aber es funst und ist einfach^^
Es gibt immer Leute die meinen, sie seien schlauer als ich. Das Schlimmste ist, sie sind es auch.
renee
 2007-07-25 11:59
#78793 #78793
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
@bieber: Dein Code mal mit CPAN:HTML::Template::Compiled:

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#!/usr/bin/perl

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

my $template = HTML::Template::Compiled->new(
    filehandle => *DATA,
);

my @values;
my $jahr = 2027;

for( 2007 .. 2059 ){
    # fuege die Hashreferenz fuer jede Option hinzu
    push @values, {
        year     => $_,
        selected => $_ == $jahr,
    };
}

$template->param( JAHRE => \@values );
print $template->output;


__DATA__
<form method="post" action="index.pl ">
<select name="JAHR">
<%loop JAHRE%>
    <option <%if selected%>selected<%/if%>><%var year %></option>
<%/loop%>
</select>
</form>


Bei so kleinen Beispielen kommen die Vorteile von Templates noch nicht so stark zur Geltung, aber es gibt sehr viele davon:

* Bessere Übersicht im Perl-Programm: Wenn im Perl-Code ein Fehler ist, muss man sich nicht noch zusätzlich durch ein paar hundert Zeilen HTML-Text kämpfen.

* Leichtere Austauschbarkeit des Designs: Im Template hat man einen kompletten HTML-Text vor sich. Da ist das Design besser zu verändern. Das HTML ist nicht in viele kleine Teile aufgeteilt. Man muss nur den neuen Template-Namen im Perl-Code eintragen (oder einfach das alte Template ändern). Man muss das Perl-Programm nicht anfassen.

* Man kann ein komplettes Design machen, ohne das Perl-Programm zu haben. Steht das Design müssen die dynamischen Inhalte nur noch durch Template-Variablen ersetzt werden und schon steht der HTML-Teil. Ich muss mir nicht noch überlegen wo im Perl-Code muss ich den HTML-Text einfügen?

* Template-Engines nehmen einem viel Arbeit ab: Bei CPAN:HTML::Template::Compiled kann man zum Beispiel ein "default_escape" angeben. Man muss sich dann nicht mehr um das Escapen der dynamischen Inhalte kümmern. So kann man zum Beispiel das Risiko von Cross-Site-Scripting zumindest einschränken wenn man "default_escape" auf 'HTML' setzt.

* und noch einige mehr...
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/
RalphFFM
 2007-07-25 12:31
#78794 #78794
User since
2006-11-16
258 Artikel
BenutzerIn
[Homepage] [default_avatar]
Von der verwendeten Technik wie verwendete Module oder Frameworks mal abgesehen, ist es finde ich mindestens genausowichtig sich frühzeitig die Abläufe der Anwendung klarzumachen. In _welchen_ Fall soll _was_ dem Anwender angezeigt werden. Die beste Technik hilft nicht wenn die Abfolge Murks ist.

Das wollte ich noch ergänzen, weil kruemmel's Beitrag von 19:21 Uhr ja doch etwas ins allgemeinere geht.
<< |< 1 2 3 >| >> 24 Einträge, 3 Seiten



View all threads created 2007-07-24 20:47.