Sascha: Was ist hier falsch?

Hallo,

kann mir mal jemand verraten, was daran falsch sein soll?

//wenn nur 2 Wörter angeben wurde und Wort 3 keinen
//Wert enthält!
if ((isset($wort1) AND ($wort2)) AND $wort3 == "")
 {// Suche für 2 Wörter mit Operator AND
   if ($operator1 == "UND"){
     $daten = MYSQL_QUERY("SELECT * FROM downloadprogramme
       WHERE (titel LIKE '%$wort1%'
           OR beschreibung LIKE '%$wort1%')
       AND (titel LIKE '%$wort2%'
           OR beschreibung LIKE '%$wort2%')",$verbindung);}

Fehler:

Parse error: parse error, expecting ','' or ')'' in
if ((isset($wort1) AND ($wort2)) AND $wort3 == "") heißt es!

Aber was soll bitteschön daran falsch sein?
Besten Dank vorab.

Mfg.

Sascha

  1. Sorry, der erste Beitrag eben war falsch, ich hab etwas vergessen, hier die Korrektur dazu:

    Hallo,

    kann mir mal jemand verraten, was daran falsch sein soll?

    if ( isset($wort1 == "")) AND $wort2 == "" AND $wort3))
     {if ($wort1)
      {$daten = MYSQL_QUERY( "SELECT * FROM downloadprogramme
           WHERE titel LIKE '%$wort3%'
               OR beschreibung LIKE '%$wort3%'",$verbindung);}
    }

    //wenn nur 2 Wörter angeben wurde und Wort 3 keinen
    //Wert enthält!
    if ((isset($wort1) AND ($wort2)) AND $wort3 == "")
     {// Suche für 2 Wörter mit Operator AND
       if ($operator1 == "UND"){
         $daten = MYSQL_QUERY("SELECT * FROM downloadprogramme
           WHERE (titel LIKE '%$wort1%'
               OR beschreibung LIKE '%$wort1%')
           AND (titel LIKE '%$wort2%'
               OR beschreibung LIKE '%$wort2%')",$verbindung);}

    Fehler:

    Parse error: parse error, expecting ','' or ')'' in
    if ((isset($wort1) AND ($wort2)) AND $wort3 == "") heißt es bzw. in
    if ( isset($wort1 == "")) AND $wort2 == "" AND $wort3))!

    Aber was soll bitteschön daran falsch sein?
    Besten Dank vorab.

    Mfg.

    Sascha

    1. Hallo!

      kann mir mal jemand verraten, was daran falsch sein soll?

      if ( isset($wort1 == "")) AND $wort2 == "" AND $wort3))

      Mit isset($var) fragst Du ab, ob $var 0 oder eine leere Zeichenkette enthält. Also macht isset($wort1 == "") weniger Sinn.

      Zwei Möglichkeiten:

      • if ( isset($wort1)) AND $wort2 == "" AND $wort3))
      • if (($wort1 == "")) AND $wort2 == "" AND $wort3))

      Besten Dank vorab.

      Bitte!

      Viele Gruesse

      Andreas

    2. Grüssi!

      kann mir mal jemand verraten, was daran falsch sein soll?

      if ( isset($wort1 == ""))

      was soll das heissen? Scheint als wärs jetzt doch passiert :-/
      <?m=139618&t=26799> musst aber schnell sein, der verschwindet bald!

      du fragst da ab: if(isset(true)) bzw. if (isset(false))! isset() prüft meines Wissens bereits ob die Variable einen Wert hat, und erwartet somit eine Variable als Wert, und keinen Vergleichs-Ausdruck !! denn der wird zu true/false evaluiert, und dieses dann an isset übergeben.

      if (isset($wort1 == "")) AND $wort2 == "" AND $wort3))

      *g* du prüfst in einer if-Bedingung auf drei verschieden Arten, ob eine Variable einen Wert hat, du solltest dich auf eine konzentrieren ;-)

      //wenn nur 2 Wörter angeben wurde und Wort 3 keinen
      //Wert enthält!
      if ((isset($wort1) AND ($wort2)) AND $wort3 == "")

      Falls Beindung 1 true sein muss und Bedingung 2 auch, und ebenso Bedingung 3 kannst du dir die ganze Klammerl-Maschinerie sparen ;-)

      if (isset($wort1) AND isset($wort2) AND !isset($wort3))

      wobei ich glaube es gibt da sowas wie isempty in PHP ?! ;-)

      lg bernhard

    3. Hallo,

      Ohne mir jetzt wieeder mal die PHP-Doku anzusehen:

      if ( isset($wort1 == "")) AND $wort2 == "" AND $wort3))!
      Aber was soll bitteschön daran falsch sein?

      Hast Du schon mal die Klammern abgezählt? Ich komme auf 2 öffnende und 4 schließende. Das funktioniert in keiner Sprache.
      Mehr Obacht, junger Freund!

      Grüße
        Klaus