diff --git a/ecrire/action/autoriser.php b/ecrire/action/autoriser.php index b5e64011c91d05d739490455bebb14ef7bdb2b0a..26997a9f0b0d050450578690c8f1ae573b5e1e6e 100644 --- a/ecrire/action/autoriser.php +++ b/ecrire/action/autoriser.php @@ -26,7 +26,7 @@ function action_autoriser_dist() { global $file, $arg, $toujours; - $file = urldecode($file); + $file = rawurldecode($file); $refus = false; if (strpos($file,'../') !== false) diff --git a/ecrire/action/cookie.php b/ecrire/action/cookie.php index 78eb4520c24106eba6c65a8a61b4ad9da56365c8..2608cf0bdfcd1accafc0c03391ee469e710b17b0 100644 --- a/ecrire/action/cookie.php +++ b/ecrire/action/cookie.php @@ -24,7 +24,7 @@ function auth_http($url, $essai_auth_http) { else { ask_php_auth(_T('login_connexion_refusee'), _T('login_login_pass_incorrect'), _T('login_retour_site'), - "url=".urlencode($url), _T('login_nouvelle_tentative'), + "url=".rawurlencode($url), _T('login_nouvelle_tentative'), (ereg(_DIR_RESTREINT_ABS, $url))); exit; } @@ -125,7 +125,7 @@ if ($test_echec_cookie == 'oui') { spip_setcookie('spip_session', 'test_echec_cookie'); redirige_par_entete(generer_url_public('login'), "var_echec_cookie=oui&url=" - . ($url ? urlencode($url) : _DIR_RESTREINT_ABS), true); + . ($url ? rawurlencode($url) : _DIR_RESTREINT_ABS), true); } // Tentative de login @@ -189,7 +189,7 @@ if ($essai_login == "oui") { "var_login=$login", true); if ($session_password || $session_password_md5) $redirect .= '&var_erreur=pass'; - $redirect .= '&url=' . urlencode($url); + $redirect .= '&url=' . rawurlencode($url); spip_log("echec login: $login"); } else @@ -200,7 +200,7 @@ if ($essai_login == "oui") { if ($cookie_admin == "non") { if (!$retour) $retour = generer_url_public('login', - 'url='.urlencode($url), true); + 'url='.rawurlencode($url), true); spip_setcookie('spip_admin', $spip_admin, time() - 3600 * 24); $redirect = ereg_replace("([?&])var_login=[^&]*&?", '\1', $retour); diff --git a/ecrire/action/supprimer.php b/ecrire/action/supprimer.php index 2e04e7cb3c0bdd0944ed4c709dcac70354ac5dd0..bf7a6eb877365ef76111bbecc1c07dab68d7b289 100644 --- a/ecrire/action/supprimer.php +++ b/ecrire/action/supprimer.php @@ -62,6 +62,6 @@ function action_supprimer_dist() { } } - redirige_par_entete(urldecode($redirect)); + redirige_par_entete(rawurldecode($redirect)); } ?> diff --git a/ecrire/action/tourner.php b/ecrire/action/tourner.php index 794fcdbd6aa4f608adce808b5890740b42f36ce9..ea0f683dad1e1bc232831a3aa0cfb4ba35e6cfc8 100644 --- a/ecrire/action/tourner.php +++ b/ecrire/action/tourner.php @@ -71,7 +71,7 @@ function action_tourner_dist() { spip_query("UPDATE spip_documents SET largeur=$largeur, hauteur=$hauteur WHERE id_document=$arg"); } - redirige_par_entete(urldecode($redirect)); + redirige_par_entete(rawurldecode($redirect)); } diff --git a/ecrire/exec/admin_plugin.php b/ecrire/exec/admin_plugin.php index a38d0bee938aae20a67558651a54cf804fd3425d..59941399275973cbdb3fd644eb2861570cf3cbad 100644 --- a/ecrire/exec/admin_plugin.php +++ b/ecrire/exec/admin_plugin.php @@ -86,11 +86,11 @@ function ligne_plug($plug_file,&$plug_actifs,$last_actif = false,$surligne = fal // Possibilité d'ordonner les plugins masquee pour le moment // la fonction reste possible par l'url du type monter=forms,descendre=forms /*if ($id_input>0) - $s = "<a href='".generer_url_ecrire('admin_plugin',"monter=".urlencode($plug_file))."'><img src='"._DIR_IMG_PACK."monter-16.png' style='border:0'></a>"; + $s = "<a href='".generer_url_ecrire('admin_plugin',"monter=".rawurlencode($plug_file))."'><img src='"._DIR_IMG_PACK."monter-16.png' style='border:0'></a>"; $vals[] = $s; $s = ""; if (!$last_actif) - $s = "<a href='".generer_url_ecrire('admin_plugin',"descendre=".urlencode($plug_file))."'><img src='"._DIR_IMG_PACK."descendre-16.png' style='border:0'></a>";*/ + $s = "<a href='".generer_url_ecrire('admin_plugin',"descendre=".rawurlencode($plug_file))."'><img src='"._DIR_IMG_PACK."descendre-16.png' style='border:0'></a>";*/ } else{ $vals[] = $s; @@ -218,5 +218,4 @@ function exec_admin_plugin_dist(){ fin_page(); } - -?> \ No newline at end of file +?> diff --git a/ecrire/exec/articles.php b/ecrire/exec/articles.php index 969add82d0f2355d5fc35cd43e8bf260192bf9a3..46241bbea7c4f9b725da6e24007d79f068b6f540 100644 --- a/ecrire/exec/articles.php +++ b/ecrire/exec/articles.php @@ -1038,8 +1038,8 @@ function rechercher_auteurs_articles($cherche_auteur, $id_article, $id_rubrique, AND $GLOBALS['connect_toutes_rubriques']) { echo "<div style='width: 200px;'>"; - $retour = urlencode(generer_url_ecrire("articles","id_article=$id_article")); - $titre = urlencode($cherche_auteur); + $retour = rawurlencode(generer_url_ecrire("articles","id_article=$id_article")); + $titre = rawurlencode($cherche_auteur); icone_horizontale(_T('icone_creer_auteur'), generer_url_ecrire("auteur_infos","ajouter_id_article=$id_article&nom=$titre&redirect=$retour"), "redacteurs-24.gif", "creer.gif"); echo "</div> "; @@ -1182,7 +1182,7 @@ function ajouter_auteurs_articles($id_article, $id_rubrique, $les_auteurs, $flag AND $options == "avancees" AND !$supprimer_bouton_creer_auteur) { echo "<td width='200'>"; - $retour = urlencode(generer_url_ecrire("articles","id_article=$id_article")); + $retour = rawurlencode(generer_url_ecrire("articles","id_article=$id_article")); icone_horizontale(_T('icone_creer_auteur'), generer_url_ecrire("auteur_infos","ajouter_id_article=$id_article&redirect=$retour"), "redacteurs-24.gif", "creer.gif"); echo "</td>"; echo "<td width='20'> </td>"; @@ -1311,9 +1311,9 @@ function affiche_forums_article($id_article, $id_rubrique, $titre, $debut, $mute $forum_retour = generer_url_ecrire("articles","id_article=$id_article", true); if (!$mute) { - $tm = urlencode($titre); + $tm = rawurlencode($titre); echo "\n<div align='center'>"; - icone(_T('icone_poster_message'), generer_url_ecrire("forum_envoi","statut=prive&adresse_retour=" . urlencode($forum_retour) . "&id_article=$id_article&titre_message=$tm"), "forum-interne-24.gif", "creer.gif"); + icone(_T('icone_poster_message'), generer_url_ecrire("forum_envoi","statut=prive&adresse_retour=" . rawurlencode($forum_retour) . "&id_article=$id_article&titre_message=$tm"), "forum-interne-24.gif", "creer.gif"); echo "</div>"; } diff --git a/ecrire/exec/breves_voir.php b/ecrire/exec/breves_voir.php index b2a43cf37eba78e55f766f749dee642a11f6b2f8..c70da1f3dc2a972ac40028ab4538c88541fca36f 100644 --- a/ecrire/exec/breves_voir.php +++ b/ecrire/exec/breves_voir.php @@ -223,7 +223,7 @@ fin_cadre_relief(); echo "<BR><BR>"; echo "\n<div align='center'>"; - icone(_T('icone_poster_message'), generer_url_ecrire("forum_envoi", "statut=prive&id_breve=$id_breve&titre_message=".urlencode($titre) . "&adresse_retour=".urlencode( generer_url_ecrire("breves_voir", "id_breve=$id_breve"))), + icone(_T('icone_poster_message'), generer_url_ecrire("forum_envoi", "statut=prive&id_breve=$id_breve&titre_message=".rawurlencode($titre) . "&adresse_retour=".urlencode( generer_url_ecrire("breves_voir", "id_breve=$id_breve"))), "forum-interne-24.gif", "creer.gif"); echo "</div>"; diff --git a/ecrire/exec/forum.php b/ecrire/exec/forum.php index 7d02e33ef5a41b79324e2d9b829bc67b1808c9a9..7ed61a1cf9228febd4ff46360f3c3476750196bb 100644 --- a/ecrire/exec/forum.php +++ b/ecrire/exec/forum.php @@ -73,9 +73,9 @@ function exec_forum_dist() echo "<p><div align='center'>"; icone (_T('icone_poster_message'), generer_url_ecrire("forum_envoi", "statut=$statutforum&adresse_retour=" . - urlencode($urlforum) . + rawurlencode($urlforum) . "&titre_message=" . - urlencode(filtrer_entites(_T('texte_nouveau_message')))), + rawurlencode(filtrer_entites(_T('texte_nouveau_message')))), $logo, "creer.gif"); echo "</div></p>"; diff --git a/ecrire/exec/message.php b/ecrire/exec/message.php index b5857e44b7910119d765a7599d5c45b6c9f81301..f95a182f1572ec879db5fd32d5469c2fb9454618 100644 --- a/ecrire/exec/message.php +++ b/ecrire/exec/message.php @@ -239,8 +239,8 @@ function http_ajouter_participants($ze_auteurs, $id_message) function http_afficher_forum_perso($id_message, $titre) { - $forum_retour = urlencode(generer_url_ecrire("message","id_message=$id_message")); - $utitre = urlencode($titre); + $forum_retour = rawurlencode(generer_url_ecrire("message","id_message=$id_message")); + $utitre = rawurlencode($titre); echo "<br /><br />\n<div align='center'>"; icone(_T('icone_poster_message'), generer_url_ecrire("forum_envoi","statut=perso&adresse_retour=$forum_retour&id_message=$id_message&titre_message=$utitre"), "forum-interne-24.gif", "creer.gif"); diff --git a/ecrire/exec/mots_edit.php b/ecrire/exec/mots_edit.php index b3260d912ffc78062f08024241aaf97aade6957b..94f8e039b338bd299f599f415542f37c698e4307 100644 --- a/ecrire/exec/mots_edit.php +++ b/ecrire/exec/mots_edit.php @@ -160,7 +160,7 @@ debut_raccourcis(); if ($connect_statut == '0minirezo' AND $connect_toutes_rubriques) { icone_horizontale(_T('icone_modif_groupe_mots'), generer_url_ecrire("mots_type","id_groupe=$id_groupe"), "groupe-mot-24.gif", "edit.gif"); - icone_horizontale(_T('icone_creation_mots_cles'), generer_url_ecrire("mots_edit", "new=oui&id_groupe=$id_groupe&redirect=" . urlencode(generer_url_ecrire('mots_tous'))), + icone_horizontale(_T('icone_creation_mots_cles'), generer_url_ecrire("mots_edit", "new=oui&id_groupe=$id_groupe&redirect=" . rawurlencode(generer_url_ecrire('mots_tous'))), "mot-cle-24.gif", "creer.gif"); } diff --git a/ecrire/exec/mots_tous.php b/ecrire/exec/mots_tous.php index 45dd608d0565c14fccc2e6b96d2749d4d4b5ab76..17830ac50acb0c091233681da5046e6ffdcb1c4c 100644 --- a/ecrire/exec/mots_tous.php +++ b/ecrire/exec/mots_tous.php @@ -56,7 +56,7 @@ function exec_mots_tous_dist() // si le mot n'est pas lie, on demande sa suppression if ($nb_articles + $nb_breves + $nb_sites + $nb_forum == 0) { - redirige_par_entete(generer_url_ecrire("mots_edit","supp_mot=$id_mot&redirect_ok=oui&redirect=" . urlencode(generer_url_ecrire('mots_tous')), true)); + redirige_par_entete(generer_url_ecrire("mots_edit","supp_mot=$id_mot&redirect_ok=oui&redirect=" . rawurlencode(generer_url_ecrire('mots_tous')), true)); } // else traite plus loin (confirmation de suppression) } } @@ -142,7 +142,7 @@ if ($conf_mot>0) { echo _T('info_delet_mots_cles', array('titre_mot' => $titre_mot, 'type_mot' => $type_mot, 'texte_lie' => $texte_lie)); echo "<UL>"; - echo "<LI><B><A href='", generer_url_ecrire('mots_edit', "supp_mot=$id_mot&redirect_ok=oui&redirect=" . urlencode(generer_url_ecrire('mots_tous'))), + echo "<LI><B><A href='", generer_url_ecrire('mots_edit', "supp_mot=$id_mot&redirect_ok=oui&redirect=" . rawurlencode(generer_url_ecrire('mots_tous'))), "'>", _T('item_oui'), "</A>,</B> ", @@ -230,7 +230,7 @@ while ($row_groupes = spip_fetch_array($result_groupes)) { } echo "<td>"; echo "<div align='$spip_lang_right'>"; - icone(_T('icone_creation_mots_cles'), generer_url_ecrire("mots_edit","new=oui&id_groupe=$id_groupe&redirect=" . urlencode(generer_url_ecrire('mots_tous'))), "mot-cle-24.gif", "creer.gif"); + icone(_T('icone_creation_mots_cles'), generer_url_ecrire("mots_edit","new=oui&id_groupe=$id_groupe&redirect=" . rawurlencode(generer_url_ecrire('mots_tous'))), "mot-cle-24.gif", "creer.gif"); echo "</div>"; echo "</td></tr></table>"; } diff --git a/ecrire/exec/mots_type.php b/ecrire/exec/mots_type.php index 53edc7fa0ba07d4aa3681632c1ee213ee27945ec..083eace9976cb671016fe35938d850e712f31aa5 100644 --- a/ecrire/exec/mots_type.php +++ b/ecrire/exec/mots_type.php @@ -83,7 +83,7 @@ gros_titre($titre); echo aide("motsgroupes"); if ($connect_statut =="0minirezo"){ - $type=entites_html(urldecode($type)); + $type=entites_html(rawurldecode($type)); echo "<p><font face='Verdana,Arial,Sans,sans-serif'>"; echo generer_url_post_ecrire("mots_tous", "id_groupe=$id_groupe"); echo "<INPUT TYPE='Hidden' NAME='modifier_groupe' VALUE=\"oui\">\n"; diff --git a/ecrire/exec/naviguer.php b/ecrire/exec/naviguer.php index 8a7bd553bda01ce779fc6e2af7bad49f15ee4ef5..8c9e2caaca62ea70784e45b04c64f42a9aac497a 100644 --- a/ecrire/exec/naviguer.php +++ b/ecrire/exec/naviguer.php @@ -404,7 +404,7 @@ if ($relief) { if ($id_rubrique > 0 AND ($flag_editable OR $GLOBALS['meta']["proposer_sites"]> 0)) { echo "<div align='$spip_lang_right'>"; - icone(_T('info_sites_referencer'), generer_url_ecrire('sites_edit', "id_rubrique=$id_rubrique&redirect=" . urlencode(generer_url_ecrire('naviguer', "id_rubrique=$id_rubrique"))), "site-24.gif", "creer.gif"); + icone(_T('info_sites_referencer'), generer_url_ecrire('sites_edit', "id_rubrique=$id_rubrique&redirect=" . rawurlencode(generer_url_ecrire('naviguer', "id_rubrique=$id_rubrique"))), "site-24.gif", "creer.gif"); echo "</div><p>"; } } diff --git a/ecrire/inc/auth.php b/ecrire/inc/auth.php index 8bcb06ba5a473ca766ee8e9ba80c829afca5d172..942fcbec72338c93d60737b07d50b2fb7fd19c6d 100644 --- a/ecrire/inc/auth.php +++ b/ecrire/inc/auth.php @@ -101,7 +101,7 @@ function inc_auth_dist() { } return (generer_url_public('login', - "url=".urlencode(str_replace('/./', '/', + "url=".rawurlencode(str_replace('/./', '/', (_DIR_RESTREINT ? "" : _DIR_RESTREINT_ABS) . str_replace('&', '&', self()))),true).$erreurcookie); } diff --git a/ecrire/inc/distant.php b/ecrire/inc/distant.php index 2c6212c7fe21913f4bdd0bceb1f336596a7bf548..419f4d8db5d5fa161afd471b22710d0e838f608a 100644 --- a/ecrire/inc/distant.php +++ b/ecrire/inc/distant.php @@ -73,10 +73,10 @@ function prepare_donnees_post($donnees, $boundary = '') { foreach ($donnees as $cle => $valeur) { if (is_array($valeur)) { foreach ($valeur as $val2) { - $chaine[] = urlencode($cle).'='.urlencode($val2); + $chaine[] = rawurlencode($cle).'='.urlencode($val2); } } else { - $chaine[] = urlencode($cle).'='.urlencode($valeur); + $chaine[] = rawurlencode($cle).'='.urlencode($valeur); } } $chaine = implode('&', $chaine); diff --git a/ecrire/inc/filtres.php b/ecrire/inc/filtres.php index e9573ba11c43e1c2dc4f5763ca3f7e3d49ed9882..a1122d3b5a42351a9744db602cd40a11db0a0d3e 100644 --- a/ecrire/inc/filtres.php +++ b/ecrire/inc/filtres.php @@ -281,7 +281,7 @@ function url_var_recherche($url) { list ($url,$ancre) = preg_split(',#,', $url, 2); if ($ancre) $ancre='#'.$ancre; - $x = "var_recherche=".urlencode(_request('recherche')); + $x = "var_recherche=".rawurlencode(_request('recherche')); if (strpos($url, '?') === false) return "$url?$x$ancre"; diff --git a/ecrire/inc/getdocument.php b/ecrire/inc/getdocument.php index 4986cbdd2f026128f925786ba138f166ca234380..b47e18d29a69742e0e620dfe1b8e5f0f06705493 100644 --- a/ecrire/inc/getdocument.php +++ b/ecrire/inc/getdocument.php @@ -123,7 +123,7 @@ function check_upload_error($error, $msg='') { spip_log ("erreur upload $error"); minipres($msg, '<form action="' . - urldecode($GLOBALS['redirect']). + rawurldecode($GLOBALS['redirect']). '" method="post"><div align="'. #ici method='post' permet d'aller au bon endroit, alors qu'en GET on perd les variables... mais c'est un hack sale. $spip_lang_right. '"><input type="submit" class="fondl" value="'. diff --git a/ecrire/inc/logos.php b/ecrire/inc/logos.php index 58fb68879d3546ac81c9a8173cf3bc2f7497a1b8..abd9c8e78f3c9e8e6f4f68910672c219eed8ceda 100644 --- a/ecrire/inc/logos.php +++ b/ecrire/inc/logos.php @@ -83,7 +83,7 @@ function afficher_boite_logo($type, $id_objet, $id, $texteon, $texteoff, $script if ($spip_display != 4) { - $redirect = urlencode(generer_url_ecrire($script, "$id_objet=$id", true)); + $redirect = rawurlencode(generer_url_ecrire($script, "$id_objet=$id", true)); $logon = $type.'on'.$id; $logoff = $type.'off'.$id; include_spip('inc/session'); diff --git a/ecrire/inc/math.php b/ecrire/inc/math.php index 089a68bf9a19bd1783cd4b7412a16b1c419014a2..58bcaa24bf7f36cac3b23ee60a5c85ace050718f 100644 --- a/ecrire/inc/math.php +++ b/ecrire/inc/math.php @@ -42,7 +42,7 @@ function image_math($tex) { if (!@file_exists($fichier)) { // Aller chercher l'image sur le serveur if ($server) { - spip_log($url = $server.'?'.urlencode($tex)); + spip_log($url = $server.'?'.rawurlencode($tex)); include_spip('inc/distant'); if ($image = recuperer_page($url)) { if ($f = @fopen($fichier, 'w')) { diff --git a/ecrire/inc/mots.php b/ecrire/inc/mots.php index f09e00d7b13288658c1689f04731a77626692953..3cf4e807e082a4ab2892176db14e2ebb8d9b0736 100644 --- a/ecrire/inc/mots.php +++ b/ecrire/inc/mots.php @@ -105,7 +105,7 @@ function formulaire_mots($table, $id_objet, $nouv_mot, $supp_mot, $cherche_mot, global $connect_statut, $connect_toutes_rubriques, $options; global $spip_lang_rtl, $spip_lang_right; - $retour = urlencode($retour); + $retour = rawurlencode($retour); $select_groupe = $GLOBALS['select_groupe']; if ($table == 'articles') { @@ -232,7 +232,7 @@ function formulaire_mots($table, $id_objet, $nouv_mot, $supp_mot, $cherche_mot, if ($GLOBALS['connect_statut'] == '0minirezo' AND $connect_toutes_rubriques ) { echo "<div style='width: 200px;'>"; - $titre = urlencode($cherche_mot); + $titre = rawurlencode($cherche_mot); icone_horizontale(_T('icone_creer_mot_cle'), generer_url_ecrire("mots_edit","new=oui&ajouter_id_article=$id_objet&table=$table&table_id=$table_id&titre=$titre&redirect=$retour"), "mot-cle-24.gif", "creer.gif"); echo "</div> "; } @@ -652,7 +652,7 @@ function afficher_groupe_mots($id_groupe) { if ($connect_statut == "0minirezo" OR $occurrences['articles'][$id_mot] > 0) $s = "<a href='" . - generer_url_ecrire('mots_edit', "id_mot=$id_mot&redirect=" . urlencode(generer_url_ecrire('mots_tous'))) . + generer_url_ecrire('mots_edit', "id_mot=$id_mot&redirect=" . rawurlencode(generer_url_ecrire('mots_tous'))) . "' class='liste-mot'>".typo($titre_mot)."</a>"; else $s = typo($titre_mot); diff --git a/ecrire/inc/plugin.php b/ecrire/inc/plugin.php index 6e6c8c261bad1b0561777bdf677444e70066fae3..0a294f91f2da480043d1c9b9bbbb752e583c3457 100644 --- a/ecrire/inc/plugin.php +++ b/ecrire/inc/plugin.php @@ -199,8 +199,8 @@ function ordonne_plugin(){ foreach($liste as $plug){ $index = $i; $i = $i+2; - if (urldecode($_GET['monter'])==$plug) $index = $index-3; - if (urldecode($_GET['descendre'])==$plug) $index = $index+3; + if (rawurldecode($_GET['monter'])==$plug) $index = $index-3; + if (rawurldecode($_GET['descendre'])==$plug) $index = $index+3; $liste_triee[$index] = $plug; } ksort($liste_triee); diff --git a/ecrire/inc/session.php b/ecrire/inc/session.php index fb73d0e3093398d9d2ac75a19822708a08e2be65..bd4969584dd600d3f6c6a0a51fa2c38d52d68883 100644 --- a/ecrire/inc/session.php +++ b/ecrire/inc/session.php @@ -277,7 +277,7 @@ function generer_action_auteur($action, $arg, $redirect="", $no_entites=false) { global $connect_id_auteur; $hash = calculer_action_auteur("$action $arg"); - if ($redirect) $redirect = "&redirect=" . urlencode($redirect); + if ($redirect) $redirect = "&redirect=" . rawurlencode($redirect); return generer_url_action($action, "arg=$arg&id_auteur=$connect_id_auteur&hash=$hash$redirect", $no_entites); } diff --git a/ecrire/inc/statistiques.php b/ecrire/inc/statistiques.php index 4fa1fe654cc87e9f1a34f7dc38c757583130ecd5..219a13317f5c4a72ee7d2f0882f962a935446375 100644 --- a/ecrire/inc/statistiques.php +++ b/ecrire/inc/statistiques.php @@ -80,7 +80,7 @@ function stats_show_keywords($kw_referer, $kw_referer_host) { if (strpos('-'.$kw_referer, eregi_replace("^(https?:?/?/?)?(www\.)?", "",$url_site))) { if (eregi("(s|search|r|recherche)=([^&]+)", $kw_referer, $regs)) - $keywords = urldecode($regs[2]); + $keywords = rawurldecode($regs[2]); else @@ -100,7 +100,7 @@ function stats_show_keywords($kw_referer, $kw_referer_host) { // Si on a defini le nom de la variable en expression reguliere, chercher la bonne variable if (! strlen($keywords) > 0) { if (ereg($arr_engines[$cnt][1]."([^\&]*)", $query, $vals)) { - $keywords = urldecode($vals[2]); + $keywords = rawurldecode($vals[2]); } } } else { @@ -197,7 +197,7 @@ function aff_referers ($query, $limit=10, $plus) { $visites = pos($nbvisites); - if (strlen($source_vignettes) > 0) $ret = "\n<div style='clear: $spip_lang_right;'></div><a href=\"http://".$lesurls[$numero]."\"><img src=\"$source_vignettes".urlencode($lesurls[$numero])."\" style=\"float: $spip_lang_right; border: 0; margin-bottom: 3px; margin-left: 3px;\" /></a>"; + if (strlen($source_vignettes) > 0) $ret = "\n<div style='clear: $spip_lang_right;'></div><a href=\"http://".$lesurls[$numero]."\"><img src=\"$source_vignettes".rawurlencode($lesurls[$numero])."\" style=\"float: $spip_lang_right; border: 0; margin-bottom: 3px; margin-left: 3px;\" /></a>"; $ret .= "\n<li>"; diff --git a/ecrire/inc/syndic.php b/ecrire/inc/syndic.php index 36501da11bc310ac0c28e649d91f86944d27cab0..3a1e52944e70177636251140a9df70d2977b6b15 100644 --- a/ecrire/inc/syndic.php +++ b/ecrire/inc/syndic.php @@ -81,14 +81,14 @@ function ajouter_tags($matches, $item) { else if (extraire_attribut($match[0], 'scheme') == 'urn:flickr:tags') { foreach(explode(' ', $mot) as $petit) if ($t = creer_tag($petit, $type, - 'http://www.flickr.com/photos/tags/'.urlencode($petit).'/')) + 'http://www.flickr.com/photos/tags/'.rawurlencode($petit).'/')) $tags[] = $t; $mot = ''; } else { # type del.icio.us foreach(explode(' ', $mot) as $petit) if (preg_match(',<rdf[^>]* resource=["\']([^>]*/' - .preg_quote(urlencode($petit),',').')["\'],i', + .preg_quote(rawurlencode($petit),',').')["\'],i', $item, $m)) { $mot = ''; if ($t = creer_tag($petit, $type, $m[1])) diff --git a/ecrire/inc/texte.php b/ecrire/inc/texte.php index 1cfa21a777dd38bde08cce4188074f508b0491b1..ab44c32bf3889daaa18531a443648554bd9b72d5 100644 --- a/ecrire/inc/texte.php +++ b/ecrire/inc/texte.php @@ -934,7 +934,7 @@ function traiter_raccourcis($letexte) { if ($marqueur_notes) // quand il y a plusieurs series // de notes sur une meme page $mn = $marqueur_notes.'-'; - $ancre = $mn.urlencode($num_note); + $ancre = $mn.rawurlencode($num_note); // ne mettre qu'une ancre par appel de note (XHTML) if (!$notes_vues[$ancre]++) @@ -985,7 +985,7 @@ function traiter_raccourcis($letexte) { if (preg_match_all($regexp, $letexte, $matches, PREG_SET_ORDER)) foreach ($matches as $regs) { $terme = trim($regs[1]); - $terme_underscore = urlencode(preg_replace(',\s+,', '_', $terme)); + $terme_underscore = rawurlencode(preg_replace(',\s+,', '_', $terme)); if (strstr($url_glossaire_externe,"%s")) $url = str_replace("%s", $terme_underscore, $url_glossaire_externe); else diff --git a/ecrire/inc/utils.php b/ecrire/inc/utils.php index 8c6c8c4a39a689df47e66963f05ddefcab4a7858..c1b7ed8e14f0f83692323d67a2d6b13b3f8a1089 100644 --- a/ecrire/inc/utils.php +++ b/ecrire/inc/utils.php @@ -296,7 +296,7 @@ function parametre_url($url, $c, $v=NULL, $sep='&') { if (!$v) { unset($url[$n]); } else { - $url[$n] = $c.'='.urlencode($v); + $url[$n] = $c.'='.rawurlencode($v); $v = ''; } } @@ -304,7 +304,7 @@ function parametre_url($url, $c, $v=NULL, $sep='&') { // ajouter notre parametre si on ne l'a pas encore trouve if ($v) - $url[] = $c.'='.urlencode($v); + $url[] = $c.'='.rawurlencode($v); // eliminer les vides $url = array_filter($url); diff --git a/ecrire/public.php b/ecrire/public.php index f43f52d6cac197b542361eebc965c61f6335af02..4ef218fdca9d9d412a04f2107f4c86396b1330a9 100644 --- a/ecrire/public.php +++ b/ecrire/public.php @@ -46,7 +46,7 @@ if (defined('_INC_PUBLIC')) { if ($action = _request('action')) { $var_f = include_fonction($action, 'action'); $var_f(); - if ($redirect) redirige_par_entete(urldecode($redirect)); + if ($redirect) redirige_par_entete(rawurldecode($redirect)); exit; } diff --git a/ecrire/public/global.php b/ecrire/public/global.php index 3197f8d03f3fb273cc6fb348d2639c05d102c59a..2dafea703cff002aac10aa762596f7031afb298e 100644 --- a/ecrire/public/global.php +++ b/ecrire/public/global.php @@ -51,7 +51,7 @@ function calcule_header_et_page ($fond) { spip_log('debug !'); else redirige_par_entete(generer_url_public('login', - 'url='.urlencode( + 'url='.rawurlencode( parametre_url(self(), 'var_mode', 'debug', '&') ), true)); }