Salut,
j'utilise un petit script php pour uplaoder mes fichiers et les enregistrer dans une base de données dans un fichier longtext.
1 2 3 4 5 6 7 8 9 10 11 12
| if ($_FILES['user_file']['size'] > 0)
{
$db_comments_field = $target.'_comments';
$comments_field_content = $_POST[$target.'_comments'];
$img = $_FILES['user_file']['tmp_name'];
$fp = fopen($img,"r");
$data = fread($fp,filesize($img));
fclose($fp);
$data = addslashes($data);
mysql_query("UPDATE research SET $target='$data', $db_comments_field='$comments_field_content' WHERE id_research='$id'");
$message .= $target." image uploaded <br />";
} |
ça fonctionne très bien pour les photos "légères", par exemple 840 ko, 560 ko,...
Mais ça ne fonctionne pas pour les photos pesant plus de (environ) 990 ko, disons proche de 1 Mo! Mon champ reste vide.
De plus, si j'upload une photo de 991 ko (c'est à dire à la limite). ma photo s'affiche correctement, mais par contre j'ai un message d'erreur dans phpmyadmin:
Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 1024461 bytes) in /var/www/html/phpMyAdmin/libraries/common.lib.php on line 393
Je n'ai pas assigné de valeur à mon champ longtext, faut-il que j'en mette une?
Avez-vous une idée de ce qui pourrait provoquer cette bizarrerie? Y-a-t-il une limite dans mysql, sur apache ou autre?
merci d'avance pour votre aide.
Julien
Partager