Function : reconnaître un utilisateur par son nom
nik029
Messages postés
315
Statut
Membre
-
jeremy.s Messages postés 1248 Statut Membre -
jeremy.s Messages postés 1248 Statut Membre -
Bonjour,
Comment reconnaître un utilisateur par son nom (username) et non par son id ?
Voici l'un de mes codes qui reconnait un utilisateur par son id :
Merci d'avance
--
Une fois un problème résolu, mettez un +1 sur la réponse qui vous à aidez et mettez Problème Résolu ! ;-)
Comment reconnaître un utilisateur par son nom (username) et non par son id ?
Voici l'un de mes codes qui reconnait un utilisateur par son id :
<?php
function info_users($id)
{
$id = (int)$id;
$sql = mysql_query("SELECT * FROM users WHERE id='$id'");
return mysql_fetch_assoc($sql);
}
if(!empty($_GET['id']))
{
$info=info_users($_GET['id']);
if($info == false)
{
?>
<script language="Javascript">document.location.replace("accueil.php");</script>
<?php
}
}else{
?>
<script language="Javascript">document.location.replace("accueil.php");</script>
<?php
}
?>
Merci d'avance
--
Une fois un problème résolu, mettez un +1 sur la réponse qui vous à aidez et mettez Problème Résolu ! ;-)
14 réponses
-
-
C'est ce que j'ai fais mais c'est dans cette partie j'ai l'impression que ça bloque :
$id = (int)$id;
car si je met :$username=(text)$username;
rien ne fonctionne
-
text n'est pas un type, string oui.
$username=(string)$username;
-
Merci de ta réponse, ça m'a bien aidé.
Problème, vu que je me sert de cela pour faire un URL Rewritring,
quand je fais cela :
RewriteEngine on RewriteBase /m RewriteRule ^profil-(.+).php$ profil.php?username=$1[L]
La redirection de ce code sur la page profil.php :
<?php if(!empty($_GET['username'])) { $info=info_users($_GET['username']); if($info == false) { ?> <script language="Javascript">document.location.replace("accueil.php");</script> <?php } }else{ ?> <script language="Javascript">document.location.replace("accueil.php");</script> <?php } ?>
Ce met en route. Comment faire pour que la page s'affiche correctement ?
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Il faut faire une autre fonction ;-)
Une qui récupère les infos avec l'id, et l'autre avec le username
function info_users_withId($id)
{
.....
}
function info_users_withName($username)
{
.....
}
Donc tu appelles l'une ou l'autre suivant ce que t'as sous la main comme info (id ou username)
-
C'est ce que j'ai fait :
La fonction
function info_users_username($username) { $username=(string)$username; $sql = mysql_query("SELECT * FROM users WHERE username='$username'"); return mysql_fetch_assoc($sql); }
.htaccess
RewriteEngine on RewriteBase /m RewriteRule ^profil-(.+).php$ profil.php?username=$1[L]
profil.php
<?php if(!empty($_GET['username'])) { $info=info_users_username($_GET['username']); if($info == false) { ?> <script language="Javascript">document.location.replace("accueil.php");</script> <?php } }else{ ?> <script language="Javascript">document.location.replace("accueil.php");</script> <?php } ?>
Hors un profil-username.php redirige toujours vers accueil.php
-
if($info == false)
{
?>
<script language="Javascript">document.location.replace("accueil.php");</script>
<?php
}
}else{
?>
<script language="Javascript">document.location.replace("accueil.php");</script>
<?php
}
Dans tous les cas tu rediriges vers l'accueil :)
-
Oui mais lorsque mon url est de
profil.php?username=username
la page s'affiche correctement..
La redirection est faite pour que quand l'utilisateur saisie dans l'url n'existe pas, on le redirige vers l'accueil.
-
la page s'affiche correctement..
Où est le problème alors ? :p
-
Car j'aimerais que la page s'affiche correctement lorsque c'est profil-username.php, ce qui n'est pas le cas car elle fais une redirection vers accueil.php ;)
-
La réécriture d'url c'est pas spécialement mon truc donc j'ai peur de pas pouvoir t'aider la dessus =/
-
J'ai vu sur internet que le [L] (dans .htaccess) peut ce modifier en [QSA] et très truc comme cela mais je comprends pas trop...
Une fois un problème résolu, mettez un +1 sur la réponse qui vous à aidez et mettez Problème Résolu ! ;-) -
-