Dépassement de mémoire

Répondre
kerso4
le 21/07/2009 à 18:01
kerso4
Bonjour,
Je ne sais pas trop si cette question a déjà été traitée, mais voici mon pb:
Je veux créer une galerie miniature comme cela est decrit dans le tutorial de ce site.

Tout est nickel (bien penser à nommer dans le repertoire admine le fichier index.php et non admin.php (ou bien modifier le code))
Mais lors que je lance dans le repertoire admin le fichier index.php pour creer des miniature, j'obtiens le message d'erreur suivant:
Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 12032 bytes) in /share/MD0_DATA/Qweb/admin/index.php on line 39

Je ne sais pas troip ou aller voir pour vérifier quelle est la taille mémoire de mon QNAP, mais bon, l'image fait 2,5 Mo uniquement. C'est pas la mer a boire non plus.

Merci de votre aide

Config
NAS QNAP TS409 sous Linux
Apache/1.3.41 (Unix) PHP/5.2.9
Client sous Vista
LA GLOBULE
le 21/07/2009 à 18:24
LA GLOBULE
PHP est un vrai gruyere en terme d'occupation mémoire. Pour cela, c'est vraiment un langage moisi :)

Il va falloir repenser ta galerie ou bien augmenté la taille de ram que peut consommer PHP (la variable memory_limit du fichier php.ini).
LupusMic
le 22/07/2009 à 06:50
LupusMic
Certes PHP n'est pas fort sur la gestion de la mémoire, mais en l'occurence, je pense que ce n'est pas PHP le méchant.

Une image qui pèse 2Mo doit en peser bien plus en mémoire, sous forme de bitmap. Il doit y avoir des optimisation qui permettent d'éviter de charger toute l'image d'un coup, mais même comme ça, c'est difficile de travailler avec des images.

Donc comme dis la Globule, faut augmenter la RAM que PHP s'autorise.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
kerso4
le 22/07/2009 à 08:23
kerso4
Bonjour et merci pour vos réponse.En fait, j'avais déjà trouvé sur Internet une astuce en rajoutant dans le code de la page index.php (répertoire admin) la ligne suivante:

ini_set("memory_limit","12M");

Je suis même monté a 16M mais j'ai toujours le même problème.

Maintenant, la question, si je doit modifier le fichier php.ini, ou dois je aller?
Merci
LA GLOBULE
le 22/07/2009 à 10:28
LA GLOBULE
Le changement de taille a bien été pris en compte ?
Genre dans l'erreur, tu vois si c'est bien 16Mo qui sont consommés ?

Sinon, tu affiches combien d'images sur ta page ?

(T'aurais pas une boucle infinie qui bourrine des trucs en RAM ?)
LupusMic
le 22/07/2009 à 20:02
LupusMic
Si la mémoire n'est pas suffisante, il faut effectivement augmenter a limite jusqu'à ce que tu n'es plus le problème. Et surtout observer l'évolution du message d'erreur.

Et fait péter le code, qu'on essaye de voir ce qui ne va pas.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours