Bonjour,

J'ai un problème avec l'utilisation de mysql_real_escape_string sur un tableau expédié via $_POST[].

C'est simple, j'ai plusieurs checkbox :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
<input type="checkbox" name="supprimer[]" value="'.$R[id].'">
Quand le formulaire est envoyé, à réception, je cherche à le filtrer avant d'utiliser son contenu dans une requête sql (question de sécurité, bien sûr).

Donc je fais ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
$_POST['supprimer']=
htmlentities(mysql_real_escape_string($_POST['supprimer']));
La requête sql, c'est ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
SELECT
 id
 FROM 
messagerieRecu 
WHERE
 id 
IN (".implode(',', $_POST["supprimer"]).")
Donc la requête fonctionne bien si je supprime le filtre par mysql_real_escape_string, mais si je le laisse j'obtiens les erreurs :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
Warning: mysql_real_escape_string() expects parameter 1 to be string, array given in /home.2/site/www/messages-recus.php on line 35
 
Warning: implode(): Bad arguments. in /home.2/site/www/messages-recus.php on line 36
 
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home.2/site/www/messages-recus.php on line 39
 
Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in /home.2/site/www/messages-recus.php on line 44
Le problème bien sûr c'est que je dois filtrer ma variable $_POST[supprimer] avant de l'utiliser dans la requête.

Alors comment puis-je faire ici svp ?