Probleme bei if Abfrage in Perl Script

Diskutiere und helfe bei Probleme bei if Abfrage in Perl Script im Bereich Webmaster Support, Scripts, etc im SysProfile Forum bei einer Lösung; Hallo, ist hier evtl. jemand, der sich ein bisschen mit Perl auskennt und mir helfen könnte? ich habe eine if-Anweisung, die so aussieht: if... Dieses Thema im Forum "Webmaster Support, Scripts, etc" wurde erstellt von Mic, 27. Dezember 2009.

  1. Mic
    Mic Lebende CPU
    Registriert seit:
    13. Dezember 2007
    Beiträge:
    1.349
    Zustimmungen:
    45
    Name:
    Michael
    1. SysProfile:
    48811
    2. SysProfile:
    31071
    105840

    Hallo,

    ist hier evtl. jemand, der sich ein bisschen mit Perl auskennt und mir helfen könnte?

    ich habe eine if-Anweisung, die so aussieht:

    Code:
    if ($Titelselect=="") {
      $Select1 = "titel='$Titelselect'"}
    else { 
      $Select1 = "titel!=''"};
    
      my $sql = qq{select * from filme where $Select1};
      my $sth = $dbh->prepare($sql);
      $sth->execute();
    
    Wie man vll. erkennen kann, soll die Datenbankausgabe nach einem gewissen Wert $Titelselect gefiltert werden. Wenn $Titelselect irgend ein Wert ist, soll die Tabelle nach dem Wert, der in der Spalte "titel" vorkommt, gefiltert werden. Wenn $Titelselect nichts ist also "" ist, soll $Select1 titel!="" sein, damit nichts gefiltert wird.
    Der erste Teil, also dass $Titelselect ein Wert ist funktioniert. Aber wenn Titelselect nichts ist, wird $Select1 gleich titel="" gesetzt und nicht titel!="". Stimmt in der If, Else Syntax etwas nicht, oder wieso funktioniert die If else Anweisung nicht richtig?
     
  2. Racer X
    Racer X Alter Hase
    Registriert seit:
    11. April 2008
    Beiträge:
    2.222
    Zustimmungen:
    78
    1. SysProfile:
    72607
    2. SysProfile:
    14421

    AW: Probleme bei if Abfrage in Perl Script

    Ich verstehe zwar dein Ganzes Programm nicht, auch nicht warum du nicht PHP nimmst.

    Aber in der Zweiten Zeile fehlt ein ;
     
  3. Mic
    Mic Lebende CPU
    Themenstarter
    Registriert seit:
    13. Dezember 2007
    Beiträge:
    1.349
    Zustimmungen:
    45
    Name:
    Michael
    1. SysProfile:
    48811
    2. SysProfile:
    31071
    105840
    AW: Probleme bei if Abfrage in Perl Script

    Also ich benutze Perl, weil ich ein bisschen damit rumprobieren möchte. Das ganze soll nur ne Übung sein.
    Momentan soll das Script eine Tabelle aus einer Datenbank auslesen und diese Tabelle in HTML wieder ausgeben. Unter der Tabelle will ich eine Möglichkeit einbauen diese Tabelle nach gewissen Werten zu Filtern. Unter jede Spalte soll ein Select-Feld kommen, in dem die Werte, die in jeder Spalte stehen aufgelistet sind. Wenn ich einen von ihnen auswähle soll die Tabelle nach dem Wert gefiltert werden. Momentan schicke ich die Auswahl mit einem Submit-Button an dieses Skript.

    Ich habe die Semikolon jetzt so angeordnet wie hier, aber es funktioniert trotzdem nur so, wie bis jetzt auch... :/


    Ich hab an der If-Abfrage mal rumprobiert und komischerweise funktioniert die If-Abfrage so wie es jetzt es, bis auf das, wenn $Titelselect="" ist. Anscheinend wir die If-Anweisung ignoriert und immer das erste Argument ausgeführt?!
    Übrigens meine Perl Version ist die 5.10.0
    Code:
    [Spoiler="Quelltext"]
    use CGI;
    use DBI;
    
    my $cgi = new CGI;
    
    $query=new CGI;
    $Titelselect = $query->param('Titel');
    $Beschreibungselect = $query->param('Beschreibung');
    
        print "Content-type: text/html\n\n";
        print '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">', "\n";
        print "<html>\n";
        print "<head>\n";
        print "<title>Datenbankabrage - mySQL</title>\n";
        print '<script type="text/javascript">', "\n";
        print "function reloadPage() { \n";
        print "location.reload(true); } \n";
        print 'setTimeout("reloadPage()",100000) ;', "\n";
        print "</script>\n";
        print "</head>\n";
        print "<body>\n";
      my $DB_NAME = "pdotest";
      my $DB_DSN = "DBI:mysql:database=$DB_NAME";
      my $DB_USER = "root";
      my $DB_PASSWD = "Michael";
      my $dbh = DBI->connect($DB_DSN, $DB_USER, $DB_PASSWD) or die "Fehler bei Datenbankverbindung: $!";
        print "<table>\n";
        print "  <tr>\n";
        print "    <td>\n";
        print "      <span style='font-size:2em'><u><b>Filme</b></u></span><br><br>\n";
        print "    </td>\n";
        print "  </tr>\n";
        print "  <tr>\n";
        print "    <td>\n";
        print "      <table>\n";
        print "        <tr>\n";
        print "          <td width='30'>\n";
        print "          </td>\n";
        print "          <td>\n";
        print "            <table>\n";
        print "              <tr>\n";
        print "                <td>\n";
        print "                  <span style='font-size:1.3em'><u><b>Inhalt aus der Datenbank:</b></u></span>\n";
        print "                </td>\n";
        print "              </tr>\n";
        print "              <tr>\n";
        print "                <td>\n";
    
    if ($Titelselect=="") {
      $Select1 = "titel='$Titelselect'";}
    else { 
      $Select1 = "titel!=''";}
    
      my $sql = qq{select * from filme where $Select1};
      my $sth = $dbh->prepare($sql);
      $sth->execute();
        print '                  <br><table style="(font-size:12px)" border="0" rules="none">',"\n";
        print "                    <tr>\n";
        print '                      <th align="center" width="34"></th>', "\n";
        print '                      <th align="center" width="60" bgcolor="#C0C0C0"><span style="color:white">Lfd. N.</span></th>', "\n";
        print '                      <th align="center" width="150" bgcolor="#C0C0C0"><span style="color:white">Titelname</span></th>', "\n";
        print '                      <th align="center" width="60" bgcolor="#C0C0C0"><span style="color:white">Teil</span></th>', "\n";
        print '                      <th align="center" width="200" bgcolor="#C0C0C0"><span style="color:white">Beschreibung</span></th>', "\n";
        print '                      <th align="center" width="132" bgcolor="#C0C0C0"><span style="color:white">Dauer in Min</span></th>', "\n";
        print '                      <th align="center" width="132" bgcolor="#C0C0C0"><span style="color:white">Erscheinungsjahr</span></th>', "\n";
        print "                    </tr>\n";
        while(@ergebnis=$sth->fetchrow_array)
        {
         print "                   <tr>\n";   
         print "                     <td align='center'></td>\n";
         print "                     <td align='center' bgcolor='#C0C0C0'><span style='color:white'>$ergebnis[0]</span></td>\n";
         print "                     <td align='center'>$ergebnis[1]</td>\n";
         print "                     <td align='center'>$ergebnis[2]</td>\n";
         print "                     <td align='left'>$ergebnis[3]</td>\n";
         print "                     <td align='center'>$ergebnis[4]</td>\n";
         print "                     <td align='center'>$ergebnis[5]</td>\n";
         print "                   </tr>\n";
        }
         print "                 </table>\n";
      $sth->finish();
        print "                </td>\n";
        print "              </tr>\n";
        print "              <tr>\n";
        print "                <td>\n";         
        print "                  <form name='Select' action='http://localhost/Perl/connectmysqlOO.pl' method='get'><table>\n";
        print "                    <tr>\n";
        print "                      <td width='100'>\n";
        print "                        <br><input type='submit' value='Aktualisieren'>\n";
        print "                      </td>\n";
        print "                      <td width='132'>\n";
        print '                        <br><select name="Titel" size="1">',"\n";
    my $sql = qq{select titel from filme};
    my $sth = $dbh->prepare($sql);
    $sth->execute();
        while(@ergebnis=$sth->fetchrow_array)
        {
        print "                          <option value='$ergebnis[0]'>$ergebnis[0]</option>","\n";
        }
    $sth->finish();
        print '                          <option value="" selected>--------------------------</option>',"\n";
        print '                        </select>',"\n";
        print "                      </td>\n";
        print "                      <td width='132'>\n";
        print '                        <br><select name="Beschreibung" size="1">',"\n";
    my $sql = qq{select teil from filme};
    my $sth = $dbh->prepare($sql);
    $sth->execute();
        while(@ergebnis=$sth->fetchrow_array)
        {
        print "                          <option value='$ergebnis[0]'>$ergebnis[0]</option>","\n";
        }
    $sth->finish();
        print '                          <option value="" selected>--------------------------</option>',"\n";
        print '                        </select>',"\n";
        print "                      </td>\n";
        print "                      <td>$Select1\n";
        print "                      </td>\n";
        print "                      <td>,$Titelselect,\n";
        print "                      </td>\n";
        print "                    </tr>\n";
        print "                  </table></form>\n";
        print "                </td>\n";  
        print "              </tr>\n";
        print "            </table>\n";
        print "          </td>\n";
        print "        </tr>\n";
        print "      </table>\n";
        print "    </td>\n";
        print "  </tr>\n";
        print "</table>\n";
      $dbh->disconnect();
        print "</body>\n";
        print "</html>\n";
    [/Spoiler]
    Komischerweise funktioniert es nicht, wenn man ein Code-Tag im Spoiler-Tag benutzen will aber umgekehrt schon. Könnte man das vll. umändern?
     
  4. Racer X
    Racer X Alter Hase
    Registriert seit:
    11. April 2008
    Beiträge:
    2.222
    Zustimmungen:
    78
    1. SysProfile:
    72607
    2. SysProfile:
    14421
    AW: Probleme bei if Abfrage in Perl Script

    Also soo würd ich die Semikolons (Bei PHP) setzen.

    Und Lösch mal dein Passwort aus deim Geposteten Code. Kommt sicher nicht so gut sein MySql Passwort zu veröffentlichen

    Aber ich verstehe das ganze immer noch nicht ^^
    Also wenn
    $Titelselect Kein inhalt hat dann soll $Select1 = "titel='$Titelselect'"; sein. Ansonsten soll $Select1 = "titel!='''; Sein.


    if ($Titelselect=="Hier muss doch ein Wert oder eine Variable stehen") {
    $Select1 = "titel='$Titelselect'";
    }

    else {
    $Select1 = "titel!='Hier genauso'';
    }

    my $sql = qq{select * from filme where $Select1};
    my $sth = $dbh->prepare($sql);
    $sth->execute();
     
  5. Mic
    Mic Lebende CPU
    Themenstarter
    Registriert seit:
    13. Dezember 2007
    Beiträge:
    1.349
    Zustimmungen:
    45
    Name:
    Michael
    1. SysProfile:
    48811
    2. SysProfile:
    31071
    105840
    AW: Probleme bei if Abfrage in Perl Script

    Das Passwort ist mir egal, weil der PC an dem ich das Ausprobiere eh nicht am Netz hängt. Ich probiere nur mit Perl herum.

    Das Skript soll einfach nur ne Tabelle sortieren und als HTML ausgeben. Später soll noch dazukommen, dass ich auch Zeilen einfügen, ändern und löschen kann. Das Skript hat noch keinen Sinn. Ist nur rein zu Testzwecken.

    Also Wenn ich nach nichts filtern möchte, wähle ich in dem Select-Feld nichts aus -> der Value "" also nichts wird übertragen. Somit soll $Select1 titel!="" sein.
    Wenn ich nachetwas filtern möchte, wähle ich im Select-Feld etwas aus -> ein Wert wird übertragen. Somit soll $Select1 titel="Wert" sein.

    So hab ich die Semikolon doch oben gesetzt.

    Das Problem mit der IF-Abfrage scheint anscheinend zu sein, dass immer nur das erste Argument ausgeführt wird , egal was für Titelselect raus kommt
     
  6. Racer X
    Racer X Alter Hase
    Registriert seit:
    11. April 2008
    Beiträge:
    2.222
    Zustimmungen:
    78
    1. SysProfile:
    72607
    2. SysProfile:
    14421
    AW: Probleme bei if Abfrage in Perl Script

    Wie soll er denn eine Verbindung zur datenbank aufbauen wen der Computer keine Internetverbindung hat ?

    Eigentlich hab ich keine Perl Kenntnisse. Also von daher denke ich, dass ich nicht mehr weiterhelfen kann.
     
  7. McAtze
    McAtze Alter Hase
    Registriert seit:
    1. Januar 2009
    Beiträge:
    2.042
    Zustimmungen:
    70
    AW: Probleme bei if Abfrage in Perl Script

    bestimmt mit einer lokalen MySQL DB .. ;)
     
  8. Mic
    Mic Lebende CPU
    Themenstarter
    Registriert seit:
    13. Dezember 2007
    Beiträge:
    1.349
    Zustimmungen:
    45
    Name:
    Michael
    1. SysProfile:
    48811
    2. SysProfile:
    31071
    105840

    AW: Probleme bei if Abfrage in Perl Script

    Richtig. Ich benutze dafür Xampp
     
