Problème traitement de requête mysql/php

Rechercher

Problème traitement de requête mysql/php

Par xRadeOn  -  5 reponses  -  Le 18/09/2016 01:42  -  Editer  - 

Bonjour,
Alors voilà , j'ai construit une plateforme sous mysql/php qui traite un certain état de stock et une gestion de flux,
Tout fonctionne super bien depuis bien 2-3 mois , mais voilà alors qu'il m'est apparut un bug que je n'arrive pas à traiter , je m'explique :
Concernant les Entree en stock , je possède une liste d'environ 300-400 produits , j'ai donc un script formulaire où je rentre mes quantités , du classic.
Concernant mon fichier php cible , son fonctionnement est le suivant , tres classic aussi , il boucle sur toute mes lignes de ma table contenant mes produits , et de la il contrôle si il existe un POST le concernant ce produit ou non , et auquel cas il modifie la table contenant l'état des stock , ainsi qu'une table contenant les entrées de produit .
Donc voilà maintenant le problème , lorsque le programme boucle sur tout les produits , à partir d'un certain nombre ( je relève environ le 230 eme de la table ) il arrête et sort de la boucle , ne prenant donc pas en comptes les POST effectuer à partir de ce produit , mais pour les précédents aucun problème .

J'ai d'abord contrôler en direct sous phpmyadmin la table produit et je constate aucune anomalie flagrante dans la table , tout les produits sont bien dans la continuitée des précédents.
J'ai vérifier encore et encore mon script , et apparent rien ne peut le faire sortir de la boucle comme ca.
J'ai donc alors penser à un problème de complexité , qui forcerais directement php à sortir de la boucle , mais ça me paraîtrais quand même tres bisarre étant donnée que je n'ai pas vraiment beaucoup de produits .

J'attend alors vos recommandations , questions , solutions avec impatiente .
Merci d'avance
Salutations

 

Réponses apportées à cette discussion

Par Cyrano  -  Le 18/09/2016 15:14  -  Haut de page  - 

Salut,
il faudrait vérifier dans le php.ini (ou dans un phpinfo) si l'exécution ne dépasse pas la max_execution_time. Par défaut, c'est 30 secondes, donc au besoin, il faudrait le monter à une valeur plus importante.

 
Par xRadeOn  -  Le 19/09/2016 21:30  -  Haut de page  - 

Salut, j'ai testée en mettant de très grande valeurs , mais le problème est toujours la ..

 
Par Cyrano  -  Le 19/09/2016 21:58  -  Haut de page  - 

Je ne l'ai pas précisé, mais après avoir modifié le php.ini, il faut redémarrer Apache pour que ce soit pris en compte... ça pourrait venir de là ?

 
Par xRadeOn  -  Le 20/09/2016 11:27  -  Haut de page  - 

Je fonctionne sous un hébergeur mutualisé , je ne crois pas avoir accès à ca , j'ai déjà dut changer de version de php pour pouvoir augmenter mes valeurs.
Je précise donc que je doit modifier tout cela via cPannel

 
Par Cyrano  -  Le 20/09/2016 11:46  -  Haut de page  - 

Ha... sous mutualisé, impossible de modifier le php.ini.
par contre, il reste possible de modifier le max_execution_time dynamiquement avec ini_set() ... si la fonction n'est pas bloquée par l'hébergeur, à vérifier.

Sinon, il va falloir trouver une manière d'optimiser le code et/ou de découper l'exécution de telle sorte que chaque tranche ne dépasse jamais 30 secondes.

 

Ajouter une réponse à la discussion

Seuls les membres connectés sont autorisés à poster dans les forums !

Identifiez-vous
Join |  ID/MDP? |