".$msg[1130]." : ".$msg[1131]."";
break;
case "TABLEAUCSV":
break;
case "EXPORT_NOTI":
$fichier_temp_nom=str_replace(" ","",microtime());
$fichier_temp_nom=str_replace("0.","",$fichier_temp_nom);
$fname = tempnam("./temp", $fichier_temp_nom.".doc");
break;
default:
echo "
".$msg[1130]." : ".$msg[1131]."
";
break;
}
if(!isset($id_proc)) $id_proc = 0;
if (!$id_proc) {
procs::$module = 'edit';
print procs::get_display_list();
} else {
@set_time_limit ($pmb_set_time_limit);
//Récupération des variables postées, on en aura besoin pour les liens
$page="./edit.php";
$requete = "SELECT idproc, name, requete, comment, proc_notice_tpl, proc_notice_tpl_field FROM procs where idproc='".$id_proc."' ";
$res = pmb_mysql_query($requete);
$row=pmb_mysql_fetch_row($res);
//Requete et calcul du nombre de pages à afficher selon la taille de la base 'pret'
//********************************************************************************/
// récupérer ici la procédure à lancer
$sql = $row[2];
//$proc_notice_tpl=$row[4];
$proc_notice_tpl_field=$row[5];
if (preg_match_all("|!!(.*)!!|U",$sql,$query_parameters) && $form_type=="") {
$hp=new parameters($id_proc,"procs");
$hp->gen_form("edit.php?categ=procs&sub=&action=execute&id_proc=".$id_proc."&force_exec=".$force_exec);
} else {
$param_hidden="";
if($force_exec){
$param_hidden.="";//On a forcé la requete
}
if (preg_match_all("|!!(.*)!!|U",$sql,$query_parameters)) {
$hp=new parameters($id_proc,"procs");
$hp->get_final_query();
$sql=$hp->final_query;
$param_hidden.=$hp->get_hidden_values();//Je mets les paramêtres en champ caché en cas de forçage
$param_hidden.="";//Je mets le marqueur des paramêtres en champ caché en cas de forçage
}
if($dest != "TABLEAU" && $dest != "TABLEAUHTML" && $dest != "TABLEAUCSV"){
print "";
}
if (!explain_requete($sql) && !((SESSrights & EDIT_FORCING_AUTH) && $force_exec)){
die("
".pmb_mysql_error());
}
$nombre_lignes_total = pmb_mysql_num_rows($req_nombre_lignes);
}
$param_hidden.="";//Je garde le nombre de ligne total pour le pas refaire la requête à la page suivante
//REINITIALISATION DE LA REQUETE SQL
switch($dest) {
case "TABLEAU":
case "TABLEAUHTML":
case "TABLEAUCSV":
case "EXPORT_NOTI":
if(!$req_nombre_lignes){
$res = @pmb_mysql_query($sql, $dbh) or die($sql."
";
//tri défini ?
if($sort>0){
// preg_match('`^(.+)( order by .+)$`i',$sql,$arraySql);
preg_match("/(.+)(order by.+)$/isU", $sql,$arraySql);
if(count($arraySql)) {
$sql=$arraySql[1]." order by ".($sort>0?$sort:(-$sort)." DESC");
} else {
$sql .= " order by ".($sort>0?$sort:(-$sort)." DESC");
}
}
//Si aucune limite_page n'a été passée, valeur par défaut : 10
if (!isset($limite_page) || !$limite_page) $limite_page = 10;
$nbpages= $nombre_lignes_total / $limite_page;
// on arondi le nombre de page pour ne pas avoir de virgules, ici au chiffre supérieur
$nbpages_arrondi = ceil($nbpages);
// on enlève 1 au nombre de pages, car la 1ere page affichée ne fait pas partie des pages suivantes
$nbpages_arrondi = $nbpages_arrondi - 1;
if (!isset($numero_page) || !$numero_page) $numero_page=0;
$limite_mysql = $limite_page * $numero_page;
//on définit les limites
$last_limit_position = strripos($sql, ' LIMIT ');
if($last_limit_position !== false) {
$last_parenthesis_position = strripos($sql, ')');
//le dernier limit ne doit pas être dans une sous-requête
if($last_parenthesis_position === false || $last_parenthesis_position < $last_limit_position) {
$sql = substr($sql, 0, $last_limit_position);
}
}
$sql = $sql." LIMIT ".$limite_mysql.", ".$limite_page;
// on execute la requete avec les bonnes limites
$res = @pmb_mysql_query($sql) or die($sql."