Thema:

Probleme bei if Abfrage in Perl Script

Die Seite wird geladen...

Probleme bei if Abfrage in Perl Script - Similar Threads - Probleme Abfrage Perl

Forum Datum

Disney+: Weiterhin Format-Probleme wegen fehlender Lizenzen

Disney+: Weiterhin Format-Probleme wegen fehlender Lizenzen: Disney+: Weiterhin Format-Probleme wegen fehlender Lizenzen Unsere Leser berichteten uns Ende letzten Jahres davon, dass bei Disney+ Dolby Vision flöten ging. Stellte sich heraus:...
User-Neuigkeiten Mittwoch um 17:03 Uhr

Mozilla Firefox 151.0.2: Kleines Wartungsupdate behebt Split View und Cache Probleme

Mozilla Firefox 151.0.2: Kleines Wartungsupdate behebt Split View und Cache Probleme: Mozilla Firefox 151.0.2: Kleines Wartungsupdate behebt Split View und Cache Probleme Ein Blick in das Changelog zeigt, dass es sich um eine reine Fehlerbehebung handelt, bei der vor allem...
User-Neuigkeiten 26. Mai 2026

Vodafone kämpft weiterhin mit Problemen beim Mail-Abruf via IMAP

Vodafone kämpft weiterhin mit Problemen beim Mail-Abruf via IMAP: Vodafone kämpft weiterhin mit Problemen beim Mail-Abruf via IMAP Seit Anfang der letzten Woche zickt der Abruf über das IMAP-Protokoll bei etlichen Nutzern rum. Die Server sind schlicht...
User-Neuigkeiten 14. Mai 2026

