JeuWeb - Crée ton jeu par navigateur
[PHP] Enregistrer les paramètres joueurs sans SGBDR - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : [PHP] Enregistrer les paramètres joueurs sans SGBDR (/showthread.php?tid=6023)

Pages : 1 2 3


[PHP] Enregistrer les paramètres joueurs sans SGBDR - Furukoo - 11-03-2012

Bonjour

Je cherche un moyen d'enregistrer les paramètres ou les propriétés des joueurs sans utiliser une table dans une base de données.

Je voudrais utiliser un fichier "plat" par joueur et tous les joueurs placés dans un dossier.

J'ai besoin aussi des fonctions new (nouvel enregistrement) et update (mise à jour)
Le tout en php5

Une idée ?

Merci d'avance






RE: [PHP] Enregistrer les paramètres joueurs sans MySQL - Murthy - 11-03-2012

fonction file() et toute la clique... http://www.php.net/manual/fr/function.file.php

Tu utilises un fichier txt ou binaire par joueur voir même pour tous les joueurs avec une ligne par joueur et les infos séparées par un séparateur commun style ";".


RE: [PHP] Enregistrer les paramètres joueurs sans MySQL - Sephi-Chan - 11-03-2012

Pourquoi as-tu besoin de faire ça ?


RE: [PHP] Enregistrer les paramètres joueurs sans MySQL - php_addict - 11-03-2012

si les données ne sont pas sensibles $_COOKIE mais faut que l'utilisateur accepte les cookies, et j'ai l'impression qu'avec mini opera $_COOKIE n'est pas dispo

(11-03-2012, 05:05 PM)Murthy a écrit : fonction file() et toute la clique... http://www.php.net/manual/fr/function.file.php

Tu utilises un fichier txt ou binaire par joueur voir même pour tous les joueurs avec une ligne par joueur et les infos séparées par un séparateur commun style ";".

oui ou bien un fichier JSON, très facile à importer/exporter en php vers un array avec json_decode() et json_encode()


RE: [PHP] Enregistrer les paramètres joueurs sans MySQL - Maks - 11-03-2012

Pourquoi ne pas utiliser une base NoSQL ?

https://github.com/nicolasff/phpredis


RE: [PHP] Enregistrer les paramètres joueurs sans MySQL - Furukoo - 11-03-2012

(11-03-2012, 05:05 PM)Murthy a écrit : fonction file() et toute la clique... http://www.php.net/manual/fr/function.file.php

Tu utilises un fichier txt ou binaire par joueur voir même pour tous les joueurs avec une ligne par joueur et les infos séparées par un séparateur commun style ";".
Oui je veux sauvegarder avec un fichier par joueur.

(11-03-2012, 05:43 PM)Sephi-Chan a écrit : Pourquoi as-tu besoin de faire ça ?
Peut être une erreur de ma part. Je vois certains CMS n'utilisent pas de bases de données.
De toute façon le résultat renvoyé par la base de données on le traite dans un tableau
pour le parcourir autant lire le fichier directement ?

(11-03-2012, 05:43 PM)php_addict a écrit : oui ou bien un fichier JSON, très facile à importer/exporter en php vers un array avec json_decode() et json_encode()
json c'est bien mais je bloque souvent avec UTF-8.
j'ai vu serialize également.
Je suppose que la logique c'est de creer une classe user avec les
propriétés ou alors une array.

(11-03-2012, 05:45 PM)Maks a écrit : Pourquoi ne pas utiliser une base NoSQL ?

https://github.com/nicolasff/phpredis
C'est quoi une base nosql ?




RE: [PHP] Enregistrer les paramètres joueurs sans MySQL - Sephi-Chan - 11-03-2012

(11-03-2012, 06:23 PM)Furukoo a écrit :
(11-03-2012, 05:43 PM)Sephi-Chan a écrit : Pourquoi as-tu besoin de faire ça ?
Peut être une erreur de ma part. Je vois certains CMS n'utilisent pas de bases de données.
De toute façon le résultat renvoyé par la base de données on le traite dans un tableau
pour le parcourir autant lire le fichier directement ?

Si ton site utilise déjà une base de données, autant t'en servir : c'est plus simple et plus performant. Les SGBDR comme MySQL (ou autre) optimisent un peu plus l'écriture qu'une simple écriture de fichier.


(11-03-2012, 06:23 PM)Furukoo a écrit :
(11-03-2012, 05:45 PM)Maks a écrit : Pourquoi ne pas utiliser une base NoSQL ?

https://github.com/nicolasff/phpredis
C'est quoi une base nosql ?

NoSQL signifie "Not only SQL", c'est un mouvement qui consiste à ne pas toujours utiliser une base de données SQL. Parfois, d'autres outils sont plus pertinents.

Ici, Maks propose Redis, un stockage par clé/valeur plutôt avancé et extrêmement performant (puisque de base il utilise la RAM pour stocker). Il y en a plein d'autres : Riak, CouchDB, MongoDB, Memcache, etc.


Si tu utilises déjà une base de données relationnelle, utilise-la. Sinon, écrire des données encodées en JSON dans un fichier font l'affaire.


RE: [PHP] Enregistrer les paramètres joueurs sans MySQL - Furukoo - 11-03-2012

(11-03-2012, 07:05 PM)Sephi-Chan a écrit : Si tu utilises déjà une base de données relationnelle, utilise-la. Sinon, écrire des données encodées en JSON dans un fichier font l'affaire.

Bon d'accord ... je vais rester sur la base MySql.
Merci pour le débat.


RE: [PHP] Enregistrer les paramètres joueurs sans MySQL - php_addict - 11-03-2012

oui et puis tu risque d'avoir des problemes en mélangeant du sql et du nosql : va faire une requête SQL avec une jointure, ou quand tu veut croisées tes données sql et nosql, galère...

au pire si un jour cela est vital de faire ca pour toi alors tu modifiera, mais tout mettre au même endroit est mieux...


RE: [PHP] Enregistrer les paramètres joueurs sans MySQL - Sephi-Chan - 11-03-2012

(11-03-2012, 07:28 PM)php_addict a écrit : oui et puis tu risque d'avoir des problemes en mélangeant du sql et du nosql : va faire une requête SQL avec une jointure, ou quand tu veut croisées tes données sql et nosql, galère...

au pire si un jour cela est vital de faire ca pour toi alors tu modifiera, mais tout mettre au même endroit est mieux...

C'est tout le contraire : il ne faut pas choisir l'un ou l'autre, mais les utiliser conjointement là où chacun est le meilleur. L'évaluation de la pertinence d'un choix requiert de l'expérience et des connaissances assez larges car tous les systèmes NoSQL n'ont pas les mêmes avantages et inconvénients.

Par exemple pour un forum, on pourrait utiliser un système NoSQL pour stocker les informations de lecture pour chaque discussion et pour chaque membre.