यह त्रुटि (
. से पहले के स्थान के कारण होती है आपके mysql_connect()
. में बुलाना। इसे $conn=mysql_connect("$localhost", "$dbusername", "$dbpass");
से बदलना MySQLConverterTool द्वारा इस चेतावनी आउटपुट को हटा देता है।
शेष दो त्रुटियां ऐसी चीजें हैं जिनसे आपको वास्तव में स्वयं को mysql_connect()
और mysqli_connect()
. mysql_connect()
पहला तर्क, $server
, को hostname:port
. की तरह फ़ॉर्मेट किया जा सकता है जबकि mysqli_connect()
. के साथ आप केवल hostname
pass पास करेंगे इसके पहले तर्क के लिए और port
. पास करें वैकल्पिक पांचवें पैरामीटर के रूप में। साथ ही, mysqli आपको mysqli_connect()
. में डेटाबेस निर्दिष्ट करने के लिए कहेगा mysql_select_db()
. के अनुरूप एक अलग फ़ंक्शन रखने के बजाय कॉल करें ।
मेरा सुझाव है कि, यदि आपको आवश्यकता हो, तो आप अपने सभी स्रोत कोड को mysql से mysqli को छोड़कर में बदलने के लिए कनवर्टर टूल का उपयोग करें। इन पंक्तियों के लिए उनमें चेतावनियाँ हैं। केवल आप ही जानते हैं कि कौन सा प्रारूप "$localhost"
इसमें आता है:यदि इसमें पोर्ट जानकारी हो सकती है, तो आपको पोर्ट जानकारी को अलग करना होगा। आपको संभवतः डेटाबेस को mysqli_connect()
. में उपयोग करने के लिए सेट करना चाहिए कनवर्टर के स्वचालित USE $db
. का उपयोग करने के बजाय शिम यह वही है जो कनवर्टर आपको बताने की कोशिश कर रहा है :-)।
बस ध्यान दें, मैं यह नहीं कहूंगा:
उपरोक्त से पता चलता है कि कनवर्टर द्वारा उत्पन्न PHP कोड, स्वयं, रनटाइम पर PHP चेतावनियों और त्रुटियों को फेंक रहा है (ऐसा नहीं है कि कनवर्टर आपके मूल कोड के बारे में शिकायत कर रहा है या आपको सूचित कर रहा है कि आपको वास्तव में कुछ मैन्युअल रूपांतरण करने की आवश्यकता है जैसा कि मैंने ऊपर चर्चा की है) . इसलिए हम त्रुटियों की तलाश कर रहे थे जैसे एक बार गायब हो चुके अर्धविराम जिसे आपने ठीक किया था।