Bonjour,

Je ne sais pas trop si je dois passer ce message sur le forum JS, Ajax, ou PHP.

J'ai un form, avec un input fichier en plus du reste.
Je passe mes infos par Ajax pour ne pas recharger la page.

Je ne sais pas comment passe mon fichier pour le passer en même temps que mon form. Je dois donner au nom du fichier le N° id (auto-incrément) de l'insertion des infos en bdd.

Je vous donne mes codes ci-après
Coté php c'est un traitement normal des données, insertion ou update en bdd.

mon souci c'est donc la gestion du fichier à upaloder.

Bonne journée


Résumé schématique du form :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
<FORM NAME='event_form' ID='event_form' METHOD="POST" ENCTYPE="multipart/form-data"  action="./form_result_event.php?goto=event">
<!-- PHP -->
echo "
<input type='hidden' name='user' value='".$artiste_id."' />
<input type='hidden' name='artiste_forum_id' value='".$artiste_forum_id."' />
";
<!-- ENDPHP -->
<input type='hidden' name='max_file_size' value='10485760'><input type='file' name='fichier' size='10'>
Code ajax
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
33
34
35
36
37
38
 
function send2ajax(action,i,id,lieu,date)
{
	f=document.event_form; // f est l'objet formulaire
	// PREPARATION DES DONNEES
	info ="u="+f.user.value;
	info+="a="+f.artiste_forum_id.value;
 
	run_ajax('form_result_event.php',info); // on appelle la fonction 
}
 
function run_ajax(file,data)
{
	var reg=new RegExp(" ", "g");
	data=data.replace(reg,"%20");
	//alert(file+"/"+donnees);
	var xhr_object = null;
	if(window.XMLHttpRequest) // Si Firefox
		xhr_object = new XMLHttpRequest();
	else if(window.ActiveXObject) // Si Internet Explorer
		xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
	else
	{
		// XMLHttpRequest non supporté par le navigateur
		alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
		return;
	}
	xhr_object.open("POST", "./"+file, true);
	xhr_object.onreadystatechange = function() 
	{
		if(xhr_object.readyState == 4)
		// alert(xhr_object.responseText);
		eval(xhr_object.responseText);
	}
 
	xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xhr_object.send(data);
}