Hello
j'ai la requête suivante

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
<?php
$ville_depart = htmlentities(stripslashes(trim($_POST['ville_depart'])), ENT_QUOTES);
 
$query_depart = "SELECT CONCAT(code, zone_abc) AS zone_depart FROM villes WHERE nom=\"$ville_depart\" LIMIT 1;";
$result_depart = mysqli_query($link, $query_depart);
if (!$result_depart) die(mysqli_error($link).'<br />'.$query_depart);
 
if (mysqli_num_rows($result_depart) !== 1) {
$error[] = "La ville de départ n'a pas été trouvée, veuillez choisir une ville dans la liste";
$focus[] = 'ville_depart';
}
?>

Code : Sélectionner tout - Visualiser dans une fenêtre à part
$_POST['ville_depart'] = "L'HAY LES ROSES"; // ville contenant une apostrophe
je ne comprends pas pourquoi le script me retourne l'erreur "la ville de départ..." !

Poutant, le résultat de la requete :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
<?php
echo $query_depart = "SELECT CONCAT(code, zone_abc) AS zone_depart FROM villes WHERE nom=\"$ville_depart\" LIMIT 1;";
?>
qui me donne ça :
SELECT CONCAT(code, zone_abc) AS zone_depart FROM villes WHERE nom="L'HAY LES ROSES" LIMIT 1;
...et quand je teste directement dans phpmyadmin, il me renvoie bien un résultat !!

je précise que ma colonne nom est de type char(40) not null

je ne vois pas où j'ai faux, là...

j'oubliais, dans ma BDD, le nom enregistré est bien sûr L'HAY LES ROSES (et non L\'HAY LES ROSES)