Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 5 sur 5
  1. #1
    Futur Membre du Club
    Homme Profil pro
    Apprenti Ingénieur
    Inscrit en
    novembre 2011
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti Ingénieur
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : novembre 2011
    Messages : 96
    Points : 17
    Points
    17

    Par défaut Editer fichier html/php en ligne.

    Bonjour,

    J'ai développé un outil en interne pour mon entreprise, mais j'aimerai ajouter une petite modification pour aider à l'amélioration continue.

    En fait j'ai un fichier HTML avec les <option value=""> d'une liste déroulante sur mon serveur que j’intègre dans les pages voulues avec un <?php include ?> , et je voudrais savoir si il y aurait un moyen d'éditer ce fichier depuis mon outil pour rajouter des noms si besoin ?

    Par exemple.. modifier le code source du fichier depuis le navigateur ?

    Merci d'avance !

    Cdlt. Steven

  2. #2
    Membre confirmé
    Homme Profil pro Guillaume
    Développeur Web
    Inscrit en
    décembre 2010
    Messages
    135
    Détails du profil
    Informations personnelles :
    Nom : Homme Guillaume
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : décembre 2010
    Messages : 135
    Points : 205
    Points
    205

    Par défaut

    C'est tout à fait possible. Il faut simplement s'assurer que le formulaire d'édition du fichier soit bien sécurisé.

    Un descriptif rapide de la procédure à suivre :
    - lire le fichier à éditer et récupérer son contenu (via les fonctions PHP fopen()/fgets() ou file_get_contents() )
    - placer le contenu du fichier dans un textarea pour permettre l'édition du code
    - enregistrer le contenu du textarea dans le fichier à la soumission du formulaire (fonctions fopen()/fwrite() ou file_put_contents() )

    La documentation PHP :
    http://php.net/manual/fr/function.fopen.php
    http://www.php.net/manual/fr/function.fgets.php
    http://www.php.net/manual/fr/function.fwrite.php
    http://www.php.net/manual/fr/functio...t-contents.php
    http://www.php.net/manual/fr/functio...t-contents.php

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Apprenti Ingénieur
    Inscrit en
    novembre 2011
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti Ingénieur
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : novembre 2011
    Messages : 96
    Points : 17
    Points
    17

    Par défaut

    Bonjour,

    J'suis en train d'essayer ça mais j'ai un soucis je comprends pas..

    j'ai écris ça pour tester déja :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
     
    <?php
    //Ouverture du fichier en lecture seul
    $fichier_a_ouvrir = fopen("caffros.html", "r");
    // On boucle et tant que l'on n'est pas la fin du fichier ,on continue de le lire. 
     
    while(!feof($fichier_a_ouvrir)) 
    {
    $contenu_du_fichier = fgets($fichier_a_ouvrir, 1024);
    //Affichage du contenu
    echo nl2br(htmlspecialchars($contenu_du_fichier));
    }
    //Fermeture du fichier
    fclose ($fichier_a_ouvrir);
    ?>
     
     
     
    <textarea name="commentaire" rows="30" cols="100"><?php echo nl2br(htmlspecialchars($contenu_du_fichier)); ?></textarea>
    Mais dans mon <textarea>, il ne m'affiche que la dernière ligne de mon fichier HTML..

    contenu de mon fichier caffros.html :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    // Ajouter les CAFF / ROS ici pour affichage dans la liste déroulante.
     
    						<option value="Bernard SCHATT">Bernard SCHATT</option>
    						<option value="Denis DEFFUNT">Denis DEFFUNT</option>
    						<option value="Gauthier BEURAERT">Gauthier BEURAERT</option>
    						<option value="Jacques HUET">Jacques HUET</option>
    						<option value="Ludovic MARET">Ludovic MARET</option>
    						<option value="Maxime DE VENDT">Maxime DE VENDT</option>
    						<option value="Michel LESCURE">Michel LESCURE</option>
    						<option value="Olivier GRANDTENER">Olivier GRANDTENER</option>
    						<option value="Olivier PAUCHET">Olivier PAUCHET</option>
    						<option value="Steven PAWLAK">Steven PAWLAK</option>
    						<option value="Philippe MARZIN">Philippe MARZIN</option>
    						<option value="Régis BUNY">Régis BUNY</option>
    						<option value="Richard KLEMESIAK">Richard KLEMESIAK</option>
    						<option value="Roland SIX">Roland SIX</option>
    						<option value="Thierry LAMBRE">Thierry LAMBRE</option>
    						<option value="Vincent RETHORE">Vincent RETHORE</option>
    						<option value="Patrice BORDJI">Patrice BORDJI</option>
    						<option value="ZZZ GE AT UI BFC">ZZZ GE AT UI BFC</option>
    						<option value="ZZZ PIL AFF UICHAMP">ZZZ PIL AFF UICHAMP</option>
    						<option value="ZZZ PILOTAGE THD UI AL">ZZZ PILOTAGE THD UI AL</option>
    						<option value="ZZZ THD UPR NE">ZZZ THD UPR NE</option>

  4. #4
    Modérateur
    Avatar de grunk
    Homme Profil pro Olivier
    Dév. Web / Android
    Inscrit en
    août 2003
    Messages
    3 076
    Détails du profil
    Informations personnelles :
    Nom : Homme Olivier
    Âge : 30
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Dév. Web / Android
    Secteur : Industrie

    Informations forums :
    Inscription : août 2003
    Messages : 3 076
    Points : 6 879
    Points
    6 879

    Par défaut

    Ta variable $contenu_du_fichier est écrasée à chaque tour de boucle , c'est normal que tu n'ai que la dernière ligne, il faut concaténer.

    Code :
    $contenu_du_fichier .= fgets($fichier_a_ouvrir, 1024);
    ou plus simplement avec une seule ligne :


    Code :
    <textarea name="commentaire" rows="30" cols="100"><?php echo htmlspecialchars(file_get_contents("caffros.html")); ?></textarea>
    Note : pas de nl2br dans un textarea, ca sert à rien.
    Pry Framework php5

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Apprenti Ingénieur
    Inscrit en
    novembre 2011
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti Ingénieur
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : novembre 2011
    Messages : 96
    Points : 17
    Points
    17

    Par défaut

    J'ai réussis !

    mon fichier principal :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    <?php
    			//Ouverture du fichier en lecture seul
    			$fichier_a_ouvrir = fopen("caffros.html", "r");
    			// On boucle et tant que l'on n'est pas la fin du fichier ,on continue de le lire. 
     
    			while(!feof($fichier_a_ouvrir)) 
    			{
    			$contenu_du_fichier .= fgets($fichier_a_ouvrir, 1024);
    			//Affichage du contenu
    			//echo nl2br(htmlspecialchars($contenu_du_fichier));
    			}
    			//Fermeture du fichier
    			//fclose ($fichier_a_ouvrir);
     
    			?>
     
    			<form action="modfile2.php" method="post">
    				<textarea name="commentaire" rows="30" cols="100"><?php echo htmlspecialchars($contenu_du_fichier); ?></textarea>
    				<input type="submit" value="Ecrire">
    			</form>
    mon code de traitement :

    Code :
    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
    27
    28
    29
    30
    31
    <?php 
     
    $contenu = stripslashes($_POST["commentaire"]);
     
    $filename = 'caffros.html';
    $ht = $_SERVER["HTTP_REFERER"];
     
    if (is_writable($filename)) { // Le fichier est il inscriptible
     
    	if (!$handle = fopen($filename, 'w+')) { // Je vous conseil de lire la fonction fopen($filename, 'a')
    		echo "Impossible d'ouvrir le fichier ($filename)";
    		exit;
    	}
     
    	if (fwrite($handle, $contenu) === FALSE) { // On écrit dans le fichier en testant les droits
    		echo "Le fichier $filename n'est pas inscriptible";
    		exit;
    	}
     
    	echo "L'écriture dans le fichier ($filename) a réussi";
    	fclose($handle); // on ferme le fichier aprés avoir écrit dedans
     
    } else {echo "Le fichier $filename n'est pas accessible en écriture.";}
     
     
    //Et la tu rediriges vers ta page pour rafraichir la liste
    header("Location:".$ht."" );
    exit;
     
     
    ?>
    Merci beaucoup !

+ Répondre à la discussion
Cette discussion est résolue.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •