Problème avec "If"

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Problème avec "If"

par mere-teresa » 17 oct. 2006, 15:03

Vérifie tes points-virgules, tes accolades, tes parenthèses

par Maitrepylos » 17 oct. 2006, 13:35

Bonjour,

en tout cas chez moi, tel qu'il est écrit, ce code fonctionne nickel(php5.1 sous Ubuntu ).

Problème avec "If"

par Brian_974 » 17 oct. 2006, 08:32

Bonjour,

Actuellement je développe un serveur de fichiers en php et j'utilise la sécurisation de dossiers par .htaccess.

J'ai dernièrement installé la dernière version de WAMP (la 1.6.5) et depuis une partie de mon code ne passe plus.

Voici mon code :
$fn = "motdepasse.txt";
if (file_exists($fn))
{
	rename($fn,".htpasswd");
	
	/* Définition du chemin d'accès */
	$chemin = realpath(dirname("./.htaccess"));
	$fichier = $chemin ."/.htaccess";
	/* Ouverture du fichier en mode "écriture" */
	if(false !== ($f = fopen($fichier, "w")))
	{
		/* écriture du chemin dans le fichier */
		fwrite($f, "Authname \"Zone protégée\"
		AuthUserFile ".$chemin."\.htpasswd
		AuthGroupFile /dev/null
		AuthType Basic
		<limit GET POST>
		require valid-user
		</limit>");
		/* Fermeture du fichier */
		fclose($f);
	}
	echo "<script>alert('Ce dossier a desormais un accès limité !');</script>";
	echo '	<script type="text/javascript" langage="JavaScript">
	parent.location = "http://localhost/Site/Serveur/";
	</script>';
}
Donc ce code me permet d'appliquer un accès limité à un dossier de manière assez simple.
Pour y appliquer un accès limité, il suffit de créer un fichier "motdepasse.txt" et de rentrer dedans login/mdp. Par exemple, à l'intérieur on écrira :
test:test

Si le fichier "motdepasse.txt" est présent, celui-ci est renommé en .htpasswd et un fichier .htaccess est crée avec les informations adéquat. (Je récupère le chemin du fichier et je l'inscris dedans). Une boite de dialogue nous informe que le dossier à un accès limité.

Donc mon problème c'est que mon code ne passe plus depuis que j'ai installé la version 1.6.5 et je n'arrive pas à savoir pourquoi.

Mon navigateur m'affiche la chose suivante :
require valid-user "); /* Fermeture du fichier */ fclose($f); } echo "
Il m'affiche cette petite phrase ainsi que ma boite de dialogue qui devrait apparaître seulement si le fichier "motdepasse.txt" est présent.
La condition ne marche donc plus. Que le fichier "motdepasse.txt" soit présent ou pas, voilà ce qu'il m'affiche :?

Je pense qu'il doit y avoir une erreur dans mon code mais je n'arrive pas à comprendre pourquoi le fait de changer de version de WAMP à déclencher subitement cette erreur alors que cela marchait très bien avant.

Merci de m'aider