मैं एसक्यूएल में "समर्थक" नहीं हूं।
मेरे पास निम्न परिदृश्य है:
तालिका: favcolor
उपयोगकर्ता लाल | नीला | पीला | ग्रीन | ब्लैक क्लाउस | 0 | 1 | 1 | 0 | 0 जेसी | 1 | 0 | 1 | 0 | 1 एंडी | 1 | 1 | 0 | 0 | एलेक्स | 0 | 0 | 0 | 1 | 1 डेनिस | 1 | 1 | 0 | 0 | 1
एचटीएमएल कोड
<पूर्व> & lt; form method = "post" action = "./ usercolor.php" & gt; & Lt; इनपुट प्रकार = "चेकबॉक्स" id = "colorred" name = "colorred" value = "1" / & gt; लाल & lt; / td & gt; & Lt; इनपुट प्रकार = "चेकबॉक्स" आईडी = "कलरब्यू" नाम = "कलरब्यू" मान = "1" / & gt; नीला & lt; / td & gt; & Lt; इनपुट प्रकार = "चेकबॉक्स" id = "coloryellow" name = "coloryellow" मान = "1" / & gt; पीला & lt; / td & gt; & Lt; इनपुट प्रकार = "चेकबॉक्स" id = "colorgreen" name = "colorgreen" मान = "1" / & gt; हरा & lt; / td & gt; & Lt; इनपुट प्रकार = "चेकबॉक्स" आईडी = "रंगीन ब्लैक" नाम = "रंगीन ब्लैक" मान = "1" / & gt; काला & lt; / td & gt; & Lt; इनपुट प्रकार = "सबमिट करें" value = "SEARCH" / & gt; & Lt; / प्रपत्र & gt;
PHP / SQL (MySQL 5.6 का उपयोग कर):
$ colorred = $ _POST ["रंगीन"]; $ कलरब्यू = $ _POST ["कलरब्यू"]; $ Colorgreen = $ _POST ["कोलोर्गरीन"]; $ Coloryye = $ _POST ["coloryellow"]; $ रंग ब्लैक = $ _POST ["रंग ब्लैक"]; चयन करें * से favcolor WHERE लाल = ''। $ Colorred। '' और नीले = ''। $ Colorblue। '' और हरे रंग की ''। $ Colorgreen। '' और पीले = ''। $ Coloryellow। '' और काला = ''। $ Colorblack। ''
अब मेरी समस्या के लिए: उदाहरण के लिए मैं जानना चाहता हूं कि किस उपयोगकर्ता को पीले रंग का रंग पसंद है फिर मैं आईडी "coloryellow" पर चेकबॉक्स की जाँच करें और "SEARCH" दबाएं। लेकिन मुझे कोई परिणाम नहीं मिला क्योंकि एसक्यूएल स्टेटमेंट में "एंड" ऑपरेटर गलत है ... किस ऑपरेटर का मुझे उपयोग करना है, मेरे एसक्यूएल स्टेटमेंट ने मुझे दो परिणाम दिए?
<पूर्व>
$ whereArr = Array (); यदि (isset ($ _ POST ["रंगीन"]) और amp; $ _POST ["रंगीन"] == 1) $ जहां $ [] = "लाल = 1"; If (isset ($ _ POST ["colorblue"]) & amp; amp; $ _POST ["colorblue"] == 1) $ whereArr [] = "blue = 1"; अगर (isset ($ _ POST ["colorgreen"]) और amp; $ _POST ["colorgreen"] == 1) $ whereArr [] = "green = 1"; If (isset ($ _ POST ["coloryellow"]) और amp; $ _POST ["coloryellow"] == 1) $ whereArr [] = "yellow = 1"; अगर (isset ($ _ POST ["colorblack"]) और amp; $ _POST ["रंगीन ब्लैक"] == 1) $ जहां $ [] = "काला = 1"; $ SqlStr = "SELECT * Favcolor WHERE से" Implode ("AND", $ whereArr);
और फिर आप क्वेरी चलाते हैं
No comments:
Post a Comment