当前位置: 首页>>代码示例>>PHP>>正文


PHP corriger_caracteres函数代码示例

本文整理汇总了PHP中corriger_caracteres函数的典型用法代码示例。如果您正苦于以下问题:PHP corriger_caracteres函数的具体用法?PHP corriger_caracteres怎么用?PHP corriger_caracteres使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了corriger_caracteres函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: ajout_fichier

function ajout_fichier($doc_file, $dest, $cpt_doc, $id_groupe)
{
    global $max_size, $total_max_size;
    /* Vérification du type de fichier */
    $ext = '';
    //if (my_ereg("\.([^.]+)$", $doc_file['name'][$cpt_doc], $match)) {
    if (function_exists("mb_ereg") && mb_ereg("\\.([^.]+)\$", $doc_file['name'][$cpt_doc], $match) || function_exists("ereg") && ereg("\\.([^.]+)\$", $doc_file['name'][$cpt_doc], $match)) {
        $ext = corriger_caracteres(my_strtolower($match[1]));
        $ext = corriger_extension($ext);
    }
    $query = "SELECT id_type FROM ct_types_documents WHERE extension='{$ext}' AND upload='oui'";
    $result = sql_query($query);
    if ($row = @sql_row($result, 0)) {
        $id_type = $row[0];
    } else {
        echo "Erreur : Ce type de fichier n'est pas autorisé en téléchargement.\nSi vous trouvez cela regrettable, contactez l'administrateur.\nIl pourra modifier ce paramétrage dans\n   *Gestion des modules/Cahiers de textes/Types de fichiers autorisés en téléchargement*.";
        die;
    }
    /* Vérification de la taille du fichier */
    $max_size_ko = $max_size / 1024;
    $taille = $doc_file['size'][$cpt_doc];
    if ($taille > $max_size) {
        echo "Erreur : Téléchargement impossible : taille maximale autorisée : " . $max_size_ko . " Ko";
        die;
    }
    if ($taille == 0) {
        echo "Le fichier sélectionné semble vide : transfert impossible.";
        die;
    }
    $query = "SELECT DISTINCT sum(taille) somme FROM ct_documents d, ct_entry e WHERE (e.id_groupe='" . $id_groupe . "' and e.id_ct = d.id_ct)";
    $total = sql_query1($query);
    if ($total + $taille > $total_max_size) {
        echo "Erreur : Téléchargement impossible : espace disque disponible (" . ($total_max_size - $total) / 1024 . " Ko) insuffisant.";
        die;
    }
    /* Crétion du répertoire de destination */
    if (!creer_repertoire($dest)) {
        echo "Erreur : Problème d'écriture sur le répertoire. Veuillez signaler ce problème à l'administrateur du site";
        echo $dest;
        die;
    }
    /* Recopier le fichier */
    $nom_sans_ext = mb_substr(basename($doc_file['name'][$cpt_doc]), 0, mb_strlen(basename($doc_file['name'][$cpt_doc])) - (mb_strlen($ext) + 1));
    $nom_sans_ext = my_ereg_replace("[^.a-zA-Z0-9_=-]+", "_", $nom_sans_ext);
    if (strstr($nom_sans_ext, "..")) {
        echo "Erreur : Problème de transfert : le fichier n'a pas pu être transféré sur le répertoire. Veuillez signaler ce problème à l'administrateur du site";
        die;
    }
    $n = 0;
    while (file_exists($newFile = $dest . "/" . $nom_sans_ext . ($n++ ? '-' . $n : '') . '.' . $ext)) {
    }
    $dest_file_path = $newFile;
    if (!deplacer_fichier_upload($doc_file['tmp_name'][$cpt_doc], $dest_file_path)) {
        echo "Erreur : Problème de transfert : le fichier n'a pas pu être transféré sur le répertoire. Veuillez signaler ce problème à l'administrateur du site";
        die;
    }
    return $dest_file_path;
}
开发者ID:rhertzog,项目名称:lcs,代码行数:58,代码来源:traite_doc.php

示例2: action_poster_forum_prive_post

