diff --git a/adminstuds.php b/adminstuds.php index 924fd6c7342807001e475cd504333092650ca866..481968ebf550d3cd56272dc91417681dc47b182d 100644 --- a/adminstuds.php +++ b/adminstuds.php @@ -46,17 +46,31 @@ if (file_exists('bandeaux_local.php')) else include_once('bandeaux.php'); -// recuperation du numero de sondage admin (24 car.) dans l'URL -$numsondageadmin=$_GET["sondage"]; -//on découpe le résultat pour avoir le numéro de sondage (16 car.) -$numsondage=substr($numsondageadmin, 0, 16); - -if (preg_match(";[\w\d]{16};i",$numsondage)){ +// Initialisation des variables +$numsondageadmin = false; +$sondage = false; - $sondage=$connect->Execute("SELECT * FROM sondage WHERE id_sondage_admin = '$numsondageadmin'"); - $sujets=$connect->Execute("SELECT * FROM sujet_studs WHERE id_sondage='$numsondage'"); - $user_studs=$connect->Execute("SELECT * FROM user_studs WHERE id_sondage='$numsondage' order by id_users"); +// recuperation du numero de sondage admin (24 car.) dans l'URL +if (isset($_GET['sondage']) && !empty($_GET['sondage']) && is_string($_GET['sondage']) && strlen($_GET['sondage']) === 24) { + $numsondageadmin=$_GET["sondage"]; + //on découpe le résultat pour avoir le numéro de sondage (16 car.) + $numsondage=substr($numsondageadmin, 0, 16); +} +if (preg_match(";[\w\d]{24};i", $numsondageadmin)) { + $sql = 'SELECT * FROM sondage WHERE id_sondage_admin = '.$connect->Param('numsondageadmin'); + $sql = $connect->Prepare($sql); + $sondage = $connect->Execute($sql, array($numsondageadmin)); + + if ($sondage !== false) { + $sql = 'SELECT * FROM sujet_studs WHERE id_sondage = '.$connect->Param('numsondage'); + $sql = $connect->Prepare($sql); + $sujets = $connect->Execute($sql, array($numsondage)); + + $sql = 'SELECT * FROM user_studs WHERE id_sondage = '.$connect->Param('numsondage').' order by id_users'; + $sql = $connect->Prepare($sql); + $user_studs = $connect->Execute($sql, array($numsondage)); + } } //verification de l'existence du sondage, s'il n'existe pas on met une page d'erreur