8796 sujets

Développement web côté serveur, CMS

Bonjour à tous voilà je vous explique mon souci j'ai un site de voyage qui gere des membres. A la connexion je fait un numrows sur l'utilisateur et le mot de passe s'il me renvoie 1 ligne ca veut dire que le pseudo et pass sont bon j'effectue donc la connexion. Or lorsque j'ajoute un membre avec un accent dans le pseudo ou le mot de passe j'ai toujour une erreur lorsque je veux me connecter avec ce membre alors que j'ai fait un html utf8_encode() avant le numrow et que dans ma base de donné il y ai marque que je suis en utf8 unicode que faire. Voici mon code
<?php
session_start();
include("base.php"); ?>

<?php
$nom=$_POST['pseudo'];
$nom2=utf8_encode("$nom");
$pass=$_POST['pass'];
$pass2=utf8_encode("$pass");
$req= mysql_query("SELECT * FROM membres WHERE pseudo='$nom2' AND pass='$pass2'");
$rep=mysql_num_rows($req);

if($rep!=NULL){
$_SESSION['pseudo']="$nom";
header('location:accueil.php');



} // ferme le if

else //$req est nul 
{

header('location:accueil.php');
if (isset($_POST['connexion'])) {
$_SESSION['erreur']=true;
}
} // fin du else

mysql_close(); 
?>

Merci de votre aide
Salut,

tu te compliques la vie ! Smiley cligne

Si tes tables sont encodées en utf-8 il suffit que tu utilises l'utf-8 partout : pour ce qui est de tes pages, voir cet article et pour la connexion à la BDD tu peux préciser, juste après mysql_select_db :
mysql_query('SET NAMES UTF8');