diff --git a/Medecins.php b/Medecins.php index 7894038..fa744ff 100755 --- a/Medecins.php +++ b/Medecins.php @@ -5,13 +5,19 @@ if(!Authentification::checkUser(0)){ die(); }; + +function customCompression($input, $compression){ + if( $compression ) return strtr(base64_encode(addslashes(gzcompress(serialize($input),9))), '+/=', '-_,'); + else return unserialize(gzuncompress(stripslashes(base64_decode(strtr($input, '-_,', '+/='))))); +} + /* REPONSE DU MANAGER */ $managerStatus = (isset($_GET['status'])) ? $_GET['status'] : null; $managerTitle = (isset($_GET['title'])) ? $_GET['title'] : 'Oups!'; $managerMessage = (isset($_GET['message'])) ? $_GET['message'] : 'Erreur interne!'; // on récupère la liste des médecins si donnée -$medecinsSearch = ( isset($_GET['medecins']) ) ? json_decode(base64_decode($_GET['medecins']), true) : []; +$medecinsSearch = ( isset($_GET['medecins']) ) ? json_decode( customCompression($_GET['medecins'], false) , true) : []; ?> @@ -42,7 +48,7 @@ $medecinsSearch = ( isset($_GET['medecins']) ) ? json_decode(base64_decode($_GET

- +
diff --git a/Patients.php b/Patients.php index 2019ec3..879fe84 100755 --- a/Patients.php +++ b/Patients.php @@ -5,14 +5,19 @@ if(!Authentification::checkUser(0)){ die(); }; + +function customCompression($input, $compression){ + if( $compression ) return strtr(base64_encode(addslashes(gzcompress(serialize($input),9))), '+/=', '-_,'); + else return unserialize(gzuncompress(stripslashes(base64_decode(strtr($input, '-_,', '+/='))))); +} + /* REPONSE DU MANAGER */ $managerStatus = (isset($_GET['status'])) ? $_GET['status'] : null; $managerTitle = (isset($_GET['title'])) ? $_GET['title'] : 'Oups!'; $managerMessage = (isset($_GET['message'])) ? $_GET['message'] : 'Erreur interne!'; // on récupère la liste des médecins si donnée -$patientsSearch = ( isset($_GET['patients']) ) ? json_decode(base64_decode($_GET['patients']), true) : []; - +$patientsSearch = ( isset($_GET['patients']) ) ? json_decode( customCompression($_GET['patients'], false) , true) : []; ?> @@ -42,7 +47,7 @@ $patientsSearch = ( isset($_GET['patients']) ) ? json_decode(base64_decode($_GET

- +
diff --git a/managers/Medecin.class.php b/managers/Medecin.class.php index 737b902..4411d88 100755 --- a/managers/Medecin.class.php +++ b/managers/Medecin.class.php @@ -1,5 +1,8 @@ $_status, 'title' => $_title, 'message' => $_message, 'medecins' => $_medecins ])); else{ $response = new Response(); - $response->setHeader('Location','http://'.$_SERVER['HTTP_HOST'].'/Medecins.php?status='.$_status.'&title='.$_title.'&message='.$_message.'&medecins='.base64_encode(json_encode($_medecins))); + $response->setHeader('Location','http://'.$_SERVER['HTTP_HOST'].'/Medecins.php?status='.$_status.'&title='.$_title.'&message='.$_message.'&medecins='.customCompression(json_encode($_medecins), true)); $response->send(); } }else{ diff --git a/managers/Patient.class.php b/managers/Patient.class.php index 219afd9..e658152 100755 --- a/managers/Patient.class.php +++ b/managers/Patient.class.php @@ -1,4 +1,8 @@ $_status, 'title' => $_title, 'message' => $_message, 'patients' => $_patients ])); else{ $response = new Response(); - $response->setHeader('Location','http://'.$_SERVER['HTTP_HOST'].'/Patients.php?status='.$_status.'&title='.$_title.'&message='.$_message.'&patients='.base64_encode(json_encode($_patients))); + // $response->write("patients=".$compressed_json); + $response->setHeader('Location','http://'.$_SERVER['HTTP_HOST'].'/Patients.php?status='.$_status.'&title='.$_title.'&message='.$_message.'&patients='.customCompression( json_encode($_patients), true)); $response->send(); } }else{ diff --git a/test.php b/test.php index be09c42..5b912c2 100755 --- a/test.php +++ b/test.php @@ -7,4 +7,81 @@ */ require_once('autoloader.php'); -Response::quickResponse(200,'lol'); +// Response::quickResponse(200,'lol'); +$json = [ + [ + "nom" => "Alex", + "prenom" => "Alex", + ], + + [ + "nom" => "Alex", + "prenom" => "Alex", + ], + + [ + "nom" => "Alex", + "prenom" => "Alex", + ], + + [ + "nom" => "Alex", + "prenom" => "Alex", + ], + + [ + "nom" => "Alex", + "prenom" => "Alex", + ], + + [ + "nom" => "Alex", + "prenom" => "Alex", + ], + + [ + "nom" => "Alex", + "prenom" => "Alex", + ], + + [ + "nom" => "Alex", + "prenom" => "Alex", + ], + + [ + "nom" => "Alex", + "prenom" => "Alex", + ], + + [ + "nom" => "Alex", + "prenom" => "Alex", + ] +]; + +$compressed = compress( json_encode($json) ); +$uncompressed = uncompress( $compressed ); + +echo $compressed.'

'; +echo $uncompressed.'

'; + + + + + + + + + + + + +function customCompression($input, compression){ + if( $compression ) return strtr(base64_encode(addslashes(gzcompress(serialize($input),9))), '+/=', '-_,'); + else return unserialize(gzuncompress(stripslashes(base64_decode(strtr($input, '-_,', '+/='))))); +} + +function uncompress($input){ + +} \ No newline at end of file