sql >> Database teknologi >  >> RDS >> Mysql

Skift fra mysql til mysqli kodefejl

Denne fejl er forårsaget af mellemrummet før ( i din mysql_connect() opkald. Erstatter den med $conn=mysql_connect("$localhost", "$dbusername", "$dbpass"); fjerner denne advarselsoutput fra MySQLConverterTool.

De resterende to fejl er ting, du bør forholde dig til ved faktisk selv at se på forskellen mellem mysql_connect() og mysqli_connect() . mysql_connect() 's første argument, $server , kan formateres som hostname:port hvorimod med mysqli_connect() du ville kun videregive hostname til dets første argument og send port som en valgfri femte parameter. Mysqli vil også have dig til at angive databasen i mysqli_connect() kalde i stedet for at have en separat funktion analog med mysql_select_db() .

Jeg foreslår, at du, hvis du har brug for det, bruger konverteringsværktøjet til at konvertere al din kildekode fra mysql til mysqli undtagen for disse linjer med advarslerne i dem. Kun du ved hvilket format "$localhost" kommer ind:hvis det kan indeholde portoplysninger, skal du adskille portoplysningerne. Du bør sandsynligvis indstille databasen til brug i mysqli_connect() i stedet for at bruge konverterens automatiske USE $db shim. Dette er præcis, hvad konverteren forsøger at fortælle dig :-).

Bare for at bemærke, jeg vil ikke sige:

Ovenstående antyder, at PHP-koden, der genereres af konverteren, i sig selv afgiver PHP-advarsler og fejl under kørsel (ikke at konverteren klager over din originale kode eller informerer dig om, at du rent faktisk skal foretage en manuel konvertering, som jeg diskuterede ovenfor) . Det er grunden til, at vi ledte efter fejl som det engang manglende semikolon, som du rettede.



  1. android SQLite-database med database på specifik placering muligt?

  2. INDSÆT I .. PÅ DUBLIKAT NØGLOPDATERING for flere elementer

  3. PreparedStatement ignorerer parametre i forespørgslen:java.sql.SQLException:Parameterindeks uden for område (1> antal parametre, som er 0)

  4. varbinær til streng på SQL Server