Lancer script php via bouton

Résolu
flopad Messages postés 528 Date d'inscription mercredi 28 septembre 2005 Statut Membre Dernière intervention 6 mars 2009 - 12 janv. 2006 à 17:33
flopad Messages postés 528 Date d'inscription mercredi 28 septembre 2005 Statut Membre Dernière intervention 6 mars 2009 - 13 janv. 2006 à 08:57
Bonjour tout le monde,
J'ai le code suivant, je voudrais lancer ce script via un bouton cliquable, et que ca me demande ensuite de télécharger le fichier, comment faire????

CODE :
<?php

$base="D:\\Qualite\Annuaire\Annuaire.mdb";
$Annuaire="Annuaire";

//connection au serveur:
$cnx = odbc_connect( "DSN_Annuaire","" ,"") or die ("Impossible de se connecter à la base de donnée") ;

$requete = "SELECT * FROM $Annuaire ORDER BY Nom" ; // on sélectionne les enregistrements
$req = odbc_do($cnx, $requete);
$res = odbc_num_rows($req); // on compte le nombre de résultats

$file = ("..\Annu\Annuaire.xls"); // le fichier doit déjà exister
if(!$file = fopen($file, "w")) //on ouvre le fichier
{
print("'$file' n'existe pas!\n");
exit;
}

while ( odbc_fetch_row($req) ) { // chaque fois que "$req" est dif. de "$i", donc qu'il y a un enreg.

//on récupère les champs
$Nom = odbc_result($req,"Nom");
$Societe = odbc_result($req,"Societe");
$Service = odbc_result($req,"Service");
$Fixe = odbc_result($req,"Fixe");
$Fixe_abrege = odbc_result($req,"Fixe_abrege");
$Fax = odbc_result($req,"Fax");
$Portable = odbc_result($req,"Portable");
$Abrege_fp = odbc_result($req,"Abrege_fp");
$Mail = odbc_result($req,"Mail");


//ecriture
fputs($file,"$Nom\t $Societe\t $Service\t $Fixe\t $Fixe_abrege\t $Fax\t $Portable\t $Abrege_fp\t $Mail\n"); //une tabulation \t pour changer de colonne et un retour chariot \n pour changer de ligne

}

?>

MERCI

8 réponses

cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
12 janv. 2006 à 20:06
en haut de ton script, et ensuite le readfile tu le mets en bas.

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
3
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
12 janv. 2006 à 17:53
Hello,

il faut passer par une soumission de formulaire, pour le bouton.
PHP, pour la énième fois, est exécuté côté SERVEUR, et ne peut donc pas être exécuté à partir d'un évènement côté client (sauf en passant par les requêtes xmlhttp, mais juste pour ça, ce serait inutile je pense).
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
12 janv. 2006 à 17:53
Salut,

pour lancer ce script via un lien bah c'est comme tu le ferais : [page.php <li>]Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
0
flopad Messages postés 528 Date d'inscription mercredi 28 septembre 2005 Statut Membre Dernière intervention 6 mars 2009
12 janv. 2006 à 18:12
Ok mais je comprends pas ou mettre ceci :

<?php
header("Content-disposition: attachment; filename=(..\Annu\Annuaire.xls)");
header("Content-Type: application/force-download");
readfile("..\Annu\Annuaire.xls");
?>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
flopad Messages postés 528 Date d'inscription mercredi 28 septembre 2005 Statut Membre Dernière intervention 6 mars 2009
13 janv. 2006 à 08:15
J'ai l'erreur suivante.... et ca m'affiche tout le contenu de ma bdd sur ma page php au lieu de me lancer le téléchargement :
Warning: Cannot modify header information - headers already sent by (output started at D:\qualite\convertisseur.php:8) in D:\qualite\convertisseur.php on line 9

Warning: Cannot modify header information - headers already sent by (output started at D:\qualite\convertisseur.php:8) in D:\qualite\convertisseur.php on line 10

CODE :
<html>


<head>
</head>





<?php
header("Content-disposition: attachment; filename= (..\Annu\Annuaire.xls)");
header("Content-Type: application/force-download");
?>


<?php


$base ="D:\\Qualite\Annuaire\Annuaire.mdb";
$Annuaire="Annuaire";


//connection au serveur:
$cnx = odbc_connect( "DSN_Annuaire","" ,"") or die ("Impossible de se connecter à la base de donnée") ;


$requete = "SELECT * FROM $Annuaire ORDER BY Nom" ; // on sélectionne les enregistrements
$req = odbc_do($cnx, $requete);
$res = odbc_num_rows($req); // on compte le nombre de résultats

$file = ("..\Annu\Annuaire.xls"); // le fichier doit déjà exister
if(!$file = fopen($file, "w")) //on ouvre le fichier
{
print("'$file' n'existe pas!\n");
exit;
}

while ( odbc_fetch_row($req) ) { // chaque fois que "$req" est dif. de "$i", donc qu'il y a un enreg.

//on récupère les champs
$Nom = odbc_result($req,"Nom");
$Societe = odbc_result($req,"Societe");
$Service = odbc_result($req,"Service");
$Fixe = odbc_result($req,"Fixe");
$Fixe_abrege = odbc_result($req,"Fixe_abrege");
$Fax = odbc_result($req,"Fax");
$Portable = odbc_result($req,"Portable");
$Abrege_fp = odbc_result($req,"Abrege_fp");
$Mail = odbc_result($req,"Mail");


//ecriture
fputs($file,"$Nom\t $Societe\t $Service\t $Fixe\t $Fixe_abrege\t $Fax\t $Portable\t $Abrege_fp\t $Mail\n"); //une tabulation \t pour changer de colonne et un retour chariot \n pour changer de ligne


}
readfile("..\Annu\Annuaire.xls");
?>





</html>

Merci encore....
0
flopad Messages postés 528 Date d'inscription mercredi 28 septembre 2005 Statut Membre Dernière intervention 6 mars 2009
13 janv. 2006 à 08:19
C'est bon, j'ai viré les balises html qui ne servaient strictement à rien....
0
flopad Messages postés 528 Date d'inscription mercredi 28 septembre 2005 Statut Membre Dernière intervention 6 mars 2009
13 janv. 2006 à 08:51
Excusez moi j'ai encore un dernier soucis....
Quand le lance le téléchargement, ce n'est pas le bon nom de fichier qui s'affiche autrement dit Annuaire.xls mais le nom de ma page php (Convertisseur)....
Comment résoudre ça??

MERCI.....
0
flopad Messages postés 528 Date d'inscription mercredi 28 septembre 2005 Statut Membre Dernière intervention 6 mars 2009
13 janv. 2006 à 08:57
Aussi, si je récupère ce fichier "convertisseur" portant le nom de la page php et que j'essaie de l'ouvrir avec excel, j'ai une erreur dedans qui dit :

Warning: readfile(Resource id #3): failed to open stream: No such file or directory in D:\qualite\Convertisseur.php on line 45
0
Rejoignez-nous