php - Failed insert into database -


मुझे इस कोड के साथ समस्या है मेरे पास यह html फ़ॉर्म है

  & lt; form method = "post" action = "invio_db1.php" & gt; नोम & lt; इनपुट प्रकार = "टेक्स्ट" नाम = "नोम" & gt; & Lt; br & gt; & lt; br & gt; कॉग्नेम & lt; इनपुट नाम = "कॉग्निम" प्रकार = "टेक्स्ट" & gt; & Lt; br & gt; & lt; br & gt; & Lt; इनपुट मूल्य = "Invia" प्रकार = "सबमिट करें" & gt; & Lt; इनपुट मूल्य = "रीसेट" प्रकार = "रीसेट" & gt; & Lt; / प्रपत्र & gt;   

और यह php कोड

  & lt;? Php $ host = "127.0.0.1"; $ निक = "रूट"; $ Pw = ""; $ Db_name = "एशोकियाज़िडबे"; $ Db = mysqli_connect ($ मेजबान, $ निक, $ pw) या मर ("एरर नेला कॉन्सनेसियॉन"); Mysqli_select_db ($ db, $ db_name) या मर (mysqli_error ()); यदि (! खाली ($ _ POST ["नोम"])) $ नोम = $ _POST ["नोम"]; और $ नोम = नल; यदि (! खाली ($ _ POST ['कॉग्नेम']) $ cognome = $ _POST ['कॉग्नेम']; और $ cognome = null; $ Query = "व्यक्तियों_अनुक्रमणिकाएं (नोम, कॉग्नेम) मूल्यों में शामिल करें ('$ नोम', '$ कॉग्नेम')"; Mysqli_query ($ db, $ क्वेरी) या मर (mysqli_error ()); ? & Gt;   

मुझे लगता है कि इसमें कोई त्रुटि नहीं है, लेकिन चलने के बाद, डेटाबेस में, सभी फ़ील्ड शून्य हैं! मैं समस्या का पता लगा और ठीक नहीं कर सकता।

अग्रिम धन्यवाद।

शायद आपको अपनी PHP स्क्रिप्ट में शर्त जोड़नी चाहिए और डेटा को डाटाबेस में डालने के लिए ही जब आप फॉर्म भेजते हैं।

  यदि (! खाली ($ _ POST [" नोम "])) $ नोम = $ _POST [" नोम "]; और $ नोम = नल; यदि (! खाली ($ _ POST ['कॉग्नेम']) $ cognome = $ _POST ['कॉग्नेम']; और $ cognome = null; $ Query = "व्यक्तियों_अनुक्रमणिकाएं (नोम, कॉग्नेम) मूल्यों में शामिल करें ('$ नोम', '$ कॉग्नेम')"; Mysqli_query ($ db, $ क्वेरी) या मर (mysqli_error ());   

आपको होना चाहिए:

  यदि (isset ($ _ POST ['nome'])) {if (! (खाली ($ _ POST ["nome" ])) $ नोम = $ _POST ["नोम"]; और $ नोम = नल; यदि (! खाली ($ _ POST ['कॉग्नेम']) $ cognome = $ _POST ['कॉग्नेम']; और $ cognome = null; $ Query = "व्यक्तियों_अनुक्रमणिकाएं (नोम, कॉग्नेम) मूल्यों में शामिल करें ('$ नोम', '$ कॉग्नेम')"; Mysqli_query ($ db, $ क्वेरी) या मर (mysqli_error ()); }   

अब आपको फॉर्म भरने और डाटाबेस को डेटा सम्मिलित करने के लिए सबमिट बटन को दबाए जाने की आवश्यकता है।

हालांकि आपको कम से कम mysqli_real_escape_string का उपयोग करना चाहिए लेकिन बेहतर विकल्प होगा फिलहाल आपका कोड एसक्यूएल इंजेक्शन के लिए कमजोर है।

Comments

Popular posts from this blog

php - how to change mysql_result($res, 0, "url"); to mysqli -

c# - How to clone a HttpRequestMessage when the original request has Content? -

split - php explode string with Uppercase if lowercase letter exists before it without space -