Voila je trimballe un object un peu partout dans mon code et j'ai besoin qu'il recharge la page à un certain, donc je passer l'object dans l'url avec serialize()
et je cherche ensuite à le désérialiser de l'autre coté
Code :
- class ini {
- /* global parameters */
- var $iniName; //the name of the current INI file
- var $action; //the current action
- /* Site parameters */
- var $siteTitle; //title of the site
- var $artByPage; //number of art displayed by page
- function selectConfig() {
- echo "<form action=\"".$_SERVER["PHP_SELF"]."\" method=\"POST\">".
- "<input type=\"submit\" name=\"create\" value=\"create\" />".
- "<input type=\"submit\" name=\"edit\" value=\"edit\" />".
- "<input type=\"submit\" name=\"delete\" value=\"delete\" />".
- "</form>";
- }
- function defineAction() {
- if (isset($_POST["create"])) $this->action = "create";
- if (isset($_POST["edit"])) $this->action = "edit";
- if (isset($_POST["delete"])) $this->action = "delete";
- $giveObject = serialize($this);
- header("Location: ".$_SERVER["PHP_SELF"]."?1&object=$giveObject" );
- }
- /* Show an input box to enter the new ini file name [DO NOT WRITE THE .INI IN HERE]*/
- function defineNewIniName() {
- echo $this->action;
- echo "<form action=\"".$_SERVER["PHP_SELF"]."?1\" method=\"POST\">".
- "<input type=\"text\" name=\"iniName\" />".
- "<input type=\"submit\" name=\"createIni\" value=\"create .ini\" />".
- "</form>";
- }
- function showIniForm() {
- //return to give a name if the name is empty
- if (empty($_POST["iniName"]))
- header("Location: ".$_SERVER["PHP_SELF"]."?1" );
- #TODO : remove tags
- $this->iniName = $_POST["iniName"];
- echo "<form action=\"".$_SERVER["PHP_SELF"]."?1\" method=\"POST\">".
- "<input type=\"text\" name=\"siteTitle\" />".
- "<input type=\"text\" name=\"artByPage\" />".
- "<input type=\"submit\" name=\"createIni\" value=\"add values\" />".
- "</form>";
- }
- /* This method use a lot of others method in order to create a totally new .ini file */
- function createIni() {
- $this->defineNewIniName();
- if (isset($_POST["createIni"])) //once the name is given we show the form
- $this->showIniForm();
- }
- }
- ob_start();
- $management = new ini;
- if (!isset($_GET["1"])) {
- $management->selectConfig();
- if (isset($_POST["create"]) || isset($_POST["edit"]) || isset($_POST["delete"]))
- $management->defineAction();
- }
- else {
- $management = unserialize($_GET["object"]);
- if ($management->action == "create" )
- $management->createIni();
- }
- ob_end_flush();
|
Le probleme est tout en bas, ou je désérialiser mon $_GET["object"] dans $management pour retrouver ma class INI originale.
quand je fait un echo $_GET["object"] j'ai bien
Code :
- &object=O:3:%22ini%22:4:{s:7:%22iniName%22;N;s:6:%22action%22;s:6:%22create%22;s:9:%22siteTitle%22;N;s:9:%22artByPage%22;N;}
|
donc action est bien spécifié, pourtant ca me laisse une page blanche et n'execute pas createIni();
J'ai essayer avec rawurlencode aussi mais ca marche encore moins bien
fin bref, besoin d'aide
Message édité par Profil supprimé le 23-09-2004 à 22:03:34