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.
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:
[php]
$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();
}
[/php]
(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.