Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Mudando de mysql para erro de código mysqli


Este erro é causado pelo espaço antes do ( em seu mysql_connect() ligar. Substituindo por $conn=mysql_connect("$localhost", "$dbusername", "$dbpass"); remove esta saída de aviso por MySQLConverterTool.

Os dois erros restantes são coisas com as quais você deve lidar olhando, você mesmo, a diferença entre mysql_connect() e mysqli_connect() . mysql_connect() primeiro argumento de, $server , pode ser formatado como hostname:port enquanto que com mysqli_connect() você passaria apenas hostname para seu primeiro argumento e passe port como um quinto parâmetro opcional. Além disso, o mysqli faria com que você especificasse o banco de dados no mysqli_connect() call em vez de ter uma função separada análoga a mysql_select_db() .

Eu sugiro que, se você precisar, você use a ferramenta conversora para converter todo o seu código fonte de mysql para mysqli exceto para essas linhas com os avisos nelas. Só você sabe qual formato "$localhost" entra:se pode conter informações de porta, você deve separar as informações de porta. Você provavelmente deve definir o banco de dados para usar em mysqli_connect() em vez de usar o USE $db automático do conversor calço. Isso é exatamente o que o conversor está tentando lhe dizer :-).

Apenas para notar, eu não diria:

O acima sugere que o código PHP gerado pelo conversor está, por si só, lançando avisos e erros do PHP em tempo de execução (não que o conversor esteja reclamando do seu código original ou informando que você precisa realmente fazer alguma conversão manual como discuti acima) . É por isso que estávamos procurando por erros como o ponto e vírgula ausente que você corrigiu.