sql >> Database >  >> RDS >> Mysql

Wijzigen van mysql naar mysqli-codefout

Deze fout wordt veroorzaakt door de spatie vóór de ( in uw mysql_connect() telefoongesprek. Vervang het door $conn=mysql_connect("$localhost", "$dbusername", "$dbpass"); verwijdert deze waarschuwingsoutput door MySQLConverterTool.

De overige twee fouten zijn zaken waarmee u moet omgaan door zelf te kijken naar het verschil tussen mysql_connect() en mysqli_connect() . mysql_connect() ’s eerste argument, $server , kan worden opgemaakt als hostname:port terwijl met mysqli_connect() je zou alleen hostname doorgeven naar zijn eerste argument en geef port . door als een optionele vijfde parameter. Mysqli zou u ook de database laten specificeren in de mysqli_connect() aanroepen in plaats van een aparte functie analoog aan mysql_select_db() .

Ik stel voor dat je, indien nodig, de conversietool gebruikt om al je broncode van mysql naar mysqli te converteren behalve voor deze regels met de waarschuwingen erin. Alleen jij weet welk formaat "$localhost" komt binnen:als het poortinformatie kan bevatten, moet u de poortinformatie scheiden. U moet waarschijnlijk de database instellen om te gebruiken in mysqli_connect() in plaats van de automatische USE $db van de converter te gebruiken shim. Dit is precies wat de converter je probeert te vertellen :-).

Gewoon om op te merken, ik zou niet zeggen:

Het bovenstaande suggereert dat de PHP-code die door de converter wordt gegenereerd zelf PHP-waarschuwingen en fouten tijdens runtime geeft (niet dat de converter klaagt over uw originele code of u informeert dat u daadwerkelijk een handmatige conversie moet uitvoeren, zoals ik hierboven heb besproken) . Daarom waren we op zoek naar fouten zoals de eens ontbrekende puntkomma die je hebt gecorrigeerd.



  1. Django set Storage Engine &Standaard Charset

  2. MySQL-prestaties bewaken met ClusterControl

  3. Datetime NOW PHP mysql (+ PDO variant)

  4. SELECTEER veel tot veel tabellen in één query