lancer exécutable et souci pour forcer téléchargement

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : lancer exécutable et souci pour forcer téléchargement

Re: lancer exécutable et souci pour forcer téléchargement

par loki42 » 11 avr. 2013, 11:16

J'ai pu régler certain problème. J'aimerais maintenant juste de l'aide pour lancer un fichier .cmd via mon programme php. Encore une fois je n'y arrive que si ce fichier est placé dans le dossier www de wamp. J'aimerais pouvoir le lancer lorsque je le place dans le dossier script_exe qui est contenue dans www. J'utilise la commande:
exec(c://wamp//www//script_exe//goUSB1.cmd
De plus, si quelqu'un avait un lien pour un tuto listant les mesures de sécurité à prendre en php je serais preneur.

lancer exécutable et souci pour forcer téléchargement

par loki42 » 09 avr. 2013, 17:03

Bonjour.
Je dois dans le cadre d'un stage réalisé un site en php (en utilisant wamp). Etant totalement débutant en html et php j'ai lu de nombreux tutoriel mais je rencontre des problèmes que je ne parviens à résoudre.
Tout d'abord je ne parviens pas à lancer un fichier .cmd si il n'est pas directement dans le répertoire www. j'utilise la fonction exec et cela fonctionne que si l'exécutable est dans www. Cet exécutable crée un fichier .txt dans le même répertoire, que l'utilisateur doit télécharger, et je me demande ci cela ne pose pas un problème de sécurité.

Ensuite, je veux donc que l'utilisateur puisse télécharger ce fichier .txt en cliquant sur un bouton (La fenêtre avec ouvrir et enregistrer apparaît.) J'utilise:
$file=$_GET['file']; 

if (($file != "") && (file_exists("./" . basename($file)))) 
{ 
$size = filesize("./" . basename($file)); 
header("Content-Type: application/force-download; name=\"" . basename($file) . "\""); 
header("Content-Transfer-Encoding: binary"); 
header("Content-Length: $size"); 
header("Content-Disposition: attachment; filename=\"" . basename($file) . "\""); 
header("Expires: 0"); 
header("Cache-Control: no-cache, must-revalidate"); 
header("Pragma: no-cache"); 
readfile("./" . basename($file)); 
exit(); 
} 
(J'ai trouvé sa dans un forum et j'ai modifié 2/3 choses mais qui ne sont pas source de mon problème).

Mon souci est que le fichier .txt est modifié. Au lieu d'avoir

xxxxxxxxxxxxxxxxxxxxxx

J'ai tout le body en plus jusqu'au exit():

href="index.php">Home page</a></li>


<li><a href="essai.php">Contact us</a></li>
<li><a href="upload/configuration.php">FPGA device configuration</a></li>
<li><a href="recuperation_carte.php">Launch data acquisition</a></li>
<br>
<li><a href="upload_download.php">Upload configuration data and download generated random bitstream</a></li>
<li><a href="simulation_test2.php">Simulation</a></li>

</ul>
</div>
</nav>

<section id="main"><!-- #main content and sidebar area -->
<!-- <section id="content">#content -->
Example of input script with the corresponding output script : <br /><a href=test_script_source/bus_script_in1.txt>"bus_script_in1.txt"</a><br /><a href=test_script_source/bus_script_out1.txt>"bus_script_out1.txt"</a><br /> <form method="POST" action="simulation_test2.php" enctype="multipart/form-data">
<!-- On limite le fichier à 100Ko -->
<input type="hidden" name="MAX_FILE_SIZE2" value="1000000000">
Choose the script file you want to upload : <input type="file" name="avatar2">
<input type="submit" name="envoyer" value="Uploader le fichier">
<br/>
<input type="submit" name="execute" value="execute the command and download your file">
xxxxxxxxxxxxxxxxxxxxxxxxxxx


Si vous voulez des précisions demandez moi.
Merci d'avance pour vos réponses.