Mise à jour avec mysql_real_escape_string
Bonjour à tous,
Je me replonge dans MySQL et je reprend de l'ancien code qui maintenant est obsolete :(
Pour commencer, j'utilisais ce code pour me connecter à ma base de donnée
Code:
1 2 3 4 5 6 7 8 9 10
|
<?php
include($root.'sql/db_config.inc.php');
$connect = mysql_connect($hote, $user, $password) or die('Erreur de connexion '.mysql_error());
if(!is_resource($connect))echo 'Echec de la connexion';
else mysql_select_db($base,$connect) or die('Erreur de selection '.mysql_error());
mysql_set_charset( 'utf8' );
?> |
il se trouve que la fonction mysql_connect est obsolete, qui il est vivement conseillé de la changer.
Alors j'ai remplacer mon code de la manière suivante
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
<?php
include('sql/db_config.inc.php');
$connect = mysqli_connect($hote,$user,$password,$base) or die('Erreur de connexion '.mysql_error());
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
?> |
ce qui est embetant c'est que ca implique d'autre problème.
Par exemple, ej siavais mes entrée de la sorte:
Code:
1 2 3
|
mysql_real_escape_string("", $connect),
mysql_real_escape_string(htmlentities($app_id,ENT_COMPAT,'UTF-8'), $connect), |
la variable connect vient de la connection.
Si je comprends bien le message d'erreur
Citation:
Warning: mysql_real_escape_string() expects parameter 2 to be resource, object given in /home/clients/ee3f943e731fc0a12d3400116692186f/web/measures/measures.php on line 149
Mon deuxième paramètre n'est plus du bon type.
Mais alors comment, je peux remplacer ma function
mysql_real_escape_string()
Voilà mon code
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
$query = sprintf("INSERT INTO tb_sensors (
sensor_id,
app_id,
dev_id,
hardware_serial
)VALUES ('%s',%s','%s','%s')",
mysql_real_escape_string("", $connect),
mysql_real_escape_string(htmlentities($app_id,ENT_COMPAT,'UTF-8'), $connect),
mysql_real_escape_string(htmlentities($dev_id,ENT_COMPAT,'UTF-8'), $connect),
mysql_real_escape_string(htmlentities($hardware_serial,ENT_COMPAT,'UTF-8'), $connect) //modified by
);
$sensor_id = mysql_insert_id();
mysql_query($query,$connect) or die('Erreur SQL !'.$connect.'<br>'.mysql_error()); |
Merci pour vos lumières