Microsoft Outlook mit Problemen beim Login

Microsoft Outlook mit Problemen beim Login: Microsoft Outlook mit Problemen beim Login Aktuell häufen sich die Meldungen über Störungen bei Microsoft Outlook. Seit kurz vor 10:00 Uhr verzeichnen Störungsportale einen sprunghaften Anstieg...
User-Neuigkeiten 27. April 2026

Paramount+ zickt rum: Nutzer melden Probleme beim Streaming

Paramount+ zickt rum: Nutzer melden Probleme beim Streaming: Paramount+ zickt rum: Nutzer melden Probleme beim Streaming Aktuellen Berichten zufolge hakt es beim Streaming-Dienst gewaltig. Seit dem Abend des 26. Paramount+ zickt rum: Nutzer melden...
User-Neuigkeiten 26. April 2026

Ikea Dirigera: Update behebt Thread-Probleme

Ikea Dirigera: Update behebt Thread-Probleme: Ikea Dirigera: Update behebt Thread-Probleme Die Aktualisierung kümmert sich um die Stabilität im Smart Home und merzt einen Fehler bei der IPv6-Routung innerhalb von Thread-Netzwerken aus. Das...
User-Neuigkeiten 24. April 2026

Hue Bridge Pro: Update gegen Matter-Probleme

