Bjr,

j aimerais inérer une image ds ma base de données MySql.
ci dessous ma fonction:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
function transfert() {
	global $email;
 
	$ret = false;
	$img_blob = '';
	$img_taille = 0;
	$img_type = '';
	$img_nom = '';
	$taille_max = 250000;
	$ret = is_uploaded_file($_FILES['PhotoOB']['tmp_name']);
	if (!$ret) {
		echo "Problème de transfert";
		return false;
	} else {
		// Le fichier a bien été reçu
		$img_taille = $_FILES['PhotoOB']['size'];
		/*if ($img_taille > $taille_max) {
		 echo "Trop gros !";
		 return false;
		 }*/
		$img_type = $_FILES['PhotoOB']['type'];
		$img_nom = $_FILES['PhotoOB']['name'];
 
		$img_blob = file_get_contents($_FILES['PhotoOB']['tmp_name']);
 
		$requete = "INSERT INTO photos (id, img_nom, img_taille, img_type, img_blob ) 
		VALUES ('" . $email . "','" . $img_nom . "', " . "'" . $img_taille . "', " . "'" . $img_type . "', " . "'" . addslashes($img_blob) . "') ";
		$resultat = mysql_query($requete) or die(mysql_error());
 
		return true;
	}
}
Une erreur s'affiche:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Warning: mysql_query(): MySQL server has gone away
Quand j'utilise la clause insert sans la colonne img_blob tout fonctionnera comme il le faut.

J'ai trouvé sur internet qu'il fallait ajouter au code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
ini_set('mysql.connect_timeout', 300);
ini_set('default_socket_timeout', 300);
J'ai fait ça mais toujours la même erreur qui s'affiche!!!!

Merci d'avance pour votre aide.

Cordialement