fichier au lieu d'une base données

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : fichier au lieu d'une base données

par _alexmyself » 09 févr. 2008, 02:02

et occasionnelement veiller a ce que le fait de taper:
http://ton_site.com/un/repertoire/ton_beau_fichier.txt
n'affiche pas tout le contenu...

honnetement j'ai éssayé, mais vaut mieux passer un peu de temps a configurer mysql comme tu veut.
tu peut faire en sorte que mysql stock tout dans tel ou tel repertoire, tu peut lancer plusieurs mysql pour pas tout mélanger...bref...on croirait que c'est fait pour :)

tôt ou tard tu t'en mordra les doigts...droits d'accès en ecriture, ajout de champs, ajout de fonctionnalités....

par Berzemus » 08 févr. 2008, 20:58

Et si tu veux t'éviter les lourdeurs de mysql (par exemple), considère Sqlite, qui est parfait pour ce genre d'affectation. (et qui n'est finalement qu'un fichier dans ton répertoire, top !)

Re: fichier au lieu d'une base données

par iclo » 08 févr. 2008, 19:10

merci du conseil, je pense que j'userai des bd en dernier recours. Merci qu'en méme
Désolé d'insister, mais quelles sont les raisons qui font que tu ne veux utiliser une base de donnée qu'en dernier recours. Quel est le problème ?

par Sékiltoyai » 08 févr. 2008, 17:33

Sinon, pour quand même répondre à ta question, le mieux, je pense, serait d'écrire un enregistrement par ligne de ton fichier, avec la fonction fwrite(), et de lire avec fgets(). Prenons que tu veuilles stocker les données suivantes : date, note, titre, commentaire

Tu peux par exemple choisir un motif pour séparer les champs d'un enregistrement, prenons par exemple le caractère \0 (caractère nul, que tu as peu de chances de trouver dans un commentaire), et ainsi écrire les données dans le fichier de cette manière :

Code : Tout sélectionner

27-12-08\06\0Pas mal\0Ce site est pas mal\n 12-03-08\09\0Enorme\0J'adore le design, c'est trop puissant\n 12-01-08\00\0Sofware at low price\0The best software at low price, 50$ for Vista Integral\n
:mrgreen:

Une autre manière toujours avec un enregistrement par ligne, serait de créer un objet ou un tableau commentaire et de le serialiser dans le fichier avec serialize(), l'inconvénient étant toutefois, qu'il faut désérializer l'objet ou le tableau pour qu'il soit lisible humainement.

Par contre, je pense que dans les deux cas, il faudra trouver un moyen pour encoder les \n des commentaires en autre chose (après cela dépend de ce que tu comptes faire des commentaires…)

fichier au lieu d'une base données

par zeckis » 08 févr. 2008, 17:11

merci du conseil, je pense que j'userai des bd en dernier recours. Merci qu'en méme

par Sékiltoyai » 08 févr. 2008, 17:04

Ouais, mais même pour un usage restreint, la base de données reste assez intéressante…

fichier au lieu d'une base données

par zeckis » 08 févr. 2008, 16:41

C'st juste pour recueillir les avis des visiteurs

par Sékiltoyai » 08 févr. 2008, 16:35

Veuille excuser ma curiosité, mais pourquoi vouloir te passer de base de données ?

fichier au lieu d'une base données

par zeckis » 08 févr. 2008, 16:31

Bonjour,
j'aimerai intégrer dans mon site en PHP une partie où les visiteur pourront faire des commentaires. Maintenant pour stocker les données les opinions des visiteurs j'aimerai utiliser un fichier au lieu d'insérer dans une base de données. dans ce sens j'aimerai quelques tuyaux.

Merci d'avance pour tout aide.