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

MySQL LIKE क्वेरी में PHP स्ट्रिंग का उपयोग कैसे करें?

आपके पास वाक्यविन्यास गलत है; डबल-उद्धृत स्ट्रिंग के अंदर एक अवधि रखने की कोई आवश्यकता नहीं है। इसके बजाय, इसे और अधिक पसंद किया जाना चाहिए

$query = mysql_query("SELECT * FROM table WHERE the_number LIKE '$prefix%'");

आप यह देखने के लिए स्ट्रिंग को प्रिंट करके इसकी पुष्टि कर सकते हैं कि यह पहले मामले के समान है।

बेशक यह अच्छा विचार नहीं है एसक्यूएल इंजेक्शन के खतरे के कारण इस तरह से क्वेरी स्ट्रिंग में वेरिएबल्स को इंजेक्ट करने के लिए। कम से कम आपको mysql_real_escape_string के साथ वैरिएबल की सामग्री से मैन्युअल रूप से बचना चाहिए , जो इसे शायद इस तरह दिखाई देगा:

$sql = sprintf("SELECT * FROM table WHERE the_number LIKE '%s%%'",
               mysql_real_escape_string($prefix));
$query = mysql_query($sql);

ध्यान दें कि sprintf . के पहले तर्क के अंदर परिणाम में एक बार प्रदर्शित होने के लिए प्रतिशत चिह्न को दोगुना करने की आवश्यकता है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySql - पिछली पंक्ति में मूल्य और अगली पंक्ति में मूल्य कैसे प्राप्त करें?

  2. उपयोगकर्ता प्रतिक्रिया प्रणाली के लिए उचित डेटाबेस मॉडल (एक दिलचस्प मामला)

  3. SQL सीमा चुनें लेकिन शामिल नहीं हों

  4. किसी अन्य पृष्ठ पर किसी अन्य वर्ग में mysqli कनेक्शन का उपयोग कैसे करें?

  5. JDBC प्रकार के लिए कोई बोली मानचित्रण नहीं:1111