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

Web Perl Discussion :

cgi et php compatibles?


Sujet :

Web Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 43
    Par défaut cgi et php compatibles?
    Bonjour à tous,

    je voulais savoir s'il est possible de lancer un script cgi à partir d'une page php, (par html j'ai pas de soucis ça marche...), car en fait mon script cgi se lance à partir d"un formulaire et me renvoie un fichier, seulement je reste sur la même page web, je comptais sur php pour pouvoir modifier ça...
    S'il existe une solution en html, je suis aussi preneuse, car pour le moment, je n'ai vu que des scripts cgi produisant une nouvelle page, mais du coup ne permet pas le renvoi d'un fichier à l'utilisateur...
    ou alors peut-on inclure un script (pour générer une nouvelle page html) dans un script créant un fichier à télécharger par l'utilisateur (à partir des données d"un formulaire rempli par l'utilisateur)?

    Merci d'avance pour vos réponses !!

  2. #2
    Expert confirmé
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Par défaut
    Si j'ai bien compris, tu veux charger une nouvelle page HTML et lancer un téléchargement automatiquement ?
    Dans ce cas il faut faire une redirection vers le fichier dans la page HTML, soit par javascript, soit par une balise meta, soit par un header (mais les header ne marchent pas toujours super).

    --
    Jedaï

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 43
    Par défaut
    Euh oui je voudrais charger une nouvelle page et en même temps un téléchargement de fichier qui a été crée par un script cgi; ce script lui-même prend en upload un fichier choisi par l'utilisateur via le formulaire de la première page... (là c'est la 1ere étape où j'avais aussi demandé de l'aide...)

    avec l'option :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    print $cgi->header(-type=>'text/fasta',
                                 -charset=>'utf-8',
                                 -attachment=>$fichier.'.fasta');
    dans le script cgi j'arrive à lancer le téléchargement automatique du fichier de sortie mais je reste sur la page html du formulaire... c'est là que je voudrais un peu changer ça...

    j'espère avoir été plus précise!

    Merci pour ta première piste Jedai, je vais voir si on peut rediriger un fichier qu'on vient de créer.. (je sais pas s'il est stocké quelque part après sortie du cgi...)

  4. #4
    Expert confirmé
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Par défaut
    Citation Envoyé par chong Voir le message
    Merci pour ta première piste Jedai, je vais voir si on peut rediriger un fichier qu'on vient de créer.. (je sais pas s'il est stocké quelque part après sortie du cgi...)
    Mais non ! Tu rajoutes simplement une redirection vers le CGI qui crée ton fichier dans la page HTML que tu génères en réponse à la validation du formulaire !

    Autrement dit tu as : "Formulaire --- requête --> Page HTML (généré par PHP ou CGI) --- redirige --> fichier fasta (généré par CGI)"

    --
    Jedaï

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 43
    Par défaut
    Oui ca j'y avais pensé mais je n'arrive pas à récupérer le fichier à uploader dans le script!

    page 1
    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
    <!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" xml:lang="fr">
    <head>
        <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
        <title class=titre>Test</title>
    	<link href="style.css" rel="stylesheet" media="screen" type="text/css" title="Style"/>    
    		</head>
     
     
    <body>
    	<p>
    	Test
    	<form action="try.php" enctype="multipart/form-data" method="post">
    	<input type=text title='Nom du fichier' name=nom></p>
    	<input type=file name=fichier>
    	<input type="submit" value="OK" >
    	</form>
     
     
     
    </body>
    </html>
    ce qui conduit à la page 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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    <!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" xml:lang="fr">
    <head>
        <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
        <title class=titre>Test 1</title>
    	<link href="style.css" rel="stylesheet" media="screen" type="text/css" title="Style"/>    
    		</head>
     
     
    <body>
    	<p>
    	Bonjour!
    	</p>
    	Votre fichier s'apellera <?php echo $_POST['fich'];?>
    	Le fichier initial est <?php echo $_FILES['fichier']['name'];?>
     
    	<form action="/cgi-bin/script.cgi" method="post">
    	<input type=hidden name=fichier value=<?php echo $dossier . $fichier ;?>>
    	<input type=hidden name=nom value=<?php echo $_POST['fich'];?>>
     
    	<input type="submit" value="OK" Name="action1">
    	</form>
     
     
     
    </body>
    </html>
    et là quand je submit il ne récupère pas le fichier.. le script cgi se lance mais est vide...
    ptet que je me suis plantée sur les variables, j'ai un peu regardé ce qui était dispo sur le web pour les tutos mais c'est pas top...

    EDIT: Pas de solution je me contenterai de lancer un cgi et puis d'un menu pour changer de page....

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

Discussions similaires

  1. CGI et PHP configuration apache
    Par lioudow dans le forum Apache
    Réponses: 1
    Dernier message: 16/08/2007, 17h54
  2. [PHP-JS] Le javascript et le PHP - Compatible ?
    Par bilou95 dans le forum Langage
    Réponses: 8
    Dernier message: 03/04/2007, 15h36
  3. Word/PDF et PHP, compatibles ?
    Par kevinf dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 05/02/2007, 22h39
  4. Script cgi ou php pour redémarrer Apache
    Par rogerstudio dans le forum Apache
    Réponses: 5
    Dernier message: 08/12/2006, 19h13

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