bonjour,
J'aimerai récupérer une image postée sur un formulaire dans un fichier ouvert avec ajax. Cepedant, 'avatar' n'est pas défini dans le fichier ajax. Pouvez vous m'aidez s'il vous plait ?
Code html : 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 <html> <head> <title>Test images</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js" type="text/javascript"></script> </head> <body> <form method="post" action="resultats.php" onsubmit="return valider()" id="formulaire_test" enctype="multipart/form-data"> <input type="hidden" name="MAX_FILE_SIZE" value="1048576" /> <input type="file" name="avatar" id="avatar"/> <p></br></p> <input type="submit" value="valider" /> </form> </body> </html>
Ici, le fichier ajaximage.php
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 function valider(){ $.ajax({ url: 'ajaximage.php', type: 'POST', success: function(data){ if(data=="ok"){ alert('ca marche'); var valider=true; } else{ var valider=false; alert('Veuillez vérifier la taille, l\'extension et le poids de l\'image'); } } }); return valider; }
Code php : 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 <?php //Vérification de l'extension $extensions_valides = array( 'png' ); $extension_upload = strtolower( substr( strrchr($_FILES['avatar']['name'], '.') ,1) ); if ( in_array($extension_upload,$extensions_valides) ){ $exten=true; } else{ $exten=false; } //Vérification de la taille $image_sizes = getimagesize($_FILES['avatar']['tmp_name']); if ($image_sizes[0] == 50 AND $image_sizes[1] == 50){ $taille=true; } else{ $taille=false; } if($taille AND $exten){ echo "ok"; } else{ echo "pas ok"; } ?>
Merci de votre aide
Partager