diff --git a/ecrire/inc_articles_edit.php b/ecrire/inc_articles_edit.php
index 9d1157fd32464b42dd1a01f30c25af07a95babcb..e171981f5e97c0424169d15121b335ddaef19ca1 100644
--- a/ecrire/inc_articles_edit.php
+++ b/ecrire/inc_articles_edit.php
@@ -324,6 +324,29 @@ function articles_edit_dist()
   $id_rubrique =  intval($id_rubrique);
   $lier_trad =  intval($lier_trad);
 
+// ESSAI pour "Joindre un document" depuis l'espace prive (UPLOAD_DIRECT)
+/*if ($GLOBALS['action'] AND $GLOBALS['doc']) {
+	global $action, $doc;
+
+	$var_nom = "spip_image";
+	$var_f = find_in_path('inc_' . $var_nom . '.php');
+	if ($var_f) 
+		include($var_f);
+	else include_ecrire('inc_' . $var_nom);
+
+	$var_nom .= '_' . $action;
+
+	if (function_exists($var_nom))
+		$var_nom($doc);
+	elseif (function_exists($var_f = $var_nom . '_dist'))
+		$var_f($doc);
+	else
+		spip_log("fonction $var_nom indisponible");
+
+#	return;
+}*/
+
+
   if ($id_article) {
 	// Recuperer les donnees de l'article
 	$query = "SELECT * FROM spip_articles WHERE id_article=$id_article";
diff --git a/ecrire/inc_utils.php b/ecrire/inc_utils.php
index 2fcbeea5ddf0e7eb46276397c934530a3dd532bc..a32db2725f07d8537f097e2ec6c718f9fee8e6ea 100644
--- a/ecrire/inc_utils.php
+++ b/ecrire/inc_utils.php
@@ -316,7 +316,13 @@ class Link {
 	//
 
 	function getForm($method = 'get', $query = '', $enctype = '') {
-		$form = "<form method='$method' action='".$this->file.$query."'";
+		if (preg_match(',^[a-z],i', $query))
+			$action = $query;
+		else
+			$action = $this->file.$query;
+
+		$form = "<form method='$method' action='"
+		.quote_amp($action)."'";
 		if ($enctype) $form .= " enctype='$enctype'";
 		$form .= " style='border: 0px; margin: 0px;'>\n";
 		foreach ($this->vars as $name => $value) {