Hue Bridge Pro: Update gegen Matter-Probleme: Hue Bridge Pro: Update gegen Matter-Probleme Die neue Softwareversion hört auf 1976154040, bzw. 2071294010 und wird ab jetzt schrittweise ausgerollt. Hue Bridge Pro: Update gegen Matter-Probleme
User-Neuigkeiten 9. April 2026

WireGuard: DerEntwickler hat auch Probleme mit seinem Microsoft-Konto

WireGuard: DerEntwickler hat auch Probleme mit seinem Microsoft-Konto: WireGuard: DerEntwickler hat auch Probleme mit seinem Microsoft-Konto Dessen Microsoft-Konto wurde gesperrt, was Folgen für den Windows-Client der Verschlüsselungs-Software hat. Betrifft aber...
User-Neuigkeiten 9. April 2026

Philips Hue Bridge Pro: Probleme mit Apple Home sollen im April behoben werden

Philips Hue Bridge Pro: Probleme mit Apple Home sollen im April behoben werden: Philips Hue Bridge Pro: Probleme mit Apple Home sollen im April behoben werden Es kommt wohl vereinzelt vor, dass die gekoppelten Geräte den Dienst verweigern und nicht mehr reagieren. Nach einer...
User-Neuigkeiten 26. März 2026

IKEA: Matter-Hardware soll noch weiter Probleme bereiten

