Aller au contenu
  • Pas encore inscrit ?

    Pourquoi ne pas vous inscrire ? C'est simple, rapide et gratuit.
    Pour en savoir plus, lisez Les avantages de l'inscription... et la Charte de Zébulon.
    De plus, les messages que vous postez en tant qu'invité restent invisibles tant qu'un modérateur ne les a pas validés. Inscrivez-vous, ce sera un gain de temps pour tout le monde, vous, les helpeurs et les modérateurs ! :wink:

Probleme Htaccess


Messages recommandés

Posté(e)

Bonsoir :P

 

J'ai un petit probleme, ce pourquoi je m'adresse ici ( on m'a dit qu'il y avait des killers ) cirage de pompe enabled

 

plus sérieusement ( j'aime pas arriver en first post en posant une question ), je me tire les cheveux.

 

j'ai une fonction de ce type :

 

        //checking if the user login is ok & that he connects from a valid ip

       if (!($userinf['userid'] && ($userinf['password']==md5($PHP_AUTH_PW)))){

               header('WWW-Authenticate: Basic realm="Restricted area"');

               header('HTTP/1.0 401 Unauthorized');

               echo "Unauthorized login attempts are logged.n";

               exit;

 

mais je n'arrive pas a m'affranchir du double quote ... si j'ai un login avec des guillemets genre "cmoi" il ne me reconnait pas ... et je vois pas comment contourner le probleme.

 

donc merci a ceux qui me liront et encore plus merci si vous avez une solution :-(

Posté(e)

Avec les fonctions : addslashes et stripslashes ?

(permet d'ajouter et d'enlever les pour les " et ' )

 

Une question quand meme : que vient faire le php dans le htaccess ??

 

 

777

Posté(e)

merci de ta réponse j'ai essayé " direct dans le htaccess mais c'était idiot ...

 

pourquoi un htaccess dans le php

 

car je suis un parano :P en faite j'ai un htaccess de base plus celui dans le code php qui se base sur les logins et pass utilisateurs, mais se base aussi sur un mask d'ip. C'est pour un forum de type vbulletin.

 

Donc mon pseudo de "cmoi" fonctionne parfaitement sur le forum mais pas au niveau du htaccess forum je vais essayé effectivement avec les stripslash je n'y avais pas pensé a force d'avoir la tete dedans :-(

Posté(e)

Ah oki

 

Alors on reprendre un peu de cours.

Quand on a une variable avec un caractère poscrit tel que " ou ' qui est utilisé en php, le serveur php inclus un

Donc "cmoi" donne "cmoi"

(Ca dépend de la version php aussi d'après ce que j'ai compris ... hum).

 

Donc pour voir un bonne concordance, on applique le stripslashes (fonction qui enlève les )

 

Donc stripslashes("cmoi") donne cmoi

 

En clair, tu dois trouver la condordance entre très différentes variables.

 

777

Posté(e)

merci pour le cours :P mais je connais le principe, mais c'est toujours utile de le rappeler ...

 

bon j'ai regarder en faite

 

j'ai fai un echo de la variable et avec mon login "test" il me revoie bien "test" meme avec un stripslashes donc faut que je regarde le code de plus près, c'est un hack pour vbulletin, donc j'ai pas la maitrise total du code ...

 

voici le rajout de code en complet ( d'origine sans le stripslashes )

 


       $userinf=$DB_site->query_first("SELECT user.password,user.userid FROM user WHERE username='$PHP_AUTH_USER'");

       $isvalidip=0;

       if($userinf['userid']){

               // if user exists check if ip is valid $REMOTE_ADDR

               $validip=$DB_site->query_first("SELECT ipmasks FROM user WHERE userid='$userinf[userid]'");

               $validip=explode(" ",$validip['ipmasks']);

               foreach($validip as $testip){

                       if ($testip=='') { continue; }

                       if (strstr($REMOTE_ADDR,$testip)==$REMOTE_ADDR || stristr(gethostbyaddr($REMOTE_ADDR),$testip)==$testip){

                               $isvalidip=1;

                               break;

                       }

               }

       }

       //checking if the user login is ok & that he connects from a valid ip

       if (!($userinf['userid'] && ($userinf['password']==md5($PHP_AUTH_PW)))){

               //we have a looser:)

               header('WWW-Authenticate: Basic realm="Restricted area"');

               header('HTTP/1.0 401 Unauthorized');

               echo "$PHP_AUTH_USER.n";

               echo "Unauthorized login attempts are logged.n";

               exit;

       }elseif(!$isvalidip){

               header('HTTP/1.0 401 Unauthorized');

               echo "Your Ip is not allowed here...Unauthorized login attempts are logged.n";

               exit;

       }

}

 

en tout cas merci de l'aide ca me redonne une voie :-(

Posté(e)

Oupsss, je l'avais oublié celui là :-(

Heureux que tu es trouvé :P

 

777

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.
Remarque : votre message nécessitera l’approbation d’un modérateur avant de pouvoir être visible.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

  • En ligne récemment   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
×
×
  • Créer...