Bonjour,
suite à la mise à jour de mon serveur en php 7.2, je dois passer en revue mes scripts pour les adapter au php 7.
J'ai pu remettre en place la connexion et ainsi lister des éléments de ma base de données.
Pour l'édition d'un élément, je rencontre des problèmes dans une fonction.
en bref, j'ai une fonction connexion, une page edit.php qui appel une fonction GET_PRET():
voici les codes :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
Connexion BD
 
function connexion_base()
{
    $db_database = "*****************";
    $db_host = "**********************";
    $db_user = "*********************";
    $db_user_password = "*******************";
 
	// - AVANT - $server_link = mysql_connect ($db_host,$db_user,$db_user_password) or die (mysql_error());
	// - AVANT - $db_attempt = mysql_select_db ($db_database, $server_link) or die (mysql_error());
 
	// modification pour php 7
	$server_link= mysqli_connect($db_host,$db_user,$db_user_password,$db_database);
 
	#echo "Connected to database $database OK<br><br>\n";
	return $server_link;
 
}
$server_link=connexion_base();
Dans scripts :

dans un fichier sql.inc :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function get_pret($id_pret)
{
	global $server_link;
	$sql = "select	id_pret,
			id_jeu,
			id_adherent,
			date_pret,
			date_retour,
			rendu,
			reglera
		from prets where id_pret=".mysql_real_escape_string($id_pret,$server_link);
	$req = mysql_query($sql,$server_link);
	if(sql_count($req))
		return mysql_fetch_array($req);
	else
		return 0;
}
Dans un fichier pour editer un prêt, appel de la fonction GET_PRET() :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
	echo "<center>";
	if (isset($_GET['id_pret']))
	{
		$pret = get_pret($_GET['id_pret']);
		echo "<h3>PRET n°".$pret['id_pret']."</h3>";
	}
	else 
	#Création à vide
	{
		$pret = array('id_jeu'=>'',
			'id_adherent'=>'',
			'date_pret'=>date("Y-m-d"),
			'date_retour'=>date("Y-m-d",mktime(0, 0, 0, date("m")+1, date("d"), date("Y"))),
			'rendu'=>'',
			'reglera'=>'');
		echo "<h3>NOUVEAU PRET</h3>";
	}
?>
Je pense que le problème vient de mysql_real_escape_string dans la fonction GET_PRET(), je ne parviens pas adapter cette fonction pour php 7.
Merci pour vos lumières.
Bien à vous
Nicolas