-
PHP fait planter Apache
Bonjour tout le monde,
Alors voici ma situation: J'utilise un script PHP pour lire plusieurs fichiers Excel et les importer dans une base de données MySQL. Pour ce faire, j'utilise l'interface COM de Excel, ce qui fonctionne à priori très bien. J'arrive à lire mes fichiers, j'arrive ensuite à créer une requête Insert qui insère correctement les données dans la base de données... mais le problème c'est que ça ne marche que 150 fois environ. Après ça, Apache plante et je reçois le message suivant de Windows:
Problem Event Name: APPCRASH
Application Name: apache.exe
Application Version: 2.2.15.0
Application Timestamp: 4b8fed95
Fault Module Name: php5ts.dll
Fault Module Version: 5.3.2.0
Fault Module Timestamp: 4b8ebac2
Exception Code: c0000005
Exception Offset: 00084491
OS Version: 6.1.7600.2.0.0.256.48
Locale ID: 3084
Additional Information 1: 0a9e
Additional Information 2: 0a9e372d3b4ad19135b953a78882e789
Additional Information 3: 0a9e
Additional Information 4: 0a9e372d3b4ad19135b953a78882e789
Quelqu'un aurait-il une idée de ce qui peut causer ça. Le code que j'utilise est long pour poster sur un forum, mais si c'est nécessaire, je vais le mettre. La seule piste que j'ai c'est que peut-être les requêtes sont envoyé trop vite pour que le serveur les traite, mais même en mettant des sleep, ça ne change absolument rien. Alors je suis un ti peu à court d'idée.
Merci d'avance,
Osu
-
Tu peux aller voir le fichier de log généré par Apache pour plus de renseignements sur le plantage
-
Ce fut mon premier réflexe, mais je ne le vois nulle part. J'ai fait l'installation avec EasyPHP mais je ne vois pas dans quel dossier il store ses logs (J'ai essayé le dossier 'logs', mais tout ce que j'ai c'est HTTPD.pid, qui ne contient qu'un nombre).
-
Permettez-moi de répondre à ma propre question, pour ceux que ça intéresserait. Apparemment, le problème venait d'une utilisation à outrance de la fonction PHP strcmp. J'ai modifié mes conditions pour utiliser l'opérateur "===" et tout fonctionne parfaitement maintenant.