Ich habe mir noch mal die Mühe gemacht, und alles so wie du empfiehlst eingegeben. Leider geht es auf deine Weise nicht.
Natürlich geht das.
Ich könnte schreiben: Nein! aber du glaubst es ja eh nicht.
Nein, ich weiß es und du kannst es hier sehen, dass es funktioniert.
Natürlich geht das, ich hab es ebenfalls ausprobiert und selbst deine Version ist sogar strict
Ich kann nur meine Tests schildern: use strict; - nix geht mehr!
s.o.
Wenn ich an all die alten Perl Threads von dir denke, dann ist in deinem Code so wenig von dem drin, was wir dir ermpfohlen hatten, dass es wirklich müsig ist sich Gedanken zu machen.
? In dem Code ist so gut wie gar nichts drin. Nur ein paar Skalare und HTML-Ausgabe. Was soll dabei professionell drinne sein?
* use CGI;
* benutze Funktionen/subs
* use strict
Du bindest CGI::Cookie ein und erzeugst daraus ein Objekt. Das ist nicht nötig, das Modul wird bereits vom Modul CGI eingebunden.
Ich habe keine Ahnung, ob das nörig ist, oder nicht. Ich kann hier nur testen.
Nein du kannst auch lesen, oder? warum tust du es nicht?
Das du das so benutzt: use CGI qw(:standard); zeigt, dass du nicht weißt was du tust.
Auch da gebe ich dir völlig recht - ich habe keine genaue Vorstellung über Module. Warum ich das zusätzlich im Code habe? -> Weil wenn ich es herausnehme, funktioniert es wieder nicht mit Cookie und HTML-Head.
Natürlich funktioniert es, weil du das Modul ja bereits eingebunden hast mit use CGI -no_xhtml
Neben den oben erwähnten Mängeln muss eines dazu gesagt werden: BENUTZE FUNKTIONEN!!!!!
Sowas ist furchtbar und da war es schon zu Zeiten des C64
###############
Datenfilter
###############
$anrede =~ s/;//g;
$vorname =~ s/;//g;
$name =~ s/;//g;
[...]
12 Mal der gleiche Code, vor allem warum filterst du nur den Strichpunkt?
- So hab ich Zugriff auf jede einzelne Filteroption - ist doch eher ein Vorteil.
Wenn du 12 Mal das gleiche tust ist es kein Vorteil diesen Code zwölmal zu schreiben, wenn du merkst dass du etwas anderes filtern willst, musst du zwölfmal den Code umschreiben.
- Weil ich fast ausschließlich mit csv-Dateien arbeite, und diese von mir naturgemäß mit Semikolon getrennt werden. Was ein vom Benutzer eingegebenes Semikolon in einer csv - Datei anrichten kann ist klar.
Hier sehe ich kein CSV ich sehe auch nicht warum es hier in dem Code ein Problem damit geben sollen. Du solltest dort filtern, wo es Probleme geben kann, nicht einfach wahllos mal alles entfernen.
Die Perl-Zwiebelknolle ist bei mir im Browser oben als Quicklink angelegt. Da lese ich öfters mal was nach. Leider nütz die Doku auch nicht immer: Da sind oft Platzhalter oder Optionen mit angegeben, die man nicht so einfach begreift. Oftmals setzt die Doku auch voraus, das gewisse einbindungen von Modulen bereits gemacht worden sind. Aber nicht genau wie man das macht.
Und stellenweise ist sie auch noch unverständlich geschrieben.
Nein, die Doku setzt voraus, dass du ein gewisses Wissen über Perl hast. Du musst Wissen, wie Arrays und Hashes in Perl funktionieren, wie Arrays of Arrays und List of Hashes. Was Referenzen sind und wie du damit umgehst. Insofern hilft hier nur lesen.
Die qq sind meine Lieblinge! Ich Kopiere HTML-Code in das Perlprog und schmücke ihn nur noch vorne mit print qq( und hinten mit ),"\n"; aus.
Fertig ist Perlgerechter HTML-Code. Mir ist es so lieber, weil ich 1:1 den HTML-Quellcode vergleichen und editieren kann.
Dann willst du HTML::Template benutzen!
Meta existiert, also kann ein sauberer HTML-Quelltext auch welche enthalten.
Ich habe nicht gesagt das meta nicht existiert, es sind nur völlig überflüssige Angaben die du da reinbaust.
Stattdessen würde sich in so einem Fall anbieten ein Template zu verwenden.
Das kenne ich leider nicht - und kann deshalb auch nichts dazu sagen.
Ist google kaputt? Ich hab wirklich keine Lust ständig Links rauszsuchen (wenn ich dir den nicht sowieso schon gezeiogt hatte) um dann hinterher festzustellen, es ist dir zu mühselig und du willst weiterhin auf dem Gemurkse stehen bleiben.
Hast du dir schon mal angeschaut was das CGI Modul kann?
Nein?
Ich kann cgi param übergeben und mit den Daten arbeiten.
OK, hier ist Schluss :-(
Struppi.