Ich muss PHP 5 Code in PHP7 konvertieren. Alle MySQL-Anweisungen werden mit einem Skript umgewandelt, die solche Funktionen definiert:mysqli_connect Unterschied zu mysql_connect
function mysql_connect($host, $username, $password){
global $dbconnect;
$dbconnect = mysqli_connect($host, $username, $password);
return $dbconnect;
}
Das Schöne daran ist - es auf php7 funktioniert.
Jetzt habe ich alle Skripte mit mysqli_connect neu geschrieben. Allerdings schlägt die erste Funktion mit mysqli fehl.
mysqli_connect(): (HY000/1044): Access denied for user
Wenn ich wieder nach mysql_connect
schale es funktioniert und nicht wieder bei dem nächsten Mysqli Befehl.
Warum?
EDIT: vollständige Code der connect:
function db_connect()
{
global $db_sql_hostname,$db_sql_database,$db_sql_user,$db_sql_password;
require_once 'db-config.php';
global $db_handle;
$db_handle = mysqli_connect($db_sql_hostname, $db_sql_user, $db_sql_password, $db_sql_database) or die("Konnte nicht zum mySQL-Server verbinden: ".mysqli_error());
mysqli_select_($db_sql_database, $db_handle) or die("Konnte die Datenbank ".$db_sql_database." nicht oeffnen: ".mysqli_error());
return $db_handle;
}
Beachten Sie, dass alles, was mit mysql_ Befehle funktioniert. Die Variablen sind korrekt!
EDIT2: Das ist db-config.php
<?php
$db_sql_hostname = "hostIP";
$db_sql_database = "dbname";
$db_sql_dbuser = "dbuser";
$db_sql_dbpassword = "dbpassowrd";
?>
Was ist die vollständige Fehlermeldung? Sie können den Benutzer/Host verdecken, wenn Sie möchten. – aynber
Haben Sie eine Datenbank angegeben, zu der eine Verbindung hergestellt werden soll? Ich hatte es als der vierte Parameter in mysqli_connect Aufruf. –
Ihr Code ruft 'mysqli_connect' wahrscheinlich nicht die richtigen Parameter ... –