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

तैयार विवरण में मापदंडों के लिए कोई डेटा प्रदान नहीं किया गया

आपने नियंत्रण स्ट्रिंग "एसएसएसडी" द्वारा केवल चार तर्कों को बाध्य किया है, लेकिन आपके पास कई पैरामीटर हैं। mysqli के साथ वेरिएबल को बाइंड करते समय, आपको प्रत्येक पैरामीटर के लिए एक कैरेक्टर की आवश्यकता होती है, उदाहरण के लिए:

mysqli_stmt_bind_param($stmt, "sssdsssssssssdd", $firstname, $surname, $address, 
    $gender, $city, $province, $postalcode, $phone, $secondphone, $email, 
    $organization, $inriding, $ethnicity, $senior, $student);

(मैं मान रहा हूं कि वरिष्ठ और छात्र पूर्णांक हैं, और "डी" कोड की आवश्यकता है।)

आपको अपने किसी भी चर को mysqli_real_escape_string() के साथ व्यवहार करने की आवश्यकता नहीं है - यह पैरामीटर का उपयोग करने का बिंदु है। यदि आप एस्केपिंग भी करते हैं, तो आपको डेटाबेस में अपने डेटा में शाब्दिक बैकस्लैश वर्ण मिलेंगे।

और आपको किसी भी मामले में htmlspecialchars() का उपयोग करने की आवश्यकता नहीं है - आप इसका उपयोग HTML पर आउटपुट करते समय करेंगे, डेटाबेस में डालने पर नहीं। आपको & . जैसे शाब्दिक क्रम मिलेंगे डेटाबेस में आपके डेटा में।

अपनी अगली त्रुटि फिर से करें:

यह निम्नलिखित के कारण होता है:

$result = mysqli_query($mysqli,$stmt);

वह फ़ंक्शन दूसरे तर्क को एक स्ट्रिंग, एक नई SQL क्वेरी होने की अपेक्षा करता है। लेकिन आपने वह प्रश्न पहले ही तैयार कर लिया है, इसलिए आपको निम्नलिखित की आवश्यकता है:

$result = mysqli_stmt_execute($stmt);



  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. MySQL रो 30153 GROUP_CONCAT () त्रुटि द्वारा काटा गया था

  3. MySQL में सीक्वेंस कैसे बनाएं

  4. php:5-अंकीय संख्या उत्पन्न करने का सबसे तेज़ तरीका जो पहले से ही MySQL डीबी कॉलम में नहीं है (एक अद्वितीय विशेषता के साथ)

  5. MYSQL बाएँ कई तालिकाओं से COUNTS में शामिल हों