diff --git a/.gitattributes b/.gitattributes
index cbb7afc8f9a37e5af888d6c6b57be7603020ecdb..2d68bba5435a2d88b7a550df755f283492179cb0 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -88,6 +88,7 @@ ecrire/action/legender.php -text
 ecrire/action/logout.php -text
 ecrire/action/petitionner.php -text
 ecrire/action/poster_forum_prive.php -text
+ecrire/action/preferer.php -text
 ecrire/action/purger.php -text
 ecrire/action/referencer_traduction.php -text
 ecrire/action/regler_moderation.php -text
diff --git a/ecrire/action/preferer.php b/ecrire/action/preferer.php
new file mode 100644
index 0000000000000000000000000000000000000000..075adcd389ed7813d24f2bba844b3b2e8c19aa9e
--- /dev/null
+++ b/ecrire/action/preferer.php
@@ -0,0 +1,47 @@
+<?php
+
+/***************************************************************************\
+ *  SPIP, Systeme de publication pour l'internet                           *
+ *                                                                         *
+ *  Copyright (c) 2001-2008                                                *
+ *  Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James  *
+ *                                                                         *
+ *  Ce programme est un logiciel libre distribue sous licence GNU/GPL.     *
+ *  Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne.   *
+\***************************************************************************/
+
+if (!defined("_ECRIRE_INC_VERSION")) return;
+
+
+function action_preferer_dist() {
+	//
+	// Preferences de presentation
+	//
+	
+	$prefs_mod = false;
+	
+	if (_request('set_couleur')) {
+		$GLOBALS['visiteur_session']['prefs']['couleur'] = intval(_request('set_couleur'));
+		$prefs_mod = true;
+	}
+	if (_request('set_disp')) {
+		$GLOBALS['visiteur_session']['prefs']['display'] = intval(_request('set_disp'));
+		$prefs_mod = true;
+	}
+	if ($prefs_mod AND intval($GLOBALS['visiteur_session']['id_auteur'])) {
+		sql_updateq('spip_auteurs', array('prefs' => serialize($GLOBALS['visiteur_session']['prefs'])), "id_auteur=" .intval($GLOBALS['visiteur_session']['id_auteur']));
+	
+		// Si modif des couleurs en ajax, stop ici
+		if ($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest') exit;
+	}
+	
+	if (isset($_GET['set_ecran'])) {
+		// Poser un cookie,
+		// car ce reglage depend plus du navigateur que de l'utilisateur
+		$GLOBALS['spip_ecran'] = $_GET['set_ecran'];
+		include_spip('inc/cookie');
+		spip_setcookie('spip_ecran', $GLOBALS['spip_ecran'], time() + 365 * 24 * 3600);
+	}
+}
+
+?>
\ No newline at end of file
diff --git a/ecrire/inc/actions.php b/ecrire/inc/actions.php
index 02f31fcc35934fe031a5445d6a93e86c7a51d384..a9ec068bdc7dc5caba2a20644b2b32afad0c972f 100644
--- a/ecrire/inc/actions.php
+++ b/ecrire/inc/actions.php
@@ -23,7 +23,7 @@ function generer_action_auteur($action, $arg, $redirect="", $mode=false, $att=''
 // http://doc.spip.org/@redirige_action_auteur
 function redirige_action_auteur($action, $arg, $ret, $gra='', $mode=false, $atts='') {
 
-	$r = generer_url_ecrire($ret, $gra, true, _DIR_RESTREINT_ABS);
+	$r = _DIR_RESTREINT . generer_url_ecrire($ret, $gra, true, true);
 
 	return generer_action_auteur($action, $arg, $r, $mode, $atts);
 }
diff --git a/ecrire/inc/ajouter_documents.php b/ecrire/inc/ajouter_documents.php
index 3f403936629cbe78c4e7bc7c6c5e5403e3d1a3f3..0805dfece8a164d193f977b00c69482f5b5c74b0 100644
--- a/ecrire/inc/ajouter_documents.php
+++ b/ecrire/inc/ajouter_documents.php
@@ -474,7 +474,7 @@ function liste_archive_jointe($valables, $zip, $type, $id, $mode, $id_document,
 		"</p><p>" .
 		_T('upload_fichier_zip_texte2') .
 		 "</p>" .
-		generer_form_public('joindre', $texte,' method="post"');
+		generer_form_action('joindre', $texte,' method="post"');
 
 	if(_request("iframe")=="iframe") {
 		return "<p>build form $iframe_redirect</p>" .
diff --git a/ecrire/inc/commencer_page.php b/ecrire/inc/commencer_page.php
index 1df4afab4282036cf357e2c6134ce813963a3e5f..6bf9c7ddb5b6117f9d4cd2f6011ba4560edad97d 100644
--- a/ecrire/inc/commencer_page.php
+++ b/ecrire/inc/commencer_page.php
@@ -90,9 +90,9 @@ function init_body($rubrique='accueil', $sous_rubrique='accueil', $id_rubrique='
 /*
 	if ($menu)
 		$res .= "\n<div><map name='map_layout' id='map_layout'>"
-		. lien_change_var (self(), 'set_disp', 1, '1,0,18,15', _T('lien_afficher_texte_seul'), "onmouseover=\"changestyle('bandeauvide');\" onfocus=\"changestyle('bandeauvide');\" onblur=\"changestyle('bandeauvide');\"")
-		. lien_change_var (self(), 'set_disp', 2, '19,0,40,15', _T('lien_afficher_texte_icones'), "onmouseover=\"changestyle('bandeauvide');\" onfocus=\"changestyle('bandeauvide');\" onblur=\"changestyle('bandeauvide');\"")
-		. lien_change_var (self(), 'set_disp', 3, '41,0,59,15', _T('lien_afficher_icones_seuls'), "onmouseover=\"changestyle('bandeauvide');\" onfocus=\"changestyle('bandeauvide');\" onblur=\"changestyle('bandeauvide');\"")
+		. lien_change_var (generer_url_action('preferer',"set_disp=1&redirect=".urlencode(self())), '1,0,18,15', _T('lien_afficher_texte_seul'), "onmouseover=\"changestyle('bandeauvide');\" onfocus=\"changestyle('bandeauvide');\" onblur=\"changestyle('bandeauvide');\"")
+		. lien_change_var (generer_url_action('preferer',"set_disp=2&redirect=".urlencode(self())), '19,0,40,15', _T('lien_afficher_texte_icones'), "onmouseover=\"changestyle('bandeauvide');\" onfocus=\"changestyle('bandeauvide');\" onblur=\"changestyle('bandeauvide');\"")
+		. lien_change_var (generer_url_action('preferer',"set_disp=3&redirect=".urlencode(self())), '41,0,59,15', _T('lien_afficher_icones_seuls'), "onmouseover=\"changestyle('bandeauvide');\" onfocus=\"changestyle('bandeauvide');\" onblur=\"changestyle('bandeauvide');\"")
 		. "\n</map></div>";
 */
 	if ($spip_display == "4") {
@@ -141,14 +141,14 @@ function init_body($rubrique='accueil', $sous_rubrique='accueil', $id_rubrique='
 			// grand ecran
 		if ($spip_ecran == "large") {
 			$i = _T('info_petit_ecran');
-			$res .= "<a href='". parametre_url(self(),'set_ecran', 'etroit') ."' class='icone26' onmouseover=\"changestyle('bandeauecran');\" title=\"$i\" onfocus=\"changestyle('bandeauecran');\" onblur=\"changestyle('bandeauecran');\">" .
+			$res .= "<a href='". generer_url_action('preferer',"set_ecran=etroit&redirect=".urlencode(self())) ."' class='icone26' onmouseover=\"changestyle('bandeauecran');\" title=\"$i\" onfocus=\"changestyle('bandeauecran');\" onblur=\"changestyle('bandeauecran');\">" .
 			  http_img_pack("set-ecran-etroit.png", $i, "width='26' height='20'") . "</a>";
-			$ecran = "<div><a href='".parametre_url(self(),'set_ecran', 'etroit')."' class='lien_sous'>"._T('info_petit_ecran')."</a>/<b>"._T('info_grand_ecran')."</b></div>";
+			$ecran = "<div><a href='".generer_url_action('preferer',"set_ecran=etroit&redirect=".urlencode(self()))."' class='lien_sous'>"._T('info_petit_ecran')."</a>/<b>"._T('info_grand_ecran')."</b></div>";
 		} else {
 			$i = _T('info_grand_ecran');
-			$res .= "<a href='".parametre_url(self(),'set_ecran', 'large')."' class='icone26' onmouseover=\"changestyle('bandeauecran');\" title=\"$i\" onfocus=\"changestyle('bandeauecran');\" onblur=\"changestyle('bandeauecran');\">" .
+			$res .= "<a href='".generer_url_action('preferer',"set_ecran=large&redirect=".urlencode(self()))."' class='icone26' onmouseover=\"changestyle('bandeauecran');\" title=\"$i\" onfocus=\"changestyle('bandeauecran');\" onblur=\"changestyle('bandeauecran');\">" .
 			  http_img_pack("set-ecran.png", $i, "width='26' height='20'") ."</a>";
-			$ecran = "<div><b>"._T('info_petit_ecran')."</b>/<a href='".parametre_url(self(),'set_ecran', 'large')."' class='lien_sous'>"._T('info_grand_ecran')."</a></div>";
+			$ecran = "<div><b>"._T('info_petit_ecran')."</b>/<a href='".generer_url_action('preferer',"set_ecran=large&redirect=".urlencode(self()))."' class='lien_sous'>"._T('info_grand_ecran')."</a></div>";
 		}
 
 		// Choix de la couleur
diff --git a/ecrire/inc/couleurs.php b/ecrire/inc/couleurs.php
index 307473366a4df832e1e89412488e4559f989058c..e0bb14c09fffd165353e6bb10eae06a3d52561bd 100644
--- a/ecrire/inc/couleurs.php
+++ b/ecrire/inc/couleurs.php
@@ -90,7 +90,7 @@ onblur="changestyle(\'bandeauinterface\');"';
 		foreach ($couleurs_spip as $key => $val) {
 			$bloc .=
 			'<a href="'
-				. parametre_url(self(), 'set_couleur', $key)
+				. generer_url_action('preferer',"set_couleur=$key&redirect=".urlencode(self()))
 				. '"'
 			. ' rel="'.generer_url_public('style_prive','ltr='
 				. $GLOBALS['spip_lang_left'] . '&'
diff --git a/ecrire/inc/filtres.php b/ecrire/inc/filtres.php
index 69cebf390bbdc58c8ff0a96778250f2f188ff3c0..7f778c3bb45fdc58cb5932b0a211c6fe4d161225 100644
--- a/ecrire/inc/filtres.php
+++ b/ecrire/inc/filtres.php
@@ -2460,7 +2460,7 @@ function chercher_rubrique($msg,$id, $id_parent, $type, $id_secteur, $restreint,
 				. "</div>";
 		}
 		$form = "<input type='hidden' name='editer_$type' value='oui' />\n" . $form;
-		$form = generer_action_auteur("editer_$type", $id, _DIR_RESTREINT_ABS . self(), $form, " method='post' class='submit_plongeur'");	
+		$form = generer_action_auteur("editer_$type", $id, self(), $form, " method='post' class='submit_plongeur'");	
 	}
 
 	if ($retour_sans_cadre)
diff --git a/ecrire/inc/forum.php b/ecrire/inc/forum.php
index a2cd385aac8d5c1b4e1606a543c45b27788ef5d0..32dc6c873db076c6ff3ab5c9d593527c066a5f61 100644
--- a/ecrire/inc/forum.php
+++ b/ecrire/inc/forum.php
@@ -164,7 +164,7 @@ function boutons_controle_forum($id_forum, $forum_stat, $forum_id_auteur=0, $ref
 			return;
 	}
 
-	$lien = _DIR_RESTREINT_ABS . generer_url_ecrire($script, $args, true, true) . "#id$id_forum";
+	$lien = _DIR_RESTREINT . generer_url_ecrire($script, $args, true, true) . "#id$id_forum";
 	$boutons ='';
 	if ($suppression)
 	  $boutons .= icone_inline(_T('icone_supprimer_message'), generer_action_auteur('instituer_forum',"$id_forum-$suppression", $lien),
@@ -178,7 +178,7 @@ function boutons_controle_forum($id_forum, $forum_stat, $forum_id_auteur=0, $ref
 
 	if ($valider_repondre) {
 	  $dblret = rawurlencode($lien);
-	  $boutons .= icone_inline(_T('icone_valider_message') . " &amp; " .   _T('lien_repondre_message'), generer_action_auteur('instituer_forum',"$id_forum-$valider", generer_url_public('forum', "$ref&id_forum=$id_forum&retour=$dblret", true, true)),
+	  $boutons .= icone_inline(_T('icone_valider_message') . " &amp; " .   _T('lien_repondre_message'), generer_action_auteur('instituer_forum',"$id_forum-$valider", _DIR_RACINE . generer_url_public('forum', "$ref&id_forum=$id_forum&retour=$dblret", true, true)),
 			     $logo,
 			     "creer.gif", 'right', 'non');
 	}
diff --git a/ecrire/inc/gadgets.php b/ecrire/inc/gadgets.php
index 065216d901047f6337a81a95901555bc63e9ae47..fd615e71a51667efcca930fa032466b789ff4579 100644
--- a/ecrire/inc/gadgets.php
+++ b/ecrire/inc/gadgets.php
@@ -125,9 +125,9 @@ function bandeau_gadgets($largeur, $options, $id_rubrique) {
 
 	// menu
 	$bandeau .= "\n<div id='preferences_map'><map name='map_layout' id='map_layout'>"
-		. lien_change_var (self(), 'set_disp', 1, '1,0,18,15', _T('lien_afficher_texte_seul'))
-		. lien_change_var (self(), 'set_disp', 2, '19,0,40,15', _T('lien_afficher_texte_icones'))
-		. lien_change_var (self(), 'set_disp', 3, '41,0,59,15', _T('lien_afficher_icones_seuls'))
+		. lien_change_var (generer_url_action('preferer',"set_disp=1&redirect=".urlencode(self())),'','', '1,0,18,15', _T('lien_afficher_texte_seul'))
+		. lien_change_var (generer_url_action('preferer',"set_disp=2&redirect=".urlencode(self())),'','', '19,0,40,15', _T('lien_afficher_texte_icones'))
+		. lien_change_var (generer_url_action('preferer',"set_disp=3&redirect=".urlencode(self())),'','', '41,0,59,15', _T('lien_afficher_icones_seuls'))
 		. "\n</map></div>";
 	$bandeau .= "<div id='preferences_menu'>"
 		. http_img_pack("choix-layout$spip_lang_rtl".($spip_lang=='he'?'_he':'').".gif", _T('choix_interface'), " style='vertical-align: middle' width='59' height='15' usemap='#map_layout'")
@@ -135,9 +135,9 @@ function bandeau_gadgets($largeur, $options, $id_rubrique) {
 		. "</div>";
 	// ecran
 	if ($spip_ecran == "large") 
-			$bandeau .= "<div id='preferences_ecran'><a href='".parametre_url(self(),'set_ecran', 'etroit')."' class='lien_sous'>"._T('info_petit_ecran')."</a>/<b>"._T('info_grand_ecran')."</b></div>";
+			$bandeau .= "<div id='preferences_ecran'><a href='".generer_url_action('preferer',"set_ecran=etroit&redirect=".urlencode(self()))."' class='lien_sous'>"._T('info_petit_ecran')."</a>/<b>"._T('info_grand_ecran')."</b></div>";
 	else
-			$bandeau .= "<div id='preferences_ecran'><b>"._T('info_petit_ecran')."</b>/<a href='".parametre_url(self(),'set_ecran', 'large')."' class='lien_sous'>"._T('info_grand_ecran')."</a></div>";
+			$bandeau .= "<div id='preferences_ecran'><b>"._T('info_petit_ecran')."</b>/<a href='".generer_url_action('preferer',"set_ecran=large&redirect=".urlencode(self()))."' class='lien_sous'>"._T('info_grand_ecran')."</a></div>";
 	$bandeau .= "</div>";
 
 
diff --git a/ecrire/inc/presentation.php b/ecrire/inc/presentation.php
index ca92da47c20008bfa87acac5ce0446f5c81e4771..2dfd0a7beaa525db1ae24232f324418054f25eba 100644
--- a/ecrire/inc/presentation.php
+++ b/ecrire/inc/presentation.php
@@ -944,7 +944,7 @@ function fin_page()
 	return debut_grand_cadre(true)
 	. (($spip_display == 4)
 		? ("<div><a href='"
-		   	. parametre_url(self(),'set_disp', '2')
+		   	. generer_url_action('preferer','set_disp=2&redirect='.urlencode(self()))
 			. "'>"
 			.  _T("access_interface_graphique")
 			. "</a></div>")
diff --git a/ecrire/inc/securiser_action.php b/ecrire/inc/securiser_action.php
index 06d9c9411998eab5ca3f6f62620be20663cb9ecf..82439f8695c550a42d8fdb4d81cff15c66bd5879 100644
--- a/ecrire/inc/securiser_action.php
+++ b/ecrire/inc/securiser_action.php
@@ -58,7 +58,7 @@ function securiser_action_auteur($action, $arg, $redirect="", $mode=false, $att=
 <input name='hash' type='hidden' value='$hash' />
 <input name='arg' type='hidden' value='$arg' />";
 
-	return generer_form_public($action, $mode, $att);
+	return generer_form_action($action, $mode, $att);
 }
 
 // http://doc.spip.org/@caracteriser_auteur
diff --git a/ecrire/inc/utils.php b/ecrire/inc/utils.php
index 0bebdbccf6c80d5b72af89874894931f20a2d6c1..f7cc9d3b4657db461fb0259173c3bfb0d39a41fe 100644
--- a/ecrire/inc/utils.php
+++ b/ecrire/inc/utils.php
@@ -348,7 +348,7 @@ function self($amp = '&amp;', $root = false) {
 	// supprimer les variables sans interet
 	if (test_espace_prive()) {
 		$url = preg_replace (',([?&])('
-		.'lang|set_options|set_couleur|set_disp|set_ecran|show_docs|'
+		.'lang|show_docs|'
 		.'changer_lang|var_lang|action)=[^&]*,i', '\1', $url);
 		$url = preg_replace(',([?&])[&]+,', '\1', $url);
 		$url = preg_replace(',[&]$,', '\1', $url);
@@ -920,9 +920,8 @@ function generer_form_ecrire($script, $corps, $atts='', $submit='') {
 // On n'applique pas la recommandation ci-dessus pour les scripts publics
 // qui ne sont pas destines a etre mis en signets
 
-// http://doc.spip.org/@generer_form_public
-function generer_form_public($script, $corps, $atts='') {
-	return "\n<form action='" . generer_url_public() .
+function generer_form_action($script, $corps, $atts='') {
+	return "\n<form action='" . (_DIR_RACINE  ? generer_url_ecrire() :  generer_url_public()) .
 	  "'" .
 	  $atts .
 	  ">\n" .
@@ -934,10 +933,15 @@ function generer_form_public($script, $corps, $atts='') {
 
 // http://doc.spip.org/@generer_url_action
 function generer_url_action($script, $args="", $no_entities=false ,$rel = false) {
-
-        return  generer_url_public('',
-                                  "action=$script" .($args ? "&$args" : ''),
-                                  $no_entities);
+	$url = _DIR_RACINE  ? generer_url_ecrire() :  generer_url_public();
+	$url = parametre_url($url,'action',$script);
+	if ($args) $url .= quote_amp('&'.$args);
+	
+	if ($no_entities) $url = str_replace('&amp;','&',$url);
+	return $url;
+	return  generer_url_public('',
+	                        "action=$script" .($args ? "&$args" : ''),
+	                        $no_entities);
 }
 
 
diff --git a/ecrire/index.php b/ecrire/index.php
index 8e2a00cc4a99ef3813a0246259c9a4927380a4d9..a1365e82418cf31ee8698194a940bad28440784e 100644
--- a/ecrire/index.php
+++ b/ecrire/index.php
@@ -62,39 +62,6 @@ if (autoriser_sans_cookie($exec)) {
 	}
  }
 
-//
-// Preferences de presentation
-//
-
-$prefs_mod = false;
-
-if (isset($_GET['set_couleur'])) {
-	$GLOBALS['visiteur_session']['prefs']['couleur'] = intval($_GET['set_couleur']);
-	$prefs_mod = true;
-}
-if (isset($_GET['set_disp'])) {
-	$GLOBALS['visiteur_session']['prefs']['display'] = intval($_GET['set_disp']);
-	$prefs_mod = true;
-}
-if ($prefs_mod AND !$var_auth) {
-	sql_updateq('spip_auteurs', array('prefs' => serialize($GLOBALS['visiteur_session']['prefs'])), "id_auteur=" .intval($GLOBALS['visiteur_session']['id_auteur']));
-
-	// Si modif des couleurs en ajax, stop ici
-	if ($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest') exit;
-}
-
-// compatibilite ascendante
-$GLOBALS['spip_display'] = isset($GLOBALS['visiteur_session']['prefs']['display'])
-	? $GLOBALS['visiteur_session']['prefs']['display']
-	: 0;
-
-if (isset($_GET['set_ecran'])) {
-	// Poser un cookie,
-	// car ce reglage depend plus du navigateur que de l'utilisateur
-	$GLOBALS['spip_ecran'] = $_GET['set_ecran'];
-	spip_setcookie('spip_ecran', $GLOBALS['spip_ecran'], time() + 365 * 24 * 3600);
- } else $GLOBALS['spip_ecran'] = isset($_COOKIE['spip_ecran']) ? $_COOKIE['spip_ecran'] : "etroit";
-
 // initialiser a la langue par defaut
 include_spip('inc/lang');
 
@@ -115,7 +82,22 @@ if (isset($_COOKIE['spip_lang_ecrire'])) {
 	}
 }
 
-utiliser_langue_visiteur(); 
+utiliser_langue_visiteur();
+
+if (_request('action') OR _request('var_ajax') OR _request('formulaire_action')){
+	// Charger l'aiguilleur qui va mettre sur la bonne voie les traitements derogatoires
+	include_spip('public/aiguiller');
+	if (
+		// cas des appels actions ?action=xxx
+		traiter_appels_actions()
+	 OR
+		// cas des hits ajax sur les inclusions ajax
+		traiter_appels_inclusions_ajax()
+	 OR 
+	 	// cas des formulaires charger/verifier/traiter
+	  traiter_formulaires_dynamiques())
+	  exit; // le hit est fini !
+}
 
 //
 // Gestion d'une page normale de l'espace prive
@@ -166,17 +148,11 @@ AND $l = @unserialize($l)) {
 	}
 }
 
-if (_request('action') OR _request('var_ajax') OR _request('formulaire_action')){
-	// Charger l'aiguilleur qui va mettre sur la bonne voie les traitements derogatoires
-	include_spip('public/aiguiller');
-	if (
-		// cas des hits ajax sur les inclusions ajax
-		traiter_appels_inclusions_ajax()
-	 OR 
-	 	// cas des formulaires charger/verifier/traiter
-	  traiter_formulaires_dynamiques())
-	  exit; // le hit est fini !
-}
+// compatibilite ascendante
+$GLOBALS['spip_display'] = isset($GLOBALS['visiteur_session']['prefs']['display'])
+	? $GLOBALS['visiteur_session']['prefs']['display']
+	: 0;
+$GLOBALS['spip_ecran'] = isset($_COOKIE['spip_ecran']) ? $_COOKIE['spip_ecran'] : "etroit";
 
 // Passer la main aux outils XML a la demande (meme les redac s'ils veulent).
 if ($var_f = _request('transformer_xml')) {
@@ -199,4 +175,4 @@ if ($GLOBALS['var_mode'] == 'debug') {
 if (count($tableau_des_erreurs) AND $affiche_boutons_admin)
 	echo affiche_erreurs_page($tableau_des_erreurs);
 
-?>
+?>
\ No newline at end of file
diff --git a/ecrire/oo/index.php b/ecrire/oo/index.php
index b8fbcd40efb23f12d3ab8f3489424e88905a8a7f..8f583f98b7413184d99d282e1ccfc57c3423ffb5 100644
--- a/ecrire/oo/index.php
+++ b/ecrire/oo/index.php
@@ -3,6 +3,6 @@
 // ACCESSIBILITE
 // la page /oo offre une lecture en mode "texte seul"
 
-@header("Location: ../?set_disp=4&set_options=basiques&exec=" . $_REQUEST['exec']);
+@header("Location: ../?action=preferer&set_disp=4&redirect=".urlencode("./?exec=" . $_REQUEST['exec']));
 
 ?>