function action_poster_forum_prive_post($r)
{
	list(,$id, $id_parent, $statut, $script, $objet) = $r;

	if (_request('valider_forum') AND ($statut!='')) {
		include_spip('inc/texte');
		include_spip('inc/forum');

		$titre_message = corriger_caracteres(_request('titre_message'));
		$texte = corriger_caracteres(_request('texte'));

		$id_forum = sql_insertq('spip_forum', array(
			$objet => $id,
			'titre' => $titre_message,
			'texte' => $texte,
			'date_heure' => date('Y-m-d H:i:s'),
			'nom_site' => _request('nom_site'),
			'url_site' => _request('url_site'),
			'statut' => $statut,
			'id_auteur' =>$GLOBALS['visiteur_session']['id_auteur'],
			'auteur' => $GLOBALS['visiteur_session']['nom'],
			'email_auteur' => $GLOBALS['visiteur_session']['email'],
			'id_parent' => $id_parent));

		calculer_threads();

		if ($objet == 'id_message') {
			sql_updateq("spip_auteurs_messages", array("vu" => 'non'), "id_message=$id");

		}

		// Notification
		if ($notifications = charger_fonction('notifications', 'inc')) {
			$notifications('forumprive', $id_forum);
		}

		$retour = urldecode(_request('redirect'));
		$retour = parametre_url($retour, 'modif_forum', 'fin', '&');
		$retour = parametre_url($retour, 'texte', $objet, '&');
#		$retour = parametre_url($retour, 'script', $script, '&');
		redirige_par_entete($retour ."#id".$id_forum);
	} else {
	   // previsualisation : on ne fait que passer .... 
	   // et si les clients HTTP respectaient le RFC HTTP selon lequel
	   // une redirection d'un POST doit etre en POST et pas en GET
	   // on n'aurait pas a faire l'horreur ci-dessous.
		  
	   set_request('action', '');
	   set_request('exec', 'poster_forum_prive');
	   set_request('id', $id);
	   set_request('id_parent', $id_parent);
	   set_request('statut', $statut);
	   set_request('script', $script);

	   include(_DIR_RESTREINT.'index.php');
	   exit;
	}
}
开发者ID:rhertzog,项目名称:lcs,代码行数:58,代码来源:poster_forum_prive.php

示例3: url_nettoyer

function url_nettoyer($titre,$longueur_maxi,$longueur_min=0,$separateur='-',$filtre=''){
	if (!defined('_TRANSLITTERER_URL')) define('_TRANSLITTERER_URL', true);
	
	$titre = supprimer_tags(supprimer_numero(extraire_multi($titre)));
	$url = corriger_caracteres($titre);
	
	
	if (_TRANSLITTERER_URL) $url = translitteration($url);

	if ($filtre)
		$url = $filtre($url);

	// on va convertir tous les caracteres de ponctuation et espaces
	// a l'exception de l'underscore (_), car on veut le conserver dans l'url
	$url = str_replace('_', chr(7), $url);
	$url = @preg_replace(',[[:punct:][:space:]]+,u', ' ', $url);
	$url = str_replace(chr(7), '_', $url);

	// S'il reste trop de caracteres non latins, les gerer comme wikipedia
	// avec rawurlencode :
	if (_TRANSLITTERER_URL && preg_match_all(",[^a-zA-Z0-9 _]+,", $url, $r, PREG_SET_ORDER)) {
		foreach ($r as $regs) {
			$url = substr_replace($url, rawurlencode($regs[0]),
				strpos($url, $regs[0]), strlen($regs[0]));
		}
	}

	// S'il reste trop peu, renvoyer vide
	if (strlen($url) < $longueur_min)
		return '';

	// Sinon couper les mots et les relier par des $separateur
	if (_TRANSLITTERER_URL) $mots = preg_split(",[^a-zA-Z0-9_%]+,", $url); 
	else $mots = preg_split(",[\s]+,", $url);
	$url = '';
	foreach ($mots as $mot) {
		if (!strlen($mot)) continue;
		$url2 = $url.$separateur.$mot;

		// Si on depasse $longueur_maxi caracteres, s'arreter
		// ne pas compter 3 caracteres pour %E9 mais un seul
		$long = preg_replace(',%.,', '', $url2);
		if (strlen($long) > $longueur_maxi) {
			break;
		}

		$url = $url2;
	}
	$url = substr($url, 1);

	// On enregistre en utf-8 dans la base
	$url = rawurldecode($url);

	if (strlen($url) < $longueur_min)
		return '';
	return $url;
}
开发者ID:rhertzog,项目名称:lcs,代码行数:57,代码来源:editer_url.php

