IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Modifier un fichier .htaccess


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Par défaut Modifier un fichier .htaccess
    Bonjour.

    j'ai créer une page en php d'administration qui changera le mot de passe du fichier .htacess de mon serveur apache.

    mon fichier est tres simple il se compose d'une ligne :

    user:lemotdepasse

    l'utilisateur entre le mot de passe par l'intermédiaire d'un input type password.
    que je recuperer avec la variable $pass1.

    apres plusieurs recherche je suis arrivé a ce code ( je sais pas si c'est l plus simple mais c'est ou je suis arrivé a quelque chose de +- correct )

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // on modifie le fichier htaccess.
     
    	$monfichier=fopen("../.htpasswd","r");  // ouverture du fichier
    		while (!feof ($monfichier))          // tant que pas en fin de fichier
    		{
    	   	$lecture = fgets($monfichier, 4096); // stockage dans $lecture
    		$donnee=explode(":",$lecture);  // parsing des données basé sur "*")
     
    		$combien=count($donnee)-1; // nbre d'éléments séparés par "*"
    		echo "<b>Ce fichier contient ",$combien," données : </b><br><br>";
     
    			for ($i=0;$i<$combien;$i++)
    			{
    			// modification des données
    			// on modifie ":" en "2°"
    			if (ereg(":",$donnee[$i])){$donnee[$i]=str_replace(":",$pass1,$donnee[$i]);}
    			// stockage temporaire des données toujours avec le séparateur
    			$liste_modif.=$donnee[$i].":";
    			}
     
    		}
    		fclose($monfichier);		// fermeture
     
    		$monfichier=fopen("../.htpasswd","w+");
    		fwrite($monfichier,$liste_modif);
    		fclose($monfichier);
    mais bien sur si je suis ici c'est pas pour rien : j'ai une erreur

    Voici l'erreur php :

    Ce fichier contient 1 données :


    Notice: Undefined variable: liste_modif in C:\Program Files\EasyPHP 2.0b1\www\SellMate\Config\change.php on line 111


    Your password have been changed
    et mon fichier .htaccess est devenu :
    user:
    ma ligne 111 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $liste_modif.=$donnee[$i].":";
    merci de votre aide.

  2. #2
    Modérateur
    Avatar de blueice
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2003
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 494
    Par défaut
    Tu as un } de trop à priori

  3. #3
    Membre Expert

    Homme Profil pro
    Expert PHP
    Inscrit en
    Novembre 2004
    Messages
    2 127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Expert PHP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 127
    Par défaut
    Pour virer l'erreur de Notice :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    // on modifie le fichier htaccess.
    	$liste_modif = "";
    	$monfichier=fopen("../.htpasswd","r");  // ouverture du fichier
    redis nous ce que donne ton script avec ça.

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Par défaut
    alors je n'ai plus d'erreur effectivement mais mon fichier ne se modifie toujours pas.

    enfin si il se modifie : il me supprime tous ce qui se trouve apres les : mais ne remet rien a la place.

    voici ce que mon script m'affiche :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Ce fichier contient 1 données : 
     
    Your password have been changed

  5. #5
    Membre Expert

    Homme Profil pro
    Expert PHP
    Inscrit en
    Novembre 2004
    Messages
    2 127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Expert PHP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 127
    Par défaut
    Citation Envoyé par bullrot Voir le message
    alors je n'ai plus d'erreur effectivement mais mon fichier ne se modifie toujours pas.

    enfin si il se modifie : il me supprime tous ce qui se trouve apres les : mais ne remet rien a la place.
    Dans ce cas là c'est ton programme qui est faux à un endroit, prend le temps de débugger ligne par ligne ton script, pour voir où est l'erreur.

    Moi quand je vois ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $donnee=explode(":",$lecture);  // parsing des données basé sur "*")
    C'est pas terrible

Discussions similaires

  1. Réponses: 7
    Dernier message: 17/02/2012, 11h57
  2. [JexcelAPI]Modifier un fichier excel
    Par sissi_l dans le forum Documents
    Réponses: 3
    Dernier message: 01/06/2007, 01h36
  3. [DOM] [Débutant(e)] Modifier un fichier XML avec DOM
    Par macks dans le forum Format d'échange (XML, JSON...)
    Réponses: 6
    Dernier message: 05/07/2005, 14h13
  4. [jar] Comment modifier un fichier jar
    Par newfsch dans le forum JBuilder
    Réponses: 5
    Dernier message: 18/07/2004, 14h25
  5. [LG]modifier un fichier
    Par fofovi72 dans le forum Langage
    Réponses: 3
    Dernier message: 15/04/2004, 21h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo