tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
12
ZUGRIFFE
6823
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von cameeel
    cameeel cameeel ist offline Mitglied Platin
    Registriert seit
    Dec 2004
    Beiträge
    677
    Hi all,
    hab noch nie mit Perl gearbeitet nur mit PHP, MySQL usw.
    Jetzt reicht mir das natürlich nicht und ich will noch was anderes lernen.
    Könnt ihr mir ein paar Tips zu Perl geben und meine Fragen beantworten? thx!

    1. Wo ist der Unterschied zwischen Perl und CGI ?
    2. Was kann man mit Perl / CGI alles machen (paar Beispiele)
    3. Sollte ich bevor ich Perl / CGI lern vllt erst was anderes lernen? (php, mysql kann ich schon - mehr oder weniger)
    4. Wo kann ich Perl / CGI lernen (reichen die Tutorials auf tutorials.de aus?)
    5. Welche Vorteile bietet Perl / CGI gegenüber php / mysql?
    6. Unterscheidet sich Perl / CGI stark von php?

    Wär nett wenn ihr mir helfen könntet

    MfG
    cAm3eel
     
    Nein, ich bin nicht die Signatur, ich putz hier nur.

    URL's kürzen | Code's speichern

  2. #2
    renee renee ist offline Mitglied Brokat
    Registriert seit
    Jan 2004
    Beiträge
    332
    Hallo und Willkommen in der Perl-Welt.

    Dass Du Dich für Perl entschieden hast, ist eine gute Wahl - denn Perl kann (fast) alles...

    Der Unterschied zwischen Perl und CGI ist ganz einfach:
    CGI ist eine Schnittstelle, über die HTML-Seiten mit Webanwendungen (CGI-Skripte) kommunizieren können. Diese CGI-Skripte können in unterschiedlichen Sprachen realisiert werden. Mittlerweile ist die meistgenutzte Sprache dafür Perl.
    Perl ist eine Programmiersprache (eine Skriptsprache). Mit Perl kann man alle möglichen (und unmöglichen) Sachen realisieren. Die meisten Leute kommen mit Perl über die oben genannten Webanwendungen in Berührung. Mit Perl kann man Graphische Benutzeroberflächen programmieren, Webanwendungen oder einfache Konsolenprogramme.
    Da Du MySQL ansprichst: Mit Perl kann man auch ganz einfach Datenbanken ansprechen. Der Vorteil von Perl gegenüber PHP ist, dass man einfacher Programm von Design trennen kann.
    Mit Perl/CGI kann man die gleichen Dinge umsetzen wie mit PHP.

    Du solltest einen groben Überblick über Perl haben, bevor Du "große" Webanwendungen schreibst.

    Vielleicht helfen Dir ein paar Einführungen:
    http://fabiani.net -- Vorträge -- Perl für Anfänger
    http://www.renee-baecker.de/perl.html ## hier findest Du einige Einführungen in Webanwendungen und ein paar allgemeine Infos... (über ein Feedback zu diesen Dateien würde ich mich freuen)
    http://wiki.perl-community.de (Hier gibt's viele Erklärungen und Einführungen, ist zur Zeit leider down)...
     

  3. #3
    Avatar von SilentWarrior
    SilentWarrior SilentWarrior ist offline Mitglied Diamant
    Registriert seit
    Dec 2001
    Beiträge
    3.078
    Kleine Frage: Warum willst du Perl/CGI lernen, wenn du PHP kannst? Kein Mensch (ausser Stefan Münz) benutzt heutzutage noch Perl im Web, weil PHP viel effizienter ist aus dem Grund, dass PHP eigens fürs Web entwickelt wurde, wohingegen Perl eigentlich eine Scriptsprache für Linux ist. Also wenn du was anderes lernen willst, mach dich doch an eine andere Programmierpsrache, anstatt deine Energie dermassen unnötig verpuffen zu lassen.

    renee: Würde mich aber schon noch interessieren, wie du mit PHP etwas designen kannst. Ich mach das ja immer mit HTML...
     

  4. #4
    Registriert seit
    Nov 2002
    Beiträge
    2.709
    ICH entwickel immer noch sehr gerne in Perl. Warum? Perl ist einfach mehr als PHP. Wie renee schon sagte, Perl kann (fast) alles, dagegen ist PHP ein kleines Licht. Sendmail oder IMAP-Verbindungen sind unter Perl ein einfaches, unter PHP bricht man sich beim Versuch selbigens total einen ab. Filesystem-Operationen sind sicher und stabil. Unmengen an Libs erleichtern den Alltag ungemein (man zeige mir eine PHP-Klasse, die es mit der XML-Lib, der CGI-Lib oder was auch immer von Perl aufnimmt).

    SilentWarrior: Also in Perl kannst du was designen:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    
    print table({ -border => 0 },
        caption("Tabelle"),
        Tr(
        [
            td(['blubb', 'blah']),
            td(['blubb', 'blah']),
            td(['blubb', 'blah'])
        ]
        )
    );

    Reines Perl - ohne eine einzige Zeile HTML auch nur mit dem Hintern angeguckt zu haben.

    Fazit: Wer sagt, dass es Zeitverschwendung waere, Perl zu lernen, luegt oder weiss es nicht besser.

    Btw, effizienter: Kannst du das belegen? Hast du Benchmarks? Wenn nicht, bitte, erzaehl nicht so einen unsinn. Meine Perl-Script sind irgendwie immer schneller als meine PHP-Scripte, obwohl ich beides (relativ) gut beherrsche.
     
    Im Ruhestand.

  5. #5
    Avatar von SilentWarrior
    SilentWarrior SilentWarrior ist offline Mitglied Diamant
    Registriert seit
    Dec 2001
    Beiträge
    3.078
    Hey ich meinte nicht effizient von der Laufzeit her - kam vielleicht falsch rüber. Ich meine einfach, dass PHP viel einfacher zu lernen ist, weil es wie gesagt fürs Web abgestimmt ist.

    Ausserdem: Wenn cam3eel schreibt "(php, mysql kann ich schon - mehr oder weniger)", dann glaube ich kaum, dass als nächstes die von dir genannten Themen auf dem Programm stehen. Mag ja sein, dass Perl umfangreicher ist, aber für den alltäglichen Gebrauch reicht PHP allemal aus. Von dem her sehe ich immer noch keinen Grund, warum man - wenn man nicht gerade was ausgefallenes vorhat, wofür Perl besser geeignet ist - es noch lernen sollte.
     

  6. #6
    renee renee ist offline Mitglied Brokat
    Registriert seit
    Jan 2004
    Beiträge
    332
    In PHP kann man einfacher und schneller Sicherheitslöcher reinprogrammieren...

    Perl bietet einige Sachen (z.B. den "Taintmodus"), die gewisse Sicherheitslöcher schon von vornerein stopfen.

    Perl wird noch von vielen Programmierern auch für das Web benutzt. PHP scheint eine "Übermacht" zu sein, aber nur weil extrem viele "Script-Kiddies" schnell eine Anwendung zusammenschustern.
     

  7. #7
    KoMtuR KoMtuR ist offline Mitglied Brokat
    Registriert seit
    Apr 2002
    Ort
    Chemnitz
    Beiträge
    440
    Johannes dann sag mir bitte mal wie ich ne schnelle ausgabe an den Browser hinbekomme -.- Perl ist zwar wirklich schnell, aber irgendwie dauert print bei mir zulange und da bin ich mit php schneller im ausgeben. Also ich hab schon probiert mit syswrite direkt ins STDOUT zu schreiben und normal mit print. Alles ist langsam im Vergleich zu php. Also es geht nur um die Ausgabe und nicht um das ganze berechnen.
     
    "Kreativität heißt, aus dem Chaos Ordnung zu schaffen."
    Georg Stefan Troller (*1921), östr. Journalist

    Tutorials:

  8. #8
    Registriert seit
    Nov 2002
    Beiträge
    2.709
    Zitat Zitat von SilentWarrior
    Hey ich meinte nicht effizient von der Laufzeit her - kam vielleicht falsch rüber. Ich meine einfach, dass PHP viel einfacher zu lernen ist, weil es wie gesagt fürs Web abgestimmt ist.
    Die Dokumentation zu Perl ist um laengen besser, die Syntax ist an C/C++ angelehnt und relativ intuitiv zu lernen, das sind Punkte, die Perl sehr attraktiv machen. Und ich behaupte, absolut dreist, dass unter anderem aufgrund der genialen Dokumentation, Perl und PHP relativ aehnlich schnell zu lernen sind.
    Grade wenn cam3... relativ wenig PHP kann ist der Umstieg auf das zweifellos umfangreichere Perl relativ einfach und unproblematisch. Zugegeben, PHP verzeiht viele fehler, das macht den einmaligen Einstieg unter umstaenden etwas einfacher, dafuer laufen Perl-Scripte (zumindest mit warnings & strict) stabiler und sicherer - Bei gleicher Programmierweise.
     
    Im Ruhestand.

  9. #9
    Registriert seit
    Nov 2002
    Beiträge
    2.709
    Zitat Zitat von KoMtuR
    Johannes dann sag mir bitte mal wie ich ne schnelle ausgabe an den Browser hinbekomme -.- Perl ist zwar wirklich schnell, aber irgendwie dauert print bei mir zulange und da bin ich mit php schneller im ausgeben. Also ich hab schon probiert mit syswrite direkt ins STDOUT zu schreiben und normal mit print. Alles ist langsam im Vergleich zu php. Also es geht nur um die Ausgabe und nicht um das ganze berechnen.
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    
    #/usr/bin/perl -w
     
    use strict;
    use warnings;
    use CGI qw/:standard/;
     
    my $cgi = new CGI;
     
    print $cgi->header(-type => 'text/html; charset: utf-8');
    print $cgi->start_html(
        -encoding   => 'utf-8',
        -title      => 'Blubb'
    );
     
    print strong("Hallo, KoMtuR!");
     
    print $cgi->end_html;

    XHTML 1.0 Trans-Kompatibel, UTF-8. Ohne weiteres.
     
    Im Ruhestand.

  10. #10
    Avatar von cameeel
    cameeel cameeel ist offline Mitglied Platin
    Registriert seit
    Dec 2004
    Beiträge
    677
    Danke euch allen erst mal...
    denk ich werd trotz der ein oder anderen Kritik anfangen Perl zu lernen. Das ich geschreiben hab "ich kann PHP / MySQL - mehr oder weniger" hab ich geschrieben weil ich selbst nicht beurteilen kann wie gut ICH darin bin.
    Hab es auf jeden Fall schon geschafft ein Gästebuch, Linkliste und so Zeug zu programmieren.


    Kleine Frage: Warum willst du Perl/CGI lernen, wenn du PHP kannst?
    => Ich wollte einen Taschenrechner programmieren (mit PHP) - und das ist echt etwas hoffnungsloses
    Weis ja nicht ob das in Perl überhaupt geht aber schlimmer als mit PHP kanns net sein

    Mfg
    cAm3eel
     
    Nein, ich bin nicht die Signatur, ich putz hier nur.

    URL's kürzen | Code's speichern

  11. #11
    Avatar von cameeel
    cameeel cameeel ist offline Mitglied Platin
    Registriert seit
    Dec 2004
    Beiträge
    677
    Ich bins nochmal ..

    Wollt Perl natürlich gleich mal ausprobieren aber es klappt einfach nicht mit dem aufrufen der Datei im Browser...

    Folgendes steht in der Datei drin:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    
      #!/usr/bin/perl
      
      # Ein erstes kleines Skript
      # zur Verdeutlichung einiger Eigenheiten von Perl.
      
      $zahl1 = 500;
      $zahl2 = 10;
      $ergebnis = $zahl1 + $zahl2;
      $name = "Larry";
      
      print "Hallo $name, die Summe von $zahl1 und $zahl2\n";
      print "ist $ergebnis.\n";

    Hab die Datei auf meinen Server geladen:
    http://philipp-langer.net/cgi-bin/script1.pl
    oder
    http://philipp-langer.net/cgi-bin/script1.cgi

    Macht es einen Unterschied ob .pl oder .cgi ? Es funktioniert auf jeden Fall beides nicht ..?!

    Was mach ich falsch?

    thx schonmal...
     
    Nein, ich bin nicht die Signatur, ich putz hier nur.

    URL's kürzen | Code's speichern

  12. #12
    Registriert seit
    Nov 2002
    Beiträge
    2.709
    Hat es das Executable-Bit? Die Fehlermeldung ist etwas verwirrend, das ein 404 deklariert wird, aber die Seite 500.html heisst. Setz mal den chmod fuer die Datei auf 755. Ob .cgi oder .pl kommt auf deine Webserverconfig an, aber normalerweise geht beides.
     
    Im Ruhestand.

  13. #13
    Avatar von cameeel
    cameeel cameeel ist offline Mitglied Platin
    Registriert seit
    Dec 2004
    Beiträge
    677
    Zitat Zitat von Johannes Röttger
    Hat es das Executable-Bit? Die Fehlermeldung ist etwas verwirrend, das ein 404 deklariert wird, aber die Seite 500.html heisst. Setz mal den chmod fuer die Datei auf 755. Ob .cgi oder .pl kommt auf deine Webserverconfig an, aber normalerweise geht beides.
    Was ist Executable-Bit
    Wegen der Fehlermeldung ..das ist weil ich die Fehlerseite ja selbst machen kann und noch keine Zeit hatte für die jeweilige Fehlermeldung die richtige Page zu machen.. kommt aber noch gg
    Das mit dem chmod mach ich morgen, bin grad nicht mehr an meinem PC wo die ganzen Sachen drauf sind!

    Aber danke nochmal!
     
    Nein, ich bin nicht die Signatur, ich putz hier nur.

    URL's kürzen | Code's speichern

Ähnliche Themen

  1. Perl vs. PHP - warum Perl?
    Von DataFox im Forum CGI, Perl, Python, Ruby, Power Shell
    Antworten: 13
    Letzter Beitrag: 30.06.10, 19:59
  2. [perl] *.sql in Perl-skript einbinden
    Von RedDevilGT im Forum CGI, Perl, Python, Ruby, Power Shell
    Antworten: 1
    Letzter Beitrag: 08.05.09, 10:11
  3. PERL ANFÄNGER ! brauche hilfe beim Formularübergeben
    Von BitBurger im Forum CGI, Perl, Python, Ruby, Power Shell
    Antworten: 1
    Letzter Beitrag: 20.06.05, 14:24
  4. Anfänger braucht Perl Hilfe *verzweifel*
    Von soul710 im Forum CGI, Perl, Python, Ruby, Power Shell
    Antworten: 2
    Letzter Beitrag: 07.11.04, 15:52
  5. Unterschied Perl f. Windows <-> Perl f. Windows
    Von lechner im Forum CGI, Perl, Python, Ruby, Power Shell
    Antworten: 0
    Letzter Beitrag: 03.04.03, 13:47