示例4: formulaires_rediriger_article_traiter_dist

function formulaires_rediriger_article_traiter_dist($id_article, $retour = '')
{
    $url = preg_replace(",^\\s*https?://\$,i", "", rtrim(_request('redirection')));
    if ($url) {
        $url = corriger_caracteres($url);
    }
    include_spip('action/editer_article');
    articles_set($id_article, array('virtuel' => $url));
    $js = _AJAX ? '<script type="text/javascript">if (window.ajaxReload) ajaxReload("wysiwyg");</script>' : '';
    return array('message_ok' => ($url ? _T('info_redirection_activee') : _T('info_redirection_desactivee')) . $js, 'editable' => true);
}
开发者ID:xablen,项目名称:Semaine14_SPIP_test,代码行数:11,代码来源:rediriger_article.php

示例5: spip_apres_typo

function spip_apres_typo($letexte)
{
    // caracteres speciaux
    $letexte = corriger_caracteres($letexte);
    $letexte = str_replace("'", "&#8217;", $letexte);
    // relecture des &nbsp;
    if ($GLOBALS['flag_ecrire'] and $GLOBALS['revision_nbsp']) {
        $letexte = preg_replace('/&nbsp;/', '<span class="spip-nbsp">&nbsp;</span>', $letexte);
    }
    if (@function_exists('apres_typo')) {
        return apres_typo($letexte);
    }
    return $letexte;
}
开发者ID:nyimbi,项目名称:legalcase,代码行数:14,代码来源:inc_text.php

示例6: action_description_outil_post

function action_description_outil_post($index) {
	global $metas_vars;
	if(defined('_SPIP19300')) $connect_id_auteur = $GLOBALS['auteur_session']['id_auteur'];
		else global $connect_id_auteur;
cs_log("Debut : action_description_outil_post($index) - On modifie la(les) variable(s) dans la base");

	// on recupere dans le POST le nom des variables a modifier et le nom de l'outil correspondant
	$variables = unserialize(urldecode(corriger_caracteres(_request('variables'))));
	$outil = corriger_caracteres(_request('outil'));
//cs_log($variables, '$variables = ');
cs_log($metas_vars, 'metas_vars :');
	// besoin des outils pour l'autorisation de modifier les variables
	include_spip('cout_utils');
	include_spip('config_outils');
	global $outils, $cs_variables;
	// on traite chaque variable
	foreach($variables as $var) if(autoriser('configurer', 'variable', 0, NULL, array('nom'=>$var, 'outil'=>$outils[$outil]))) {
		// on recupere dans le POST la nouvelle valeur de la variable
		$final = corriger_caracteres(_request($var));
		if (in_array($var, $metas_vars['_nombres'])) $final = intval($final);
		spip_log("Outil du Couteau Suisse ($outil). Demande de modification sur une variable par l'auteur id=$connect_id_auteur : %$var% = $final");
		// et on modifie les metas !
		if(!isset($cs_variables[$var]['externe'])) $metas_vars[$var] = $final;
		if(isset($cs_variables[$var]['action'])) {
			$action = str_replace('%s', $final, $cs_variables[$var]['action']);
			spip_log("Outil du Couteau Suisse ($outil). Demande d'action sur cette variable : ".$action);
			eval($action);
		}
			
	} else 
		spip_log("Outil du Couteau Suisse n°$index. Modification interdite de la variable %$var% par l'auteur id=$connect_id_auteur !!");
//cs_log($metas_vars, " -- metas_vars = ");
	ecrire_meta('tweaks_variables', serialize($metas_vars));
	ecrire_metas();

cs_log(" -- donc, reinitialisation forcee !");
	// on reinitialise tout, au cas ou ...
	include_spip('inc/invalideur');
	suivre_invalideur("1"); # tout effacer
	purger_repertoire(_DIR_SKELS);
	purger_repertoire(_DIR_CACHE);
	include_spip('cout_utils');
	cs_initialisation(true);
cs_log(" FIN : action_description_outil_post(Array($index)) - Reinitialisation forcee terminee.");
}
开发者ID:rhertzog,项目名称:lcs,代码行数:45,代码来源:description_outil.php

