Connexion SQL pour php7
Pour faire la transition de votre site web vers php7 vous devez vous assuré de ne plus utilisé de commande qui n'existe plus avec php7.
Pour votre connexion SQL la commande : mysql_connect() n'existe plus et vous devez la remplacé par mysqli_connect().
Ceci implique plusieurs changements pour toutes vos requête SQL.
Voici comment faire la transition pour que tout fonctionne.
Modification pour la connexion
PHP 5:
$connexion = mysql_connect($host,$user,$psw) or die("Connexion impossible, a zut! ");
mysql_select_db ($db) or die ('La base de donne '.$db.' est pas accessible');
PHP 7 :
$connexion = mysqli_connect($host,$user,$psw,$db) or die("Connexion impossible, a zut! ");
$_SESSION['connexion'] = $connexion; // sauvegarder la connexion dans une variable de session on a besoin
Modification pour les requêtes SQL
PHP 5 :
$rep_page = mysqli_query($sql_page) or die ("Erreur sql
$sql_page
".mysql_error()."
(".__FILE__.")");
$info_page = mysql_fetch_array($rep_page);
PHP 7 :
$rep_page = mysqli_query($_SESSION['connexion'],$sql_page) or die ("Erreur sql_page :
$sql_page
".mysqli_error($_SESSION['connexion'])."
(".__FILE__.")");
$info_page = mysqli_fetch_array($rep_page);
Si vous utiliser la fonction : mysql_num_rows
PHP 5 :
$id_dernier = mysql_insert_id();
PHP 7 :
$id_dernier = mysqli_insert_id($_SESSION['connexion']);
Afficher erreur SQL
PHP 5: mysql_error()
PHP 7: mysqli_error($_SESSION['connexion'])
num_rows
PHP5 : $nb_rep = mysql_num_rows($query);
PHP7 : $nb_rep = mysqli_num_rows($query);
mysql_free_result -> mysqli_free_result
PHP5 -> $courriel = mysql_real_escape_string($courriel);
PHP7 -> $courriel = mysqli_real_escape_string($_SESSION['connexion'],$courriel);
Avec une variable SESSION pour enregistrer votre identifiant de connexion cela permet de l'utilisé dans toutes les fonction que vous voulez sans avoir besoin de le passer en paramêtre.
On peut faire la transition facilement avec l'option Replace All de votre outil de programmation.