Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/09/2006, 20h09   #1
Membre régulier
 
Homme Mallory
Étudiant
Inscription : septembre 2006
Messages : 213
Détails du profil
Informations personnelles :
Nom : Homme Mallory
Âge : 22
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : septembre 2006
Messages : 213
Points : 75
Points : 75
Envoyer un message via MSN à Oprichnik Envoyer un message via Skype™ à Oprichnik
Par défaut Accès simultané au même fichier

Bonjour, je possède un jeu en php (http://www.fightclub-lejeu.com) ou étant donné le nombre grandissant de connectés simultanés, le fichier principale gérant le jeu est fort utilisé..

Je ne sais pas encore si c'est la cause des erreurs répétés que j'obtiens, malgré un gestionnaire d'erreurs complexe je n'arrive pas à les résoudre (2 erreurs en fait).

J'ai remarquer qu'en envoyant le même formulaire en même temps (en cliquant une fois sur la même page dans navigateurs) une erreur php était provoquée.. Alors qu'en envoyant une fois le formulaire puis en attendant, puis en envoyant l'autre, j'ai un bon message me disant que je peux pas faire cela une deuxième fois..

Voilà, est-ce que c'est possible ?

Si oui, comment faire attendre que le fichier ne soit plus utilisé et de mettre le 2ème formulaire en attente (pendant que le premier utilise le fichier)

Merci
Oprichnik est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/09/2006, 11h04   #2
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Qu'entendez-vous par "fichier" (fichier texte, script, ...) ? Dans le cas d'un fichier ouvert en écriture : posez-vous des verrous (fonction flock) ? Peut-on voir le code en question ainsi que les messages d'erreur ?


Julp.
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/09/2006, 17h11   #3
Membre régulier
 
Homme Mallory
Étudiant
Inscription : septembre 2006
Messages : 213
Détails du profil
Informations personnelles :
Nom : Homme Mallory
Âge : 22
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : septembre 2006
Messages : 213
Points : 75
Points : 75
Envoyer un message via MSN à Oprichnik Envoyer un message via Skype™ à Oprichnik
C'est un fichier texte ".dtb" ayant les permissions
777.

Un message d'erreur est souvent un offset non-défini dans un tableau alors que lorsque le gestionnaire prend l'erreur l'offset est dans le tableau..

Ou un membre a eu ce message :

Citation:
Warning: Unknown(): open_basedir restriction in effect. File(/home/fightc00/public_html/chat.php) is not within the allowed path(s): (/home/tamazi00/:/usr/lib/php:/usr/local/lib/php:/tmp) in Unknown on line 0

Warning: Unknown(/home/fightc00/public_html/chat.php): failed to open stream: Operation not permitted in Unknown on line 0

Warning: Unknown(): open_basedir restriction in effect. File(/home/fightc00/public_html/chat.php) is not within the allowed path(s): (/home/tamazi00/:/usr/lib/php:/usr/local/lib/php:/tmp) in Unknown on line 0

Warning: Unknown(/home/fightc00/public_html/chat.php): failed to open stream: Operation not permitted in Unknown on line 0

Warning: (null)() [function.include]: Failed opening '/home/fightc00/public_html/chat.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in Unknown on line 0
Oprichnik est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/09/2006, 14h47   #4
Membre régulier
 
Homme Mallory
Étudiant
Inscription : septembre 2006
Messages : 213
Détails du profil
Informations personnelles :
Nom : Homme Mallory
Âge : 22
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : septembre 2006
Messages : 213
Points : 75
Points : 75
Envoyer un message via MSN à Oprichnik Envoyer un message via Skype™ à Oprichnik
Personne ne sait m'aider ?
Oprichnik est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/09/2006, 20h25   #5
Membre régulier
 
Homme Mallory
Étudiant
Inscription : septembre 2006
Messages : 213
Détails du profil
Informations personnelles :
Nom : Homme Mallory
Âge : 22
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : septembre 2006
Messages : 213
Points : 75
Points : 75
Envoyer un message via MSN à Oprichnik Envoyer un message via Skype™ à Oprichnik
Je vois l'utilité de cette fonction, mais est-ce qu'elle met en attente les autres scripts tentant d'accéder au fichier ou les bloque t'ils ?

Merci
Oprichnik est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/09/2006, 20h28   #6
Membre émérite

 
Avatar de FCYPBA
 
Inscription : novembre 2004
Messages : 735
Détails du profil
Informations personnelles :
Âge : 33
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : novembre 2004
Messages : 735
Points : 924
Points : 924
Que contient ce fichier dtb ??

Si un verrou est posé le fichier est inaccesible ( surement en écriture, peut etre en lecture ). Ensuite c'est à toi de gerer le cas de non ouverture du fichier dans ton script

Pierre
FCYPBA est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/09/2006, 21h02   #7
Membre régulier
 
Homme Mallory
Étudiant
Inscription : septembre 2006
Messages : 213
Détails du profil
Informations personnelles :
Nom : Homme Mallory
Âge : 22
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : septembre 2006
Messages : 213
Points : 75
Points : 75
Envoyer un message via MSN à Oprichnik Envoyer un message via Skype™ à Oprichnik
Peut importe ce qu'il contient.. Donc la fonction renvoi FALSE lorsque le fichier est déjà utilisé ? Je peux donc faire une boucle avec la fonction flock() jursqu'a ce que le fhier ne soit plus utilisé ? Ou une autre methode ?

Merci
Oprichnik est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/09/2006, 22h48   #8
Membre émérite

 
Avatar de FCYPBA
 
Inscription : novembre 2004
Messages : 735
Détails du profil
Informations personnelles :
Âge : 33
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : novembre 2004
Messages : 735
Points : 924
Points : 924
Je pense que cela doit marcher mais peut-être consomateur de ressource si beaucoup d'utilisateurs simultanés ( A bloque B, C,D arrivent, A a fini B accède au fichier, G,H,I,J,K sont là, etc.....)

Je demandais le type de contenu du fichier pour voir si la méthode de stockage des informations accédées ne pouvait être amélioré ou modifié

Pierre
FCYPBA est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/09/2006, 13h17   #9
Membre régulier
 
Homme Mallory
Étudiant
Inscription : septembre 2006
Messages : 213
Détails du profil
Informations personnelles :
Nom : Homme Mallory
Âge : 22
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : septembre 2006
Messages : 213
Points : 75
Points : 75
Envoyer un message via MSN à Oprichnik Envoyer un message via Skype™ à Oprichnik
Merci, Et bien c'est un fichier ligne par ligne que je récupère avec file()
Oprichnik est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h52.


 
 
 
 
Partenaires

Hébergement Web