IKEA: Matter-Hardware soll noch weiter Probleme bereiten: IKEA: Matter-Hardware soll noch weiter Probleme bereiten Genau hier wollte Matter ansetzen: einmal einbinden, überall nutzen – egal ob Apple Home, Google Home oder irgendein anderer Hub. Doch wer...
User-Neuigkeiten 18. März 2026

Windows 11: Außerplanmäßiges Hotpatch-Update fixt Bluetooth-Probleme

Windows 11: Außerplanmäßiges Hotpatch-Update fixt Bluetooth-Probleme: Windows 11: Außerplanmäßiges Hotpatch-Update fixt Bluetooth-Probleme Microsoft hat ein außerplanmäßiges Update veröffentlicht, das sich einem spezifischen Problem mit Bluetooth-Geräten widmet.. ....
User-Neuigkeiten 17. März 2026

Digg schon wieder zu: Stellenabbau und Bot-Probleme

Digg schon wieder zu: Stellenabbau und Bot-Probleme: Digg schon wieder zu: Stellenabbau und Bot-Probleme Man musste feststellen, dass der Aufbau einer Plattform im Jahr 2026 andere Hürden mit sich bringt als früher. Das Resultat ist ein harter...
User-Neuigkeiten 14. März 2026

YouTube: Nutzer sind genervt von Problemen mit Werbe-Overlays

YouTube: Nutzer sind genervt von Problemen mit Werbe-Overlays: YouTube: Nutzer sind genervt von Problemen mit Werbe-Overlays Parallel geht man immer schärfer gegen Werbeblocker vor. Inzwischen sind viele Nutzer von einem neuen Problem mit den Werbe-Overlays...
User-Neuigkeiten 4. März 2026
Probleme bei if Abfrage in Perl Script solved

Andere User suchten nach Lösung und weiteren Infos nach:

  1. problem anweisung bei perl

    ,
  2. if abfrage perl

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden