Bonjour,
Je récupère des infos CSV que je stocke dans spip_gis en php dans mon plugin.
$liId_gis = sql_insertq(
'spip_gis', [
'titre' => $lsAffichageLieu,
'lat' => $lsLatitude,
'lon' => $lsLongitude,
'pays' => $lsPays,
'region' => $lsRegion,
'ville' => $lsVilles
]);
Mon site est tout en utf8mb3_general_ci, installé en MyISAM, converti en InnoDB.
Ensuite sur un autre création, je vérifie d’abord si le point existe :
$laLieux = sql_allfetsel(
'id_gis, titre, lat, lon',
'spip_gis',
array( "titre = '$lsAffichageLieu'", "lat = '$lsLatitude'", "lon = '$lsLongitude'")); //
Mais quand j’ai des caractères accentués, il ne retrouve pas le point.
Le lieu recherché est « Saint-Jean-d’Angély » (notez le é à la place de ‹ é ›)
Ce que je récupère en base si je ne donne que lat et lon comme critère est aussi « Saint-Jean-d’Angély ».
Ce que je lis par Adminer est « Saint-Jean-d’Angély ».
Mais la requête sql_allfetsel considère que les 2 chaînes sont différentes et ne me renvoie pas le point.
Que faut-il corriger pour que les chaînes de caractères soient considérés égales ?