-
आपका कोड SQL इंजेक्शन के प्रति संवेदनशील है। आप वास्तव में तैयार किए गए कथनों का उपयोग करना चाहिए , जिसमें आप अपने वेरिएबल्स को पैरामीटर के रूप में पास करते हैं जिनका मूल्यांकन SQL के लिए नहीं किया जाता है। यदि आप नहीं जानते कि मैं किस बारे में बात कर रहा हूं, या इसे कैसे ठीक किया जाए, तो बॉबी टेबल्स ।
-
कृपया प्राचीन MySQL एक्सटेंशन के साथ नया कोड लिखना बंद करें:इसे अब बनाए नहीं रखा गया है और समुदाय ने बहिष्करण प्रक्रिया . इसके बजाय आपको या तो बेहतर MySQLi का उपयोग करना चाहिए एक्सटेंशन या PDO अमूर्त परत।
-
SQL जॉइन ।
-
आप वास्तव में अपनी स्कीमा को या तो बदलने का प्रयास करना चाहिए:
-
होटल तालिका में एक गंतव्य विदेशी कुंजी (यदि कोई होटल एक से अधिक गंतव्य से संबद्ध नहीं है); या
ALTER TABLE sirev_Hotels ADD COLUMN hoDestination INT, ADD FOREIGN KEY hoDestination REFERENCES sirev_Dests (deDestCode)
-
गंतव्य-होटल संबंधों की एक तालिका (यदि एक होटल को कई गंतव्यों से जोड़ा जा सकता है)।
CREATE TABLE sirev_DestinationHotels ( dehoDestination INT, dehoHotel INT, FOREIGN KEY dehoDestination REFERENCES sirev_Dests (deDestCode), FOREIGN KEY dehoHotel REFERENCES sirev_Hotels (hoCode) )
-
-
यदि यह संभव नहीं है, तो आप MySQL के <का उपयोग कर सकते हैं कोड>FIND_IN_SET() शामिल होने के मानदंड के रूप में कार्य करें:
SELECT hoCode, hoName FROM sirev_Hotels JOIN sirev_Dests ON FIND_IN_SET(sirev_Hotels.hoCode, sirev_Dests.deHotels) WHERE sirev_Dests.deDestName = ?
-
तालिकाओं में शामिल होने और
hoCode
. प्राप्त करने के बाद औरहोनाम
अपने इच्छित गंतव्य के सभी होटलों में से, आप परिणामसेट आउटपुट पर लूप कर सकते हैं, लागू करना
htmlentities()
उपयुक्त के रूप में।