générer un fichier .php

Eléphant du PHP | 271 Messages

18 oct. 2006, 01:23

Bonsoir, Est -il possible de générer (créer) un fichier .php à partir d'un script php.

Pour préciser ma question :

Un visiteur rempli un formulaire envoyé en post vers un script de traitement. Ce dernier après toutes les vérifications, créerait un nouveau fichier .php. avec une adresse http.

Si 40 visiteurs donc 40 fichiers créés etc...

Est - ce techniquement possible et si oui, quelle est la fonction ?

Merci d'avance
Patience et obstination sont des qualités !

ViPHP
ViPHP | 1961 Messages

18 oct. 2006, 01:33

Bonsoir,

PHP sait manipuler un certin nombre de types de fichiers et les fichiers texte font partie de la liste. Comme un source PHP est un fichier texte, tu n'auras aucun PB. Je te redirige ver la documentation PHP car cette partie est vaste et donc les fonctions nombreuses. A toi de choisir en fonction de tes besoins
Système de fichiers PHP
Deux choses sont infinies, l'Univers et la sottise humaine!!
Mais je ne suis pas sur de ce que j'affirme au sujet de l'Univers.

A. Einstein

ViPHP
ViPHP | 2144 Messages

18 oct. 2006, 10:09

Comme Ajoloca te l'a indiqué, c'est tout à fait possible de générer un fichier php. Maintenant, il faut voir ce que tu dois mettre dans le fichier en question, créer un fichier par utilisateur risque d'être lourd.
Prenons un exemple, si il s'agit de page de profil des membres, tu crées une fois pour toute le fichier lors de l'inscription, mais si par après tu souhaites modifier le design de ces fiches, tu devras remodifier tous tes fichiers, ça risque d'être très lourd, si tu as quelques membres.
C'est pour ça, que généralement, on n'a qu'un seul fichier, qui réalise l'affichage à partir d'une base de donnée, pour afficher les informations d'un membre, dont l'identifiant est passé en paramêtre.

Maintenant c'est toi qui voit, mais si tu nous donnes plus de détails sur ce que tu dois faire, on pourra mieux te conseiller

Eléphant du PHP | 271 Messages

18 oct. 2006, 23:10

Avant tout merci de l'aide,

Mon idée si elle se réalise serait :

Plan : (très schématique)
Un visiteur compléte un formulaire et l'envoi :arrow: script de traitement = insertion des infos dans la bd et en même temps création d'un fichier dans lequel s'incrit les infos de la bd.

Le fichier ainsi créé aurait comme adresse Internet :
http://mon hébergeur.fr/monsite/sonsite.php

"sonsite.php" serait une page en lecture accessible à tout internaute.

J'espère que vous comprendrez mes explications.

Cela serait donc possible ?
Patience et obstination sont des qualités !

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

19 oct. 2006, 14:00

Pourquoi ne pas créer le fichier monsite.php, le dupliquer pour chaque compte dans le répertoire du user, et que ce fichier monsite.php lise les données dans un fichier .txt ou XML qui contient les identifiants ?

Si tu le peux, mutualise le monsite.php, mais si pas le choix duplique le à chaque fois.
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

ViPHP
ViPHP | 2144 Messages

19 oct. 2006, 15:59

Vu ce que tu dois faire, j'opterais pour un fichier unique, qui va chercher les infos dans la base de donnée. comme ça, c'est évolutif.
Tu peux ajouter à ça un url rewriting pour avoir des noms de fichiers "virtuels" comme tu le montres dans ton exemple.

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

19 oct. 2006, 16:27

Exact iclo :pouce:
Comme ça au lieu de créer le sonsite.php à chaque submit du formulaire on ajoute une ligne de règle rewriting dans le fichier .htaccess en indiquant un truc comme ça:

Code : Tout sélectionner

RewriteRule ^Alias$ http://mon_hébergeur.fr/monsite/sonsite.php?id=un_id [L]
telque : sonsite.php : est le programme qui affiche les données de quelqu'un connu par id

Ainsi seront créés des alias pour tous les visiteurs par leurs id.
Alias qui pointent vers la même page php (qui affiche les données BD selon le paramètre id qu'elle reçoit)

En définitif, ton programme produira une mise à jour du .htaccess
Exemple de résultat :
si 3 visiteurs s'inscrivent ayant les id : v1, v2 et v3:
ton programme ajoute 3 lignes dans les règles rewriting du .htaccess:
  • RewriteRule ^v1$ http://mon_hébergeur.fr/monsite/sonsite.php?id=v1 [L]
    RewriteRule ^v2$ http://mon_hébergeur.fr/monsite/sonsite.php?id=v2 [L]
    RewriteRule ^v3$ http://mon_hébergeur.fr/monsite/sonsite.php?id=v3 [L]
Du coup, si le visiteur v1 veut accèder à ses données il n'a qu'à taper l'url: http://mon_hébergeur.fr/monsite/v1
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

Eléphant du PHP | 271 Messages

19 oct. 2006, 16:59

Merci à tous des explications fournies. J'ai maintenant des pistes de travail qui vont me permettre de démarrer un nouveau projet.

Je ne manquerai pas de vous solliciter à nouveau pour des renseignements.

Cela fait un an que j'ai débuté dans le php et bien sûr autant que je sollicite le forum pour ses conseils. Celui - ci est une aide précieuse pour les développeurs en "herbe" comme moi. Pour les débutants vos conseils valent de l'or (si, si) et nous n'aurons jamais assez de mots pour vous remercier.

Merci encore.
Patience et obstination sont des qualités !