Bonjour, je travaille sur un projet sur le quel l'utilisateur enregistre sa photo de profil après avoir recadrer ladite photo.
Je veux faire le traitement de la photo sur une fenêtre popup en lieu et place de la page. En d'autres termes, ajax appelle le fichier "upload_photo.php" dans une fenêtre en lui envoyant par post FILE.
Je veux qu'à la sélection de la photo la fenêtre de traitement s'ouvre avec la photo à recadrer.
script du popup
le fichier php qui ouvre la fenêtre : upload_photo.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <div id="popup_upload"> <div class="form_upload"> <span class="close" onclick="close_popup('popup_upload')">x</span> <h2>Upload photo</h2> <form action="#" name="formAjax" method="post" enctype="multipart/form-data" target="upload_frame"> <input type="file" name="photo" id="photo" class="file_input"> </form> </div> </div>
Script 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 <?php $photo_src = $_FILES['photo']['tmp_name']; if (is_file($photo_src)) { // photo path in our example $photo_dest = 'images/photo_'.time().'.jpg'; // copy the photo from the tmp path to our path copy($photo_src, $photo_dest); // call the show_popup_crop function in JavaScript to display the crop popup echo '<script type="text/javascript">window.top.window.show_popup_crop("'.$photo_dest.'")</script>'; } ?>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 <script language="javascript" type="text/javascript"> $(document).ready( function() { $("#photo").change(function() { var tof = $('#photo').val(); alert(tof); $.post('upload_photo.php', {'photo':tof}, function(data) { $('#results').html(data); // affichage des résultats qui doit se faire dans une fenetre }); }); }); </script>
Partager