From 3cc634c03b5141d9bbc2bc5396e3e686f90ae893 Mon Sep 17 00:00:00 2001 From: "Committo,Ergo:sum" <esj@rezo.net> Date: Fri, 17 Mar 2006 22:56:59 +0000 Subject: [PATCH] =?UTF-8?q?Utilisation=20exclusive=20de=20''rawurlencode''?= =?UTF-8?q?=20et=20''rawurldecode'',=20rempla=C3=A7ant=20''urlencode''=20e?= =?UTF-8?q?t=20''urldecode''=20pour=20unifier=20les=20traitements=20(on=20?= =?UTF-8?q?prend=20celle=20qui=20suit=20un=20RFC,=20le=201738).=20Transfor?= =?UTF-8?q?mation=20obtenue=20par:=20for=20i=20in=20$(grep=20-l=20url..cod?= =?UTF-8?q?e=20*p=20*/*p=20*/*/*p);=20do=20echo=20"=3D=3D=3D=3D=3D$i";=20s?= =?UTF-8?q?ed=20's/\(url..code[^a-z]\)/raw\1/;s/rawraw/raw/'=20$i=20>=20x;?= =?UTF-8?q?=20mv=20=20x=20$i=20done?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ecrire/action/autoriser.php | 2 +- ecrire/action/cookie.php | 8 ++++---- ecrire/action/supprimer.php | 2 +- ecrire/action/tourner.php | 2 +- ecrire/exec/admin_plugin.php | 7 +++---- ecrire/exec/articles.php | 10 +++++----- ecrire/exec/breves_voir.php | 2 +- ecrire/exec/forum.php | 4 ++-- ecrire/exec/message.php | 4 ++-- ecrire/exec/mots_edit.php | 2 +- ecrire/exec/mots_tous.php | 6 +++--- ecrire/exec/mots_type.php | 2 +- ecrire/exec/naviguer.php | 2 +- ecrire/inc/auth.php | 2 +- ecrire/inc/distant.php | 4 ++-- ecrire/inc/filtres.php | 2 +- ecrire/inc/getdocument.php | 2 +- ecrire/inc/logos.php | 2 +- ecrire/inc/math.php | 2 +- ecrire/inc/mots.php | 6 +++--- ecrire/inc/plugin.php | 4 ++-- ecrire/inc/session.php | 2 +- ecrire/inc/statistiques.php | 6 +++--- ecrire/inc/syndic.php | 4 ++-- ecrire/inc/texte.php | 4 ++-- ecrire/inc/utils.php | 4 ++-- ecrire/public.php | 2 +- ecrire/public/global.php | 2 +- 28 files changed, 50 insertions(+), 51 deletions(-) diff --git a/ecrire/action/autoriser.php b/ecrire/action/autoriser.php index b5e64011c9..26997a9f0b 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 78eb4520c2..2608cf0bdf 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 2e04e7cb3c..bf7a6eb877 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 794fcdbd6a..ea0f683dad 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 a38d0bee93..5994139927 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 969add82d0..46241bbea7 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 b2a43cf37e..c70da1f3dc 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 7d02e33ef5..7ed61a1cf9 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 b5857e44b7..f95a182f15 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 b3260d912f..94f8e039b3 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 45dd608d05..17830ac50a 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 53edc7fa0b..083eace997 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 8a7bd553bd..8c9e2caaca 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 8bcb06ba5a..942fcbec72 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 2c6212c7fe..419f4d8db5 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 e9573ba11c..a1122d3b5a 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 4986cbdd2f..b47e18d29a 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 58fb68879d..abd9c8e78f 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 089a68bf9a..58bcaa24bf 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 f09e00d7b1..3cf4e807e0 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 6e6c8c261b..0a294f91f2 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 fb73d0e309..bd4969584d 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 4fa1fe654c..219a13317f 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 36501da11b..3a1e52944e 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 1cfa21a777..ab44c32bf3 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 8c6c8c4a39..c1b7ed8e14 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 f43f52d6ca..4ef218fdca 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 3197f8d03f..2dafea703c 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)); } -- GitLab