durch bedingung eine WHERE bedingung erweitern

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • durch bedingung eine WHERE bedingung erweitern

    guude folgende query. ich würd gerne anhand einer bedingung eine WHERE bedingung erweitern

    PHP Code:

    $check 
    mysql_query("SELECT * FROM user WHERE STRCMP(user_name, '".escaper($user)."') = 0 AND user_pass = 
    MD5('"
    .escaper($pass)."') IF(user_level = 'user', AND user_ip REGEXP  '^".MAKE_SUBMASK(GET_IP()).".*','') LIMIT 1"); 
    so geht nicht? gehts überhaupt? und wenn ja wie?. btw user_level ist eine weitere spalte in der tabelle.

    jemand einen vorschlag?

    later

    fra*
    Last edited by frank7l7; 23-02-2006, 09:52.

  • #2
    du bist lange genug dabei, LESEN http://www.php-resource.de/forum/sho...threadid=50454

    Beim nächsten mal, werde ich jeden Thread von dir schliessen, wenn er meine Bildschirmbreite strapaziert

    Comment


    • #3
      sorry hat ich net dran gedacht!

      Comment


      • #4
        das geht bestimmt ...

        du mußt anders verknüpfen, IF liefert dir lediglich 0 oder 1 ... das müßte gehen ...

        stell mal eine wahrheitstabelle auf, dann siehst du bestimmt klarer ...

        edit: wenn du das IF einfach mit nem AND dranknüpfst, im true-bereich das regexp-dingens und im false-fall eine 1 zurückgibst?
        Last edited by derHund; 23-02-2006, 10:21.
        Die Zeit hat ihre Kinder längst gefressen

        Comment


        • #5
          was meinst du den mit wahrheitstabelle? is ja wie in der schule? in der pause

          kannst du das nochmal näher erläutern?

          fra*

          Comment


          • #6
            siehe edit ...

            erstmal brauchste gültige syntax, dann kannste schauen, ob die logik stimmt.

            Code:
            SELECT *
            FROM   user
            WHERE  STRCMP(user_name, 'foo') = 0
            AND    user_pass = MD5('bar')
            AND    IF(user_level = 'user', user_ip REGEXP '^127.*', 1)
            LIMIT  1
            sollte wenigstens syntaktisch passen?

            müßte doch auch mit normalem OR/AND gehen? ohne testmöglichkeit ists .... nicht einfacher.
            Die Zeit hat ihre Kinder längst gefressen

            Comment


            • #7
              guude,

              bingo fkt auf anhieb, ... ahh wieder was gelernt dank dir

              danke

              Comment

              Working...
              X