Tato chyba je způsobena mezerou před ( ve vašem mysql_connect() volání. Nahrazení řetězcem $conn=mysql_connect("$localhost", "$dbusername", "$dbpass"); odstraní tento varovný výstup nástrojem MySQLConverterTool.
Zbývající dvě chyby jsou věci, se kterými byste se měli vypořádat tím, že se skutečně sami podíváte na rozdíl mezi mysql_connect()
a mysqli_connect()
. mysql_connect() první argument $server , lze formátovat jako hostname:port zatímco s mysqli_connect() předali byste pouze hostname na jeho první argument a předejte port jako volitelný pátý parametr. Pomocí mysqli byste také měli zadat databázi v mysqli_connect() volání namísto samostatné funkce analogické k mysql_select_db() .
Navrhuji, abyste v případě potřeby použili nástroj pro převod ke konverzi veškerého zdrojového kódu z mysql na mysqli kromě pro tyto řádky s varováními v nich. Pouze vy víte, jaký formát "$localhost" přichází:pokud může obsahovat informace o portu, musíte informace o portu oddělit. Pravděpodobně byste měli nastavit databázi pro použití v mysqli_connect() namísto použití automatického USE $db konvertoru shim. To je přesně to, co se vám převodník snaží sdělit :-).
Jen pro poznámku bych neřekl:
Výše uvedené naznačuje, že kód PHP generovaný konvertorem sám o sobě hází varování a chyby PHP za běhu (ne že by si konvertor stěžoval na váš původní kód nebo vás informoval, že musíte skutečně provést nějakou ruční konverzi, jak jsem popsal výše) . Proto jsme hledali chyby, jako je kdysi chybějící středník, který jste opravili.