[PHP]Exécution script coté serveur [Résolu/Fermé]

Signaler
-
 touillettes -
Bonjour,

Je suis déséspérement a la recherche de la solution a mon probléme :) ! Je voudrais éxécuter un script bat sur le serveur depuis mon interface PHP ce script prend un argument que je lui fournit via mon code PHP.

Le script quand je l'éxécute depuis l'invite de commande de mon serveur fonctionne mais l'orsque je l'éxécute depuis mon interface ça ne marche pas je pense qu'il est éxécuter coté client, auriez vous une solution même avec une grosse faille de sécurité c'est pour un projet interne

Voila le bout de code

Merci d'avance
<?php

session_start();

if(!isset($_SESSION['dicid'])) {
header('Location: denied.php');
}

include("_menuadm.php");
$path="C:\Documents and Settings\BARREB\Bureau\\test\\";


$jour=$_POST['jour'];
$mois=$_POST['mois'];
$annee=$_POST['annee'];
if(empty($jour) || empty($mois))
{
echo "<h3> Veuillez renseigner tous les champs </h3>";
echo "<br><a href=\"adm_reload.php\">Retour à la page de rechargement de la Base";
exit();
}

$file=$jour.$mois;
$file.=".sql";
$path .=$file;

if (file_exists($path))
{
system("redo.bat $file");
echo "La Base de donnée a été rénover en date du $jour/$mois/$annee <br>";
}
else
{
echo "Le fichier $file n'existe pas.Veuillez séléctioner un fichier existant<br><br>";
echo "<a href=\"adm_reload.php\">Choisir une nouvelle date<br> ";
}
?>
<a href="adm_index.php">Retour à la page d'accueil

4 réponses

Messages postés
18448
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
11 octobre 2020
4 216
Le fichier .bat est-il dans le même dossier que ta page .php ?
Essaye en indiquant le chemin absolu depuis la racine du disque dur, et mets le chemin entre parenthèses si il contient des caractères spéciaux ou des espaces.
Oui il est dans le même dossier tu veux dire entre Double Quote ou vraiment entre parenthése ?
Messages postés
18448
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
11 octobre 2020
4 216
Merde, j'ai voulu dire entre guillemées (double quotes si tu préfère l'anglais).
Par exemple : system('"C:\Documents and Settings\BARREB\Bureau\test\redo.bat" '.$file);
Comment dire .....
je pense qu c'est simple MERCI

vraiment vraiment vraiment vraiment vraiment vraiment MERCI

BOnne fin de journée