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 :

Lire et écrire (très mini CMS)


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Août 2006
    Messages : 108
    Points : 82
    Points
    82
    Par défaut Lire et écrire (très mini CMS)
    Bonjour à tous,
    Alors voilà, j'ai un soucis qui, je pense, est loin d'être gros pour les connaisseurs que vous êtes.
    Je suis webdesigner et je réalise donc des sites internet, mais sans jamais toucher au code (PHP/MySQL).
    Mais cette fois j'aimerais apprendre un tout petit truc...

    Je dois créer une page avec un contenu modifiable, comme dans un CMS, mais de manière très basique.
    Alors voilà comment se décomposerais ce que je cherche :
    -> 1 page "admin.php" avec un TextArea (bloc texte) et un Bouton "Poster".
    -> 1 page "index.php" avec une Div qui charge le texte poster via le formulaire de la page "admin.php".

    Je souhaiterais absolument que le texte du TextArea (bloc texte) soit stocker dans un fichier texte et non dans une base de donnée. Je pense que ce ne doit pas être bien compliqué... Mais je ne sais pas comment faire.

    Auriez-vous quelques pistes ou même un Zip d'exemple... ?
    (On ne sais jamais, c'est tout de même les fêtes...)

    Milles merci aux participants.
    Bonne continuation à vous.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    La page admin.php c'est une formulaire HTML, tu dois savoir faire (il faudra quand meme penser à la manière dont tu veux en restreindre l'accès).

    Pour écrire le résultat dans un fichier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    $fp = fopen('data.txt', 'w');
    fwrite($fp, $_POST['nom_du_textarea']);
    fclose($fp);
    ?>
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti Avatar de BornBanane
    Homme Profil pro
    dev
    Inscrit en
    Mars 2007
    Messages
    284
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Mars 2007
    Messages : 284
    Points : 416
    Points
    416
    Par défaut
    Pour la page "admin.php" un (en supposant que le formulaire soit en POST), mettre ceci en haut de la page avant le html :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?php
    if ( isset($_POST['nom_du_textarea']) && !empty($_POST['nom_du_textarea'])) 
    file_put_contents('fichier_admin.txt',$_POST['nom_du_textarea']) ?>
    Pour la page "index.php", mettre dans le div dans lequel tu veux afficher le texte ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php echo file_get_contents('fichier_admin.txt') ?>
    Smiley de Plomb 2009
    Anciennement FrancoisIT

  4. #4
    Membre régulier
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Août 2006
    Messages : 108
    Points : 82
    Points
    82
    Par défaut
    Bonjour,
    Tout d'abord merci pour vos réponses très précises.
    Je ne connaissais, encore hier, rien à la structure du PHP, mais maintenant ça va beaucoup mieux.
    J'ai finalement pu obtenir ce que je cherchais avec ceci :

    Pour INDEX.PHP
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <?php
    $file = fopen("texte.txt", "r") or exit("Bug !");
    while(!feof($file))
      {
      echo fgets($file);
      }
    fclose($file);
    ?>
    Et pour ADMIN.PHP (dans ma Div)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <?php
        $modif=stripslashes("$_POST[modif]");
        $fichier="texte.txt";
        if(isset($_POST['boutton'])) {    
        $ouverture=fopen("$fichier","w");
        fwrite($ouverture,stripslashes($_POST[modif]));
        fclose($ouverture);
        echo '<h2>Modification effectue</h2>';
        } ?>
    J'ai utilisé vos post et un article sur la lecture et l'écriture dans un fichier texte via PHP.
    Et j'ai du rajouté stripslashes() car le texte généré était mal interprété en HTML.

    Comme tu l'as bien dit Sabotage, je cherche maintenant un moyen de restreindre l'accès à cette page.
    Je ne sais pas si c'est une bonne méthode mais en fouillant sur les sites de script PHP, j'ai trouvé "Admin-X-tration".
    Mais est-il assez efficace face aux robots... ?
    Les robots sont ma plus grande crainte.

    Merci par avance.


    EDIT : J'ai testé "Admin-X-tration", c'est vraiment très instable et peu pratique dans mon cas...

  5. #5
    Membre averti Avatar de BornBanane
    Homme Profil pro
    dev
    Inscrit en
    Mars 2007
    Messages
    284
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Mars 2007
    Messages : 284
    Points : 416
    Points
    416
    Par défaut
    Pour une authentifiaction très simple tu peux mettre ceci en début de la page :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
    $username = 'identifiant';
    $password = 'motdepasse';
     
    if ( $_SERVER['PHP_AUTH_USER'] != $username || $_SERVER['PHP_AUTH_PW'] != $password )
    {
      header("WWW-Authenticate: Basic realm=\"Private\"");
      header("HTTP/1.0 401 Unauthorized");
      echo "Maybe your are lost ? ;) ";
      exit;
    }
     
    ?>
    Il te suffit de modifier les variable $username et $password à ta convenance.
    Smiley de Plomb 2009
    Anciennement FrancoisIT

  6. #6
    Membre régulier
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Août 2006
    Messages : 108
    Points : 82
    Points
    82
    Par défaut
    Alors là... Que te dire à part Merci !
    Vraiment, ça à l'air nickel.
    Une fois le login + password rentré une première fois, le navigateur ne me le redemande pas à chaque fois, c'est une excellente chose.

    J'ai une (ah non, deux) dernière(s) question(s) :
    Cette solution (je veux parler de l'ensemble des codes PHP dans ces différentes pages) est-il "propre", ou plutôt "bricolage" ?

    Et pense-tu que le système d'authentification que tu m'as fournis résistera à une bonne partie des robots (spammeurs) ?


    Encore merci.
    J'ai grandement avancé grâce à vous deux.

    EDIT : J'ai aussi ajouter des boutons de mise en forme en JS (exemple : l'utilisateur sélectionne une zone de texte puis clique sur "Gras" et ça ajoute les balises "<b>" et "</b>").

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 31/12/2005, 09h06
  2. [Rech. Comp.] Lire et écrire dans des fichiers XML
    Par Rodrigue dans le forum C++Builder
    Réponses: 4
    Dernier message: 26/08/2005, 20h48
  3. Réponses: 9
    Dernier message: 05/04/2005, 09h39
  4. Réponses: 3
    Dernier message: 29/12/2004, 17h10
  5. [OS] Lire et écrire sur disquette
    Par trax44 dans le forum Programmation d'OS
    Réponses: 17
    Dernier message: 22/02/2004, 20h45

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