Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/05/2011, 20h51   #1
Invité de passage
 
Homme
Stagiaire
Inscription : mai 2009
Messages : 22
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Canada

Informations professionnelles :
Activité : Stagiaire

Informations forums :
Inscription : mai 2009
Messages : 22
Points : 1
Points : 1
Par défaut Sauvegarder une image avec la fenêtre 'Enregistrer Sous'

Bonjour à tous,

Je suis en train de développer un Atlas numérique sur le web en utilisant Mapserver avec le PHP Mapscript.

Mais je rencontre un problème de php pur je pense, en effet j'aimerai donner la possibilité à mes utilisateurs d'exporter l'image qu'ils viennent de créer en choisissant le nom et l'endroit.
Je me suis dit j'utilise la fonction javascript
Code :
document.execCommand('SaveAs')
mais ça ne marche pas du tout...
Je l'appelle dans un fichier php en faisant
Code :
echo "<script langage=javascript>document.execCommand('SaveAs','.tif')</script>";
Si quelqu'un à une idée ou un conseil, je suis preneur.

Merci
BriocheNC est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/05/2011, 21h32   #2
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Il n'y a pas de php dans ce que tu nous montres.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/05/2011, 21h37   #3
Invité de passage
 
Homme
Stagiaire
Inscription : mai 2009
Messages : 22
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Canada

Informations professionnelles :
Activité : Stagiaire

Informations forums :
Inscription : mai 2009
Messages : 22
Points : 1
Points : 1
Ben en fait, je me suis peut-être mal exprimé...

Dans un fichier php, j'ai une image que j'aimerai sauvegarder en choisissant l'emplacement et le nom. J'ai checké un peu partout depuis un moment, le seul moyen est d'utiliser la fonction javascript execCommande dans mon fichier php...

Peut-être que je me fourvoie totalement...
BriocheNC est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/05/2011, 21h47   #4
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Tu ne peux pas choisir l'emplacement.
http://php.developpez.com/faq/langag..._forcedownload
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/05/2011, 22h01   #5
Invité de passage
 
Homme
Stagiaire
Inscription : mai 2009
Messages : 22
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Canada

Informations professionnelles :
Activité : Stagiaire

Informations forums :
Inscription : mai 2009
Messages : 22
Points : 1
Points : 1


Merci pour tes réponses et ton temps.
Je vais essayer de trouver une autre solution.
BriocheNC est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/05/2011, 20h57   #6
Invité de passage
 
Homme
Stagiaire
Inscription : mai 2009
Messages : 22
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Canada

Informations professionnelles :
Activité : Stagiaire

Informations forums :
Inscription : mai 2009
Messages : 22
Points : 1
Points : 1
Par défaut suivi

Salut,

Je viens de tester, j'ai mis pas mal de temps à comprendre et trouver un truc qui m'aille. Le code que j'exécute et qui marche presque est le suivant:
Code :
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
39
40
41
42
43
44
45
46
 
/*
Fonction pour enregistrer un fichier sur le disque dur client
*/
function downloadFile( $fullPath ){
 
  // Must be fresh start
  if( headers_sent() )
    die('Headers Sent');
 
  // Required for some browsers
  if(ini_get('zlib.output_compression'))
    ini_set('zlib.output_compression', 'Off');
 
  // File Exists?
  if( file_exists($fullPath) ){
 
    // Parse Info / Get Extension
    $fsize = filesize($fullPath);
    $path_parts = pathinfo($fullPath);
    $ext = strtolower($path_parts["extension"]);
 
    // Determine Content Type
    switch ($ext) {
      case "png": $ctype="image/png"; break;
      case "jpg": $ctype="image/jpg"; break;
	  case "tif": $ctype="application/force-download"; break;
      default: $ctype="application/force-download";
    }
 
    header("Pragma: public"); // required
    header("Expires: 0");
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
    header("Cache-Control: private",false); // required for certain browsers
    header("Content-Type: $ctype");
    header("Content-Disposition: attachment; filename=\"".basename($fullPath)."\";" );
    header("Content-Transfer-Encoding: binary");
    header("Content-Length: ".$fsize);
    ob_clean();
    flush();
    readfile( $fullPath );
 
  } else
    die('File Not Found');
 
}
la fonction ci-dessUs me permet d'avoir la popup 'enregistrer' qui apparait (ce que je cherchais à la base)

Ensuite un peu de bidouille pour passer le chemin qui va bien et voilà!

Encore merci pour ton aide


*******************
EDIT
*******************
Après plusieurs test, ça marche vraiment bien, j'ai bien le géoréférencement de mes cartes mais par contre ça me bloque mes autres outils... Je pense que ça a voir avec l'endroit où j'appelle la fonction.
BriocheNC est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h23.


 
 
 
 
Partenaires

Hébergement Web