示例7: anti_inject

function anti_inject(&$_value, $_key) {
    global $mysqli;

    if (is_array($_value)) {
       foreach ($_value as $key2 => $value2) {
           $value2 = corriger_caracteres($value2);
           if (get_magic_quotes_gpc()) $_value[$key2] = stripslashes($value2);
           if (!is_numeric($_value[$key2])) {
               $_value[$key2] = $mysqli->real_escape_string($_value[$key2]);
           }
       }
   } else {
       $_value = corriger_caracteres($_value);
       if (get_magic_quotes_gpc())    $_value = stripslashes($_value);
       if (!is_numeric($_value)) {
           $_value = $mysqli->real_escape_string($_value);
       }
   }
}
开发者ID:rhertzog,项目名称:lcs,代码行数:19,代码来源:traitement_data.inc.php

示例8: settype

         #on cree ou recree ".TABLE_PREFIX."_area_periodes pour le domaine
         if (protect_data_sql($_POST['enable_periods']) == 'y') {
             if (isset($number_periodes)) {
                 settype($number_periodes, "integer");
                 if ($number_periodes < 1) {
                     $number_periodes = 1;
                 }
                 $del_periode = grr_sql_query("delete from " . TABLE_PREFIX . "_area_periodes where id_area='" . $id_area . "'");
                 #on efface le modele par defaut avec area=0
                 $del_periode = grr_sql_query("delete from " . TABLE_PREFIX . "_area_periodes where id_area='0'");
                 $i = 0;
                 $num = 0;
                 while ($i < $number_periodes) {
                     $temp = "periode_" . $i;
                     if (isset($_POST[$temp])) {
                         $nom_periode = corriger_caracteres($_POST[$temp]);
                         $reg_periode = grr_sql_query("insert into " . TABLE_PREFIX . "_area_periodes set\n\t\t\t\t\t\t\t\tid_area='" . $id_area . "',\n\t\t\t\t\t\t\t\tnum_periode='" . $num . "',\n\t\t\t\t\t\t\t\tnom_periode='" . protect_data_sql($nom_periode) . "'\n\t\t\t\t\t\t\t\t");
                         #on cree un modele par defaut avec area=0
                         $reg_periode = grr_sql_query("insert into " . TABLE_PREFIX . "_area_periodes set\n\t\t\t\t\t\t\t\tid_area='0',\n\t\t\t\t\t\t\t\tnum_periode='" . $num . "',\n\t\t\t\t\t\t\t\tnom_periode='" . protect_data_sql($nom_periode) . "'");
                         $num++;
                     }
                     $i++;
                 }
             }
         }
         $msg = get_vocab("message_records");
     }
 }
 if ($access == 'a') {
     $sql = "DELETE FROM " . TABLE_PREFIX . "_j_user_area WHERE id_area='{$id_area}'";
     if (grr_sql_command($sql) < 0) {
开发者ID:JeromeDevome,项目名称:GRR,代码行数:31,代码来源:admin_edit_room.php

示例9: isset

    die;
}
$id_classe = isset($_POST['id_classe']) ? $_POST['id_classe'] : (isset($_GET['id_classe']) ? $_GET['id_classe'] : NULL);
$msg = "";
if (isset($_POST['is_posted'])) {
    check_token();
    $pb_record = "no";
    $ele_login = isset($_POST["ele_login"]) ? $_POST["ele_login"] : NULL;
    $favorable = isset($_POST["favorable"]) ? $_POST["favorable"] : NULL;
    for ($i = 0; $i < count($ele_login); $i++) {
        // Vérifier si l'élève est bien dans la classe?
        // Inutile si seul l'admin accède et qu'on ne limite pas l'accès à telle ou telle classe
        $nom_log = "app_eleve_" . $i;
        //echo "\$nom_log=$nom_log<br />";
        if (isset($NON_PROTECT[$nom_log])) {
            $app = traitement_magic_quotes(corriger_caracteres($NON_PROTECT[$nom_log]));
        } else {
            $app = "";
        }
        $app = suppression_sauts_de_lignes_surnumeraires($app);
        //if((isset($fav[$i]))||(isset($b2i[$i]))||(isset($b2i[$i]))) {
        if (isset($favorable[$i])) {
            //if(($favorable[$i]=='O')||($favorable[$i]=='N')) {
            if ($favorable[$i] == 'O' || $favorable[$i] == 'N' || $favorable[$i] == '') {
                $sql = "SELECT 1=1 FROM notanet_avis WHERE login='" . $ele_login[$i] . "';";
                $res_ele = mysqli_query($GLOBALS["mysqli"], $sql);
                if (mysqli_num_rows($res_ele) == 0) {
                    $sql = "INSERT INTO notanet_avis SET login='" . $ele_login[$i] . "'";
                    $sql .= ",favorable='" . $favorable[$i] . "'";
                    $sql .= ",avis='" . $app . "'";
                    $sql .= ";";
开发者ID:alhousseyni,项目名称:gepi,代码行数:31,代码来源:saisie_avis.php

示例10:

					}
				}
			}
		}
		else {
			/*
			$id_nature=$_POST['traitement'];
			$sql="SELECT * FROM s_types_sanctions WHERE id_nature='".$id_nature."';";
			//echo "$sql<br />\n";
			$res=mysql_query($sql);
			if(mysql_num_rows($res)>0) {
				$lig=mysql_fetch_object($res);
				$type_sanction=$lig->nature;
			*/
				if (isset($NON_PROTECT["description"])){
					$description=traitement_magic_quotes(corriger_caracteres($NON_PROTECT["description"]));
					// Contrôle des saisies pour supprimer les sauts de lignes surnuméraires.
					$description=suppression_sauts_de_lignes_surnumeraires($description);
				}
				else {
					$description="";
				}

				if(isset($id_sanction)) {
					// Modification???
					$sql="SELECT 1=1 FROM s_sanctions WHERE id_sanction='$id_sanction';";
					//echo "$sql<br />\n";
					$res=mysqli_query($GLOBALS["mysqli"], $sql);
					if(mysqli_num_rows($res)==0) {
						$msg.="La ".$mod_disc_terme_sanction." n°$id_sanction n'existe pas dans 's_sanctions'.<br />Elle ne peut pas être mise à jour.<br />";
					}
开发者ID:rhertzog,项目名称:lcs,代码行数:31,代码来源:saisie_sanction.php

示例11: addslashes

 if (isset($current_group["eleves"][$periode_num]["users"][$reg_eleve_login]["classe"])) {
     $id_classe = $current_group["eleves"][$periode_num]["users"][$reg_eleve_login]["classe"];
     //if ($current_group["classe"]["ver_periode"][$id_classe][$periode_num] == "N") {
     $note = $note_eleve[$i];
     $elev_statut = '';
     //==============================
     // PREPARATIFS boireaus 20080422
     // Pour passer à no_anti_inject comme pour les autres saisies d'appréciations
     if ($mode_commentaire_20080422 != "no_anti_inject") {
         // Problème: les accents sont codés en HTML...
         $comment = $comment_eleve[$i];
         // Cela fonctionne chez moi avec cette correction (accents, apostrophes et retours à la ligne):
         $comment = addslashes(my_ereg_replace('(\\\\r\\\\n)+', "\r\n", my_ereg_replace("&#039;", "'", html_entity_decode($comment))));
     } else {
         if (isset($NON_PROTECT["comment_eleve" . $i])) {
             $comment = traitement_magic_quotes(corriger_caracteres($NON_PROTECT["comment_eleve" . $i]));
         } else {
             $comment = "";
         }
         //echo "$i: $comment<br />";
         // Contrôle des saisies pour supprimer les sauts de lignes surnuméraires.
         $comment = my_ereg_replace('(\\\\r\\\\n)+', "\r\n", $comment);
     }
     //==============================
     //echo "$reg_eleve_login : $note <br />";
     if ($note == 'disp' || $note == 'd') {
         $note = '0';
         $elev_statut = 'disp';
     } elseif ($note == 'abs' || $note == 'a') {
         $note = '0';
         $elev_statut = 'abs';
开发者ID:rhertzog,项目名称:lcs,代码行数:31,代码来源:saisie_notes_cc.php

示例12: fopen

 echo "<tr><td><p class=\"small\">Identifiant de la matière</p></td><td><p class=\"small\">Nom complet</p></td></tr>";
 //=========================
 $fp = fopen($dbf_file['tmp_name'], "r");
 // On lit une ligne pour passer la ligne d'entête:
 $ligne = fgets($fp, 4096);
 //=========================
 $nb_reg_no = 0;
 for ($k = 1; $k < $nblignes + 1; $k++) {
     //$ligne = dbase_get_record($fp,$k);
     if (!feof($fp)) {
         $ligne = fgets($fp, 4096);
         if (trim($ligne) != "") {
             $tabligne = explode(";", $ligne);
             for ($i = 0; $i < count($tabchamps); $i++) {
                 //$affiche[$i] = traitement_magic_quotes(corriger_caracteres(dbase_filter(trim($ligne[$tabindice[$i]]))));
                 $affiche[$i] = traitement_magic_quotes(corriger_caracteres(dbase_filter(trim($tabligne[$tabindice[$i]]))));
             }
             $verif = mysqli_query($GLOBALS["mysqli"], "select matiere, nom_complet from matieres where matiere='{$affiche['0']}'");
             $resverif = mysqli_num_rows($verif);
             if ($resverif == 0) {
                 $req = mysqli_query($GLOBALS["mysqli"], "insert into matieres set matiere='{$affiche['0']}', nom_complet='{$affiche['1']}', priority='0',matiere_aid='n',matiere_atelier='n'");
                 if (!$req) {
                     $nb_reg_no++;
                     echo mysqli_error($GLOBALS["mysqli"]);
                 } else {
                     echo "<tr><td><p><font color='red'>{$affiche['0']}</font></p></td><td><p>" . htmlspecialchars($affiche[1]) . "</p></td></tr>";
                 }
             } else {
                 $nom_complet = old_mysql_result($verif, 0, 'nom_complet');
                 echo "<tr><td><p><font color='green'>{$affiche['0']}</font></p></td><td><p>" . htmlspecialchars($nom_complet) . "</p></td></tr>";
             }
开发者ID:rhertzog,项目名称:lcs,代码行数:31,代码来源:disciplines_csv.php

示例13: isset

			}
		}
		else {
			tentative_intrusion(2, "Tentative de saisie d'avis du conseil de classe pour ".$eleve_saisie_avis.".");
			$mess=rawurlencode("Tentative non autorisée de saisie d'avis du conseil de classe.");
			header("Location: ../accueil.php?msg=$mess");
			die();
		}

		$sql="SELECT verouiller FROM periodes WHERE id_classe='$id_classe' AND num_periode='$num_periode_saisie';";
		//echo "$sql<br />";
		$test_verr_per=mysqli_query($GLOBALS["mysqli"], $sql);
		$lig_verr_per=mysqli_fetch_object($test_verr_per);
		if($lig_verr_per->verouiller!='O') {

			$current_eleve_login_ap = isset($NON_PROTECT["current_eleve_login_ap"]) ? traitement_magic_quotes(corriger_caracteres($NON_PROTECT["current_eleve_login_ap"])) :NULL;

			// ***** AJOUT POUR LES MENTIONS *****
			$current_eleve_login_me = isset($_POST["current_eleve_login_me"]) ? $_POST["current_eleve_login_me"] : NULL;
			// ***** FIN DE L'AJOUT POUR LES MENTIONS *****

			//echo "\$current_eleve_login_ap=$current_eleve_login_ap<br />";

			$test_eleve_avis_query = mysqli_query($GLOBALS["mysqli"], "SELECT * FROM avis_conseil_classe WHERE (login='$eleve_saisie_avis' AND periode='$num_periode_saisie')");
			$test = mysqli_num_rows($test_eleve_avis_query);
			if ($test != "0") {
				$sql="UPDATE avis_conseil_classe SET avis='$current_eleve_login_ap',";
				if(isset($current_eleve_login_me)) {$sql.="id_mention='$current_eleve_login_me',";}
				$sql.="statut='' WHERE (login='$eleve_saisie_avis' AND periode='$num_periode_saisie');";
				$register = mysqli_query($GLOBALS["mysqli"], $sql);
			}
开发者ID:alhousseyni,项目名称:gepi,代码行数:31,代码来源:affiche_eleve.php

示例14: cextras_pre_edition

/**
 * Ajouter les champs extras soumis par les formulaire CVT editer_xx
 *
 * Pour chaque champs extras envoyé par le formulaire d'édition,
 * ajoute les valeurs dans l'enregistrement à effectuer.
 * 
 * @pipeline pre_edition
 * @param array $flux Données du pipeline
 * @return array      Données du pipeline
**/
function cextras_pre_edition($flux)
{
    include_spip('inc/cextras');
    include_spip('inc/saisies_lister');
    $table = $flux['args']['table'];
    if ($saisies = champs_extras_objet($table)) {
        // Restreindre les champs postés en fonction des autorisations de les modifier
        // au cas où un malin voudrait en envoyer plus que le formulaire ne demande
        $saisies = champs_extras_autorisation('modifier', objet_type($table), $saisies, $flux['args']);
        $saisies = champs_extras_saisies_lister_avec_sql($saisies);
        foreach ($saisies as $saisie) {
            $nom = $saisie['options']['nom'];
            if (_request('cextra_' . $nom)) {
                $extra = _request($nom);
                if (is_array($extra)) {
                    $extra = join(',', $extra);
                }
                $flux['data'][$nom] = corriger_caracteres($extra);
            }
        }
    }
    return $flux;
}
开发者ID:RadioCanut,项目名称:site-radiocanut,代码行数:33,代码来源:cextras_pipelines.php

示例15: corriger_typo

/**
 * http://code.spip.net/@corriger_typo
 *
 * @param string $t
 * @param string $lang
 * @return string
 */
function corriger_typo($t, $lang = '')
{
    static $typographie = array();
    // Plus vite !
    if (!$t) {
        return $t;
    }
    $t = pipeline('pre_typo', $t);
    // Caracteres de controle "illegaux"
    $t = corriger_caracteres($t);
    // Proteger les caracteres typographiques a l'interieur des tags html
    if (preg_match_all(_TYPO_BALISE, $t, $regs, PREG_SET_ORDER)) {
        foreach ($regs as $reg) {
            $insert = $reg[0];
            // hack: on transforme les caracteres a proteger en les remplacant
            // par des caracteres "illegaux". (cf corriger_caracteres())
            $insert = strtr($insert, _TYPO_PROTEGER, _TYPO_PROTECTEUR);
            $t = str_replace($reg[0], $insert, $t);
        }
    }
    // trouver les blocs multi et les traiter a part
    $t = extraire_multi($e = $t, $lang, true);
    $e = $e === $t;
    // Charger & appliquer les fonctions de typographie
    $idxl = "{$lang}:" . (isset($GLOBALS['lang_objet']) ? $GLOBALS['lang_objet'] : $GLOBALS['spip_lang']);
    if (!isset($typographie[$idxl])) {
        $typographie[$idxl] = charger_fonction(lang_typo($lang), 'typographie');
    }
    $t = $typographie[$idxl]($t);
    // Les citations en une autre langue, s'il y a lieu
    if (!$e) {
        $t = echappe_retour($t, 'multi');
    }
    // Retablir les caracteres proteges
    $t = strtr($t, _TYPO_PROTECTEUR, _TYPO_PROTEGER);
    // pipeline
    $t = pipeline('post_typo', $t);
    # un message pour abs_url - on est passe en mode texte
    $GLOBALS['mode_abs_url'] = 'texte';
    return $t;
}
开发者ID:genma,项目名称:spip_ynh,代码行数:48,代码来源:texte.php


注:本文中的corriger_caracteres函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。