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

mysql_fetch_assoc () त्रुटि जब mysql फ़ील्ड में डेटा बदल जाता है

आप अपनी क्वेरी में कोई त्रुटि जाँच नहीं कर रहे हैं, इसलिए इसमें कोई आश्चर्य की बात नहीं है कि यदि क्वेरी विफल हो जाती है तो यह टूट जाती है। उचित त्रुटि जाँच कैसे जोड़ें मैनुअल mysql_query() में उल्लिखित है या इसमें संदर्भ प्रश्न।

उदाहरण:

$result = mysql_query($SQL);

if (!$result)
 { trigger_error("mySQL error: ".mysql_error());
   die(); }

आपकी क्वेरी टूट रही है क्योंकि आप इनपुट को उद्धरणों में लपेट नहीं रहे हैं। आप केवल पूर्णांकों के लिए* उद्धरणों से बच सकते हैं (जो 62ac1175 नहीं है)। कोशिश करें

$SQL = "SELECT * FROM tb_employees WHERE URL_ID = '$URL_ID'";

साथ ही, आपके द्वारा दिखाया गया कोड SQL इंजेक्शन के लिए असुरक्षित है। . अपने पुस्तकालय की उचित स्वच्छता पद्धति का उपयोग करें (जैसे mysql_real_escape_string() क्लासिक mysql लाइब्रेरी के लिए जिसका आप उपयोग कर रहे हैं), या PDO और तैयार स्टेटमेंट पर स्विच करें।

आपके कोड में, यह ऐसा दिखेगा:

. के बजाय
$URL_ID = $_GET["a"];

करो

$URL_ID = mysql_real_escape_string($_GET["a"]);

<उप>* हालांकि, यदि आप उद्धरणों से बचते हैं, mysql_real_escape_string() काम नहीं करेगा और आपको मैन्युअल रूप से जांचना होगा कि क्या पैरामीटर वास्तव में एक पूर्णांक है।




  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 में SOUNDS LIKE ऑपरेटर कैसे काम करता है

  2. सीधे iPhone से MySQL डेटाबेस तक पहुंचना

  3. कमांड लाइन के माध्यम से mysql में एक csv आयात करना

  4. BigInteger को Mysql में स्टोर करें

  5. Mysql 2 तालिका में शामिल हों और दिनांक सीमा के बीच अधिकतम और न्यूनतम मान चुनें