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 :

Écrire dans un fichier .conf via un formulaire


Sujet :

Langage PHP

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Écrire dans un fichier .conf via un formulaire
    Bonjour à tous,

    c'est mon premier post donc tout d'abord bonjour à tous

    Je connais pas grand chose au PHP hélas et je vous explique mon probleme et mon sujet :

    J'ai donc un serveur debian avec asterisk (IPBX) et je doit creer une interface de creation de compte.

    J'ai donc sur mon serveur : asterisk et apache

    J'ai crée mon formulaire que voici (accessible via le reseau):

    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
    <html>
    <head>
      <title>Création d'un compte Asterisk</title>
    </head>
    <body>
    <table border="0">
      <form name="formulaire" action="insertaccount.php" method="POST" enctype="multipart/form-data">
        <tr> 
          <td width="231" align="center">Entrez votre nom</td>
          <td width="317" align="center"><input type="text" name="nom"></td>
        </tr>
        <tr> 
        <tr> 
          <td align="center">Entrez votre password</td>
          <td align="center"><input type="text" name="pass"></td>
        </tr>
     
         <input type="submit" name="Submit" value="Submit" />
     
      </form>
    </table>
    </body>
    </html>
    On va dire que mon serveur est en 192.168.0.1 (si ca peut aider)

    Maintenant il me faut creer le fichier php (insertaccount.php) afin d'ouvrir et d'ecrire les 2 valeurs (nom, password) dans le ficher /etc/asterisk/sip.conf qui se situe sur le serveur, de la maniere suivante :

    [nom] // nom du formulaire
    type=friend // valeur ne faisant pas partie du formulaire mais a ajouter
    secret=pass // password du formulaire
    quality=yes // valeur ne faisant pas partie du formulaire mais a ajouter
    host=dynamic // valeur ne faisant pas partie du formulaire mais a ajouter

    bien sur toujours en fin de fichier a chaque fois. (le début du fichier comprend des variables de conf)


    J'espere que le sujet est assez clair et si vous desirez des infos demandez moi.

    Je bloque vraiment sur cette creation de page php :s

    En esperant un coup de main de votre part à tous et merci

  2. #2
    Membre émérite Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Points : 2 273
    Points
    2 273
    Par défaut
    Salut,
    il y a tout ce qu'il faut dans l'exemple 1 ici. Si t'as des problèmes hésite-pas ^^
    Bye

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Merci pour ton lien.

    Voila donc ce que j'ai test :

    Formulaire :

    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
    <html>
    <head>
      <title>Création d'un compte Asterisk</title>
    </head>
    <body>
    <table border="0">
      <form name="formulaire" action="test.php" method="POST" enctype="multipart/form-data">
        <tr> 
          <td width="231" align="center">Entrez votre nom</td>
          <td width="317" align="center"><input type="text" name="nom"></td>
        </tr>
        <tr> 
        <tr> 
          <td align="center">Entrez votre password</td>
          <td align="center"><input type="text" name="pass"></td>
    	</tr>
     
    	<td>
    	<input type="submit" name="Submit" value="Submit" />
    	</td>
      </form>
    </table>
    </body>
    </html>

    test.php :


    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
    27
    28
    29
    <?php
    $filename = '/etc/asterisk/test.conf';
    $somecontent = "Ajout de chaîne dans le fichier \n";
     
    // Assurons nous que le fichier est accessible en écriture
    if (is_writable($filename)) {
     
       // Dans notre exemple, nous ouvrons le fichier $filename en mode d'ajout
       // Le pointeur de fichier est placé à la fin du fichier
       // c'est là que $somecontent sera placé
       if (!$handle = fopen($filename, 'a')) {
             echo "Impossible d'ouvrir le fichier ($filename)";
             exit;
       }
     
       // Ecrivons quelque chose dans notre fichier.
       if (fwrite($handle, $somecontent) === FALSE) {
           echo "Impossible d'écrire dans le fichier ($filename)";
           exit;
       }
     
       echo "L'écriture de ($somecontent) dans le fichier ($filename) a réussi";
     
       fclose($handle);
     
    } else {
       echo "Le fichier $filename n'est pas accessible en écriture.";
    }
    ?>
    J'ai installé donc apache et php5 sur mon serveur debian.
    J'ai crée un fichier test.conf dans /etc/asterisk/test.conf

    Je met suis mis sur un post client et taper l'ip du serveur : le formulaire s'affiche et voila le probleme quand je click sur Submit :

    Method Not Allowed
    The requested method POST is not allowed for the URL /test.php.
    Vous voyez d'où ca peut venir ?

  4. #4
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Hello,

    mon serveur marche j'affiche des pages php (c'etait un probleme de serveur).

    Je test donc l'ouverture de fichier avec ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    	if($ouverture = @fopen("../../etc/asterisk/test.conf", "r"))
    	{
    		echo ("L'ouverture du fichier est possible car la fonction fopen retourne TRUE");
    	}
    	else
    	{
    		echo ("Ouverture du fichier impossible car fopen retourne FALSE");
    	}
    ?>
    Cela ne marche pas. Par contre cela fonctionne quand le fichier est dans le meme repertoire que le .php (/var/www)

    Donc ma question est : comment remonter dans une arborescence ? car j'ai essayé ../../etc/asterisk/test.conf ou encore /etc/asterisk/test.conf et j'ai rien.

Discussions similaires

  1. creer un formulaire et écrire dans un fichier.conf
    Par sander's dans le forum Langage
    Réponses: 0
    Dernier message: 22/02/2015, 15h51
  2. Réponses: 8
    Dernier message: 18/01/2012, 14h16
  3. ècrire dans le fichier word via macro
    Par rbaldassarre dans le forum VBA Word
    Réponses: 1
    Dernier message: 20/02/2009, 16h09
  4. [XML] [PHP-Flash] écrire dans un fichier XML via un fichier PHP
    Par morgiane dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 24/11/2006, 12h05
  5. Réponses: 17
    Dernier message: 05/07/2006, 13h26

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