IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

URL avec variable


Sujet :

Langage PHP

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France, Drôme (Rhône Alpes)

    Informations forums :
    Inscription : Août 2007
    Messages : 197
    Par défaut URL avec variable
    Bonjour à toutes et tous,

    Je prépare un petit prog pour créer un dossier, uploader un dossier en zip, et normalement le decompresser dans le dossier précédement créé.
    C'est là que ça se corse.
    J'ai un petit formulaire pour créer le dossier :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <form enctype="multipart/form-data" method="post" action="zip2.php"> 
     
      <label>Nom du dossier avec / a la fin : <input type="text" name="dossier" /></label>  
     <br /> 
     <input type="submit" name="submit" value="Envoyer" /> 
     </form>
    Jusqu'ici tout va bien, puis un petit prog pour créer ce dossier
    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
     
    <?php
    $structure = 'photos/galleries/';
    $dossier = $_POST['dossier'];  
     
    if(@mkdir ($structure . $dossier,0777,true)) { 
    	echo"Dossier cr&eacute;&eacute;";  
    } else { 
    	echo"En attente du nom de dossier"; 
    } 
     
     
    ?>
    <form method=POST action=zip.php>
       <input type="hidden" name="var1" value="<?php echo "".$structure."" ?>"></input>
       <input type="hidden" name="var2" value="<?php echo "".$dossier."" ?>"></input>
       <input type="submit" value="Charger photos"></input>
    </form>
    Puis je recupere tout ça pour charger le zip et le decompresser dans le dossier créé avec ce code là :
    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
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
     
    <?php
    // pour vérifier que tout s'est bien passé
    $_POST["var1"];
    $_POST["var2"];
    $structure= $_POST["var1"];
    $dossier= $_POST["var2"];
    $chemin = $structure . $dossier ;
    echo $chemin;
     
    ?>
    <?php 
     if( $_FILES [ "zip_file" ][ "name" ]) { 
     $filename = $_FILES [ "zip_file" ][ "name" ]; 
     $source = $_FILES [ "zip_file" ][ "tmp_name" ]; 
     $type = $_FILES [ "zip_file" ][ "type" ]; 
     
     $name = explode ( "." , $filename ); 
     $accepted_types = array( 'application/zip' , 'application/x-zip-compressed' , 'multipart/x-zip' , 'application/x-compressed' ); 
     foreach( $accepted_types as $mime_type ) { 
     if( $mime_type == $type ) { 
     $okay = true ; 
     break; 
     } 
     } 
     
     $continue = strtolower ( $name [ 1 ]) == 'zip' ? true : false ; 
     if(! $continue ) { 
     $message = "Le fichier que vous essayez de charger n'est pas de type .zip.Essayer a nouveau." ; 
     } 
     
     $target_path = $chemin . $filename ; 
     if( move_uploaded_file ( $source , $target_path )) { 
     $zip = new ZipArchive (); 
     $x = $zip -> open ( $target_path ); 
     if ( $x === true ) { 
     $zip -> extractTo ( $chemin ); 
     $zip -> close (); 
     
     unlink ( $target_path ); 
     } 
     $message = "Votre fichier .zip est uploade et decompresse." ; 
     } else { 
     $message = "Il y a un probleme avec upload. Essayez a nouveau." ; 
     } 
     } 
     ?> 
     <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
     <html xmlns="http://www.w3.org/1999/xhtml"> 
     <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
     <title>Untitled Document</title> 
     </head> 
     
     <body> 
    <?php if( $message ) echo "<p> $message </p>" ; ?> 
     <form enctype="multipart/form-data" method="post" action=""> 
     <label>Choisir le fichier .zip : <input type="file" name="zip_file" /></label>
     
     <br /> 
     <input type="submit" name="submit" value="Upload" /> 
     </form> 
     </body> 
     </html>
    C'est ici que ca m.... à mon avis ce sont les lignes 32 et 37 par rapport au chemin du dossier qui ne vont pas, et j'avoue bien que là, je suis planté.

    Si l'un de vous peut m'aider dans cette galère je lui en serai reconnaissant
    En tout cas merci de vous pencher sur ce problème... Et bonne journée

    Cordialement

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France, Drôme (Rhône Alpes)

    Informations forums :
    Inscription : Août 2007
    Messages : 197
    Par défaut PETITE MODIF
    J'ai fais une petite modif à la ligne 39 j'ai remplacé /
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $zip -> extractTo ( $chemin );
    par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $zip -> extractTo ( 'photos/galleries/' .$dossier. '/' );
    Les dossiers seront toujours créés dans photos/galleries/
    Ca me dézipe mes dossier mais dans le dossier galleries, pas dans celui que j'ai créé

    Si ça vous dit...

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France, Drôme (Rhône Alpes)

    Informations forums :
    Inscription : Août 2007
    Messages : 197
    Par défaut SOLUTION
    J'ai trouvé la solution... en fait je perdais la valeur de la variable J'ai séparé le formulaire de la validation en récupérant au passage cette fameuse variable...et ca marche

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PHP-JS] Netoyage d'une URL avec variables
    Par giloutho dans le forum Langage
    Réponses: 5
    Dernier message: 08/10/2006, 23h31
  2. [EasyPHP] impossible de faire des URLS avec variable
    Par SandraG dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 9
    Dernier message: 30/03/2006, 17h38
  3. http_referer et url avec variable
    Par yaka2 dans le forum Langage
    Réponses: 3
    Dernier message: 02/03/2006, 14h41
  4. [HTML] URLs avec variable et validation W3C
    Par pirouette_07 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 11/10/2005, 11h27
  5. Cacher Variable Url avec Variable Globale
    Par danuz dans le forum XMLRAD
    Réponses: 6
    Dernier message: 26/09/2003, 17h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo