Why doesnt this mySql query work?

Discussion in 'PHP' started by misterdh, Aug 27, 2010.

  1. #1
    Hi,

    I cant get this MySql query to work:
    $query = "SELECT * FROM `engines` WHERE name LIKE '$keyword%' AND languages='au' OR language='en' ORDER BY hits DESC ";
    PHP:
    It is the AND languages='au' OR language='en' part which I cant get to work I think.. I want it to select it IF language is either 'en' OR 'au'...

    Thanks in advnace :)
     
    misterdh, Aug 27, 2010 IP
  2. ThePHPMaster

    ThePHPMaster Well-Known Member

    Messages:
    737
    Likes Received:
    52
    Best Answers:
    33
    Trophy Points:
    150
    #2
    Enclose the two in parenthesis.

    
    $query = "SELECT * FROM `engines` WHERE name LIKE '$keyword%' AND (languages='au' OR language='en') ORDER BY hits DESC ";
    
    PHP:
     
    ThePHPMaster, Aug 27, 2010 IP
  3. misterdh

    misterdh Peon

    Messages:
    90
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #3
    Doesnt work :/
     
    misterdh, Aug 27, 2010 IP
  4. georgiivanov

    georgiivanov Member

    Messages:
    62
    Likes Received:
    3
    Best Answers:
    0
    Trophy Points:
    25
    #4
    I noticed some king of typo:
    Which one is right?
     
    georgiivanov, Aug 28, 2010 IP
  5. HuggyEssex

    HuggyEssex Member

    Messages:
    297
    Likes Received:
    4
    Best Answers:
    2
    Trophy Points:
    45
    #5
    Do you place mysql_query("SQL here") or die (mysql_error()) when your developing?

    Glen
     
    HuggyEssex, Aug 28, 2010 IP
  6. misterdh

    misterdh Peon

    Messages:
    90
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #6
    Thanks alot! I didnt notice that :)
     
    misterdh, Aug 28, 2010 IP