Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

PHP/MySQL के साथ फ़िल्टरिंग खोजें

अन्य सभी पोस्ट की तरह आपको सभी शर्तों को AND लाइक के साथ जोड़ना होगा। यह अब तक का सबसे साफ जवाब है। याद रखें कि वास्तव में अपने तारों से बचना चाहिए, हालांकि पुराने mysql के बजाय mysqli OOP तरीके का उपयोग करें। बस एक सुझाव।

यहाँ एक सामान्य क्वेरी का उदाहरण दिया गया है।

सही तरीका:

SELECT * FROM donar WHERE name='dxenaretionx' AND sex='M';

जिस तरह से आप इसे कर रहे हैं

SELECT * FROM donar WHERE name='dxenaretionx' sex='M';

कोड:

function search_donar($_POST) {
    $by_name = $_POST['by_name'];
    $by_sex = $_POST['by_sex'];
    $by_group = $_POST['by_group'];
    $by_level = $_POST['by_level'];

    //Do real escaping here

    $query = "SELECT * FROM donar";
    $conditions = array();

    if(! empty($by_name)) {
      $conditions[] = "name='$by_name'";
    }
    if(! empty($by_sex)) {
      $conditions[] = "sex='$by_sex'";
    }
    if(! empty($by_group)) {
      $conditions[] = "blood_group='$by_group'";
    }
    if(! empty($by_level)) {
      $conditions[] = "e_level='$by_level'";
    }

    $sql = $query;
    if (count($conditions) > 0) {
      $sql .= " WHERE " . implode(' AND ', $conditions);
    }

    $result = mysql_query($sql);

    return $result;
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. वेब अनुप्रयोगों में सुरक्षा कमजोरियों के लिए परीक्षण:सर्वोत्तम अभ्यास?

  2. औसत संख्यात्मक मान के लिए सबक्वेरी हटा दें

  3. mysql फुलटेक्स्ट मैच, 0 परिणाम लौटाने के खिलाफ

  4. MySQL में एकल कॉलम में डुप्लिकेट अल्पविराम से अलग किए गए मान को कैसे हटाएं

  5. mysql में किसी तालिका से चुनिंदा गतिशील फ़ील्ड कैसे बनाएं?