$req = "SELECT DISTINCT `access_arti2`.`CODE_ARTICLE` " . ", `access_arti2`.`LIBELLE` " . ", `access_arti2`.`actif` " . ", `access_arti2`.`id_fta` " . ", `fta`.`id_fta_etat` " . "FROM `fta_nomenclature`, `access_arti2`, fta_composition, fta " . "WHERE `fta_nomenclature`.`id_fta` = `access_arti2`.`id_fta` " . "AND `fta`.`id_fta` = `access_arti2`.`id_fta` " . "AND fta_composition.id_fta=access_arti2.id_fta " . "GROUP BY `access_arti2`.`CODE_ARTICLE` " . ", `access_arti2`.`LIBELLE` " . ", `access_arti2`.`actif` " . ", `fta`.`id_fta_etat` " . ", `access_arti2`.`id_fta` " . "HAVING ( `fta`.`id_fta_etat`=" . $id_fta_etat . " )"; $result = DatabaseOperation::query($req); $num = mysql_num_rows($result); $total = 0; if ($num) { while ($rows = mysql_fetch_array($result)) { //Recherche des produits qui doivent être associés à un composant $req = "SELECT id_fta_nomenclature, fta_nomenclature.id_fta " . "FROM fta_nomenclature, annexe_agrologic_article_codification, access_arti2 " . "WHERE fta_nomenclature.id_fta='" . $rows["id_fta"] . "' " . "AND access_arti2.id_fta=fta_nomenclature.id_fta " . "AND annexe_agrologic_article_codification.id_annexe_agrologic_article_codification=fta_nomenclature.id_annexe_agrologic_article_codification " . "AND (" . "( Site_de_production<>'3' " . "AND " . "( " . "(prefixe_annexe_agrologic_article_codification='02' AND site_production_fta_nomenclature<>'3' )" . ") " . ") " . " OR " . "( Site_de_production='3' " . "AND " . "( " . "(prefixe_annexe_agrologic_article_codification='01' AND site_production_fta_nomenclature='3' )" . ") " . ") " . ") "; $result1 = DatabaseOperation::query($req); $nb = 0; //Mise à zéro du compteur des produits orphelins de cette FTA while ($rows_nomenclature = mysql_fetch_array($result1)) { //Recherche d'un composant associé à ce produit pour cette FTA $req = "SELECT id_fta_composition " . "FROM fta_composition " . "WHERE fta_composition.id_fta='" . $rows_nomenclature["id_fta"] . "' " . "AND fta_composition.id_fta_nomenclature='" . $rows_nomenclature["id_fta_nomenclature"] . "' "; //Si il n'y en a pas, le produit est orphelin if (!mysql_num_rows(DatabaseOperation::query($req))) { $nb++; } } //Si il y a au moins 1 produit orphelin if ($nb) { $total++; $HTML_summary .= "<a href=composant_orphelin_detail.php?id_fta=" . $rows["id_fta"] . ">" . $rows["CODE_ARTICLE"] . " - " . $rows["LIBELLE"] . "</a><br>" . " " . "Nombre de produit orphelin: " . $nb . "<br><br>"; } //Fin de l'affichage de la FTA } //Fin de parcours des FTA } //Fin du controle de l'existance de FTA /* Sélection du mode d'affichage
<?php /* Creation du tableau */ $req = "select * from archivece where numserce='{$numserce}' order by datearchive"; $result = DatabaseOperation::query($req); $num = mysql_num_rows($result); if ($num != 0) { $i = 0; while ($i < $num) { $numartce = mysql_result($result, $i, numartce); $datecrea = mysql_result($result, $i, datecrea); $datearchive = mysql_result($result, $i, datearchive); $id_userce = mysql_result($result, $i, id_userce); $titrece = mysql_result($result, $i, titrece); /* recherche du nom de l'auteur */ $req2 = "select nom, prenom from salaries where id_user='******'"; $result2 = DatabaseOperation::query($req2); $sal_nom = mysql_result($result2, 0, nom); $sal_prenom = mysql_result($result2, 0, prenom); echo " <tr>\n"; echo " <td class=\"loginFFFFFF\">\n"; echo " <div align=\"left\">\n"; $datecrea = affiche_date($datecrea); echo " {$datecrea}</div> </td>\n"; echo " <td class=\"loginFFFFFF\">\n"; echo " <div align=\"left\">\n"; $datearchive = affiche_date($datearchive); echo " {$datearchive}</div> </td>\n"; echo " <td class=\"loginFFFFFF\">\n"; echo " <div align=\"left\"> {$sal_prenom} {$sal_nom} </div>\n"; echo " </td>\n"; echo " <td class=\"loginFFFFFF\">\n";
centrece($service); ?> </td> <td valign=top> <?php /* article ce colonne */ droitece($service); ?> </td> </tr> </table><br> <table width="100%" border="0" cellspacing="4" cellpadding="0" align=center> <tr><td align=center> <?php if ($service) { $requeto = DatabaseOperation::query("SELECT * FROM articlece where numserce={$service} and placeinfoce='Info centrale'"); $totalito = mysql_num_rows($requeto); if ($totalito > 3) { echo "<font size=1 color=#000000><a href=\"entreprise2.php?service={$service}\">suite des articles ...</a></font>"; } } ?> </td></tr></table> </td> </tr> </table> <link rel="stylesheet" href="../lib/css/news1.css" type="text/css"> </td> <td width="12" height="551"> </td> </tr> </table>
function mysql_table_operation($nom_table, $operation) { /* Dictionnaire des variables: * ************************** */ //$bdd = $_SESSION["mysql_database_name"]; //Variable Globale definit dans /lib/session.php et $globalConfig = new GlobalConfig(); //$conf = $_SESSION["globalConfig"]; $bdd = $globalConfig->getConf()->getMysqlDatabaseName(); //$bdd = $conf->mysql_database_name; //represente le nom de la base de donnees $nom_table; //Nom de la table e charger $operation; //update, delete, rewrite, copy, clone ou insert $premiere_virgule_update = 1; //Permet de supprimer les virgules en trop dans la //construction des requetes UPDATE $premiere_virgule_insert = 1; //Permet de supprimer les virgules en trop dans la //construction des requetes INSERT et REWRITE $premiere_operateur_where = 1; //Permet de supprimer les AND en trop dans la //construction des WHERE $premiere_operateur_retour = 1; //Permet de supprimer le '&' en trop dans la //construction du retour de la fonction $return = ''; //Valeur que renvoi la fonction $nom_id = ""; //$list_key_field = array(); //liste des noms des champs étant des clefs /* Corps de la fonction * ******************* */ //Initialisation des requetes $req_update = "UPDATE `" . $nom_table . "` SET "; $req_where = " WHERE "; $req_delete = "DELETE FROM `" . $nom_table . "`"; $req_insert = "INSERT INTO `" . $nom_table . "` ("; $req_insert_values = "VALUES ("; $req_rewrite = $req_delete; $req_copy = $req_insert; $req_copy_values = $req_insert_values; $req_clone; //Reste e creer //Recupération des variables $fields = mysql_list_fields($bdd, $nom_table); $propriete = DatabaseOperation::query("DESC {$nom_table}"); $num_fields = mysql_num_fields($fields); //Recherche des clefs de la table while ($rows1 = mysql_fetch_array($propriete)) { //Creation de la variable potentiellement PRIMARY KEY $primary_key = $rows1["Field"]; //$$primary_key=$_SESSION["$primary_key"]; //Comment récupérer ce qui vient de l'URL ? ${$primary_key} = Lib::isDefined($primary_key); if ($rows1["Key"] == "PRI") { //Enregistrement de la clef (gestion multi-clef non-supporté) $nom_id = $primary_key; } //Est-ce que ce champ est une clef et qu'une variable est definit if ($rows1["Key"] == "PRI" and ${$primary_key} != null) { //$list_key_field[]=$nom_id; //Enregistrement du nom de la clef dans la listes des clefs //Affectation de la valeur de la variables Key if ($operation == 'copy') { $_SESSION["{$primary_key}"] = ''; //$$primary_key = ''; } ${$primary_key} = $_SESSION["{$primary_key}"]; //Intégration de la clef PRIMAIRE dans les requetes $operateur = " AND "; if ($premiere_operateur_where) { $operateur = ''; } $premiere_operateur_where = 0; $req_where .= $operateur . "`" . $primary_key . "`" . "=" . "'" . ${$primary_key} . "'"; //Construction du lien de retour de fonction $operateur = "&"; if ($premiere_operateur_retour) { $operateur = ''; } $premiere_operateur_retour = 0; $return .= $operateur . $primary_key . "=" . ${$primary_key}; //Effacement des clefs pour eviter de les retrouver dans la suite des requetes switch ($operation) { case 'insert': case 'copy': ${$primary_key} = ''; break; } } //Fin de Recherche de la clef sur ce champ } //Fin de recherche des clefs //Integration des variables dans les requetes for ($i = 0; $i < $num_fields; $i++) { //Recuperation du nom des variables $nom_variable = mysql_field_name($fields, $i); //$valeur_variable = "test"; //Verification de la declaration de cette variable, //$valeur_variable=$_SESSION["$nom_variable"]; //Comment récupérer ce qui vient de l'URL ? //$valeur_variable=Lib::isDefined($nom_variable); $valeur_variable = $_SESSION[$nom_variable]; if ($valeur_variable != null) { //Formatage des données pour préparation à intégration dans MySQL // 2009-05-11 BS - Fait planter la duplication d'une FTA: $$nom_variable = "\"" . $GLOBALS[$nom_variable] . "\""; // 2011-04-01 BS - Tentative pour enregistrer dans la base des données "propre": // $valeur_variable = "'" . addslashes($valeur_variable) . "'"; $valeur_variable = DatabaseOperation::convertDataForQuery($valeur_variable); //$$nom_variable = "'" . htmlentities($GLOBALS[$nom_variable]) . "'"; //Le champs peut-il etre NULL $rechercher_not_null = mysql_field_flags($fields, $i); $trouver_not_null = stristr($rechercher_not_null, 'not_null'); if (!$trouver_not_null and $valeur_variable == "''") { $valeur_variable = "NULL"; } //Construction des requetes //Requete UPDATE $virgule = ", "; if ($premiere_virgule_update) { $virgule = ''; } $premiere_virgule_update = 0; $req_update .= $virgule . "`" . $nom_variable . "`=" . $valeur_variable; //Requete INSERT, REWRITE et COPY $virgule = ", "; if ($premiere_virgule_insert) { $virgule = ''; } $premiere_virgule_insert = 0; $req_insert .= $virgule . "`" . $nom_variable . "`"; $req_insert_values .= $virgule . $valeur_variable; } } //Fin de la construction des requetes //Finalisation des requetes //Requete UPDATE: $req_update .= $req_where; //Requete DELETE: $req_delete .= $req_where; //Requete INSERT: $req_insert .= ")" . $req_insert_values . ");"; $req_insert . "<br>"; //Requete REWRITE: // un DELETE, puis un INSERT //Requete COPY: $req_copy = $req_insert; //Requete CLONE: $req_clone; //Execution des requetes switch ($operation) { case 'update': DatabaseOperation::query($req_update); //echo $req_update."<br>"; break; case 'delete': DatabaseOperation::query($req_delete); break; case 'insert': DatabaseOperation::query($req_insert); //echo $req_insert."<br>"; break; case 'rewrite': DatabaseOperation::query($req_delete); DatabaseOperation::query($req_insert); break; case 'copy': DatabaseOperation::query($req_copy); break; case 'clone': DatabaseOperation::query($req_clone); break; } //Renvoi de la fonction switch ($operation) { case 'copy': case 'insert': //$id = "id_" . $nom_table; $id = $nom_id; //Externalisation de la variable (pour une table e 1 clef) $_SESSION[$id] = mysql_insert_id(); $return = $id . "=" . $_SESSION[$id]; break; default: $return; break; } return $return; }
function arborescence_construction($table, $champ_valeur, $champ_id_fils, $champ_id_pere, $id_racine, $sql_where, $extension) { $table = 'classification_arborescence_article,classification_arborescence_article_categorie_contenu,classification_fta'; //nom de la table contenant l'association "Père" / "Fils" $champ_valeur = 'nom_classification_arborescence_article_categorie_contenu'; //nom du champ contenant la valeur à afficher (sans le "underscore" et le nom de la table) $champ_fta = 'classification_arborescence_article_categorie_contenu'; //nom du champ contenant la valeur à afficher (sans le "underscore" et le nom de la table) $champ_id_fils = 'id_classification_arborescence_article'; //nom du champ fils contenant l'id (sans le "underscore" et le nom de la table) $champ_id_pere = 'ascendant_classification_arborescence_article_categorie_contenu'; //nom du champ père contenant l'id (sans le "underscore" et le nom de la table) $id_racine = 1; //Identifiant de l'enregistrement père racine (le premier) if (!$liste_id) { $liste_id = "," . $id_racine . ","; } if ($add_id) { $liste_id .= $add_id . ","; } //echo $liste_id; //echo $_GET; // print_r(parse_url($url)); $sql_where = "classification_arborescence_article.id_classification_arborescence_article_categorie_contenu=classification_arborescence_article_categorie_contenu.id_classification_arborescence_article_categorie_contenu"; //Permet de personnaliser la clause SQL "WHERE" comme pour insérer une jointure par exemple // Déclaration des variables: /// $table='matiere_premiere_composant'; //nom de la table contenant l'association "Père" / "Fils" // $champ_valeur='nom_matiere_premiere_composant'; //nom du champ contenant la valeur à afficher (sans le "underscore" et le nom de la table) // $champ_id_fils='id_matiere_premiere_composant'; //nom du champ fils contenant l'id (sans le "underscore" et le nom de la table) // $champ_id_pere='id_ascendant_matiere_premiere_composant'; //nom du champ père contenant l'id (sans le "underscore" et le nom de la table) $table; //nom de la table contenant l'association "Père" / "Fils" //Peux aussi être une liste de table séparé par une virgule ex: "table1,table2" $champ_valeur; //nom du champ contenant la valeur à afficher $champ_id_fils; //nom du champ fils contenant l'id $champ_id_pere; //nom du champ père contenant l'id $id_racine; //Identifiant de l'enregistrement père racine (le premier) $id_recherche = $id_racine; //Identifiant en cours de recherche $id_fils; //Identifiant du fils en cours de traitement $id_pere; //Identifiant du pre en cours de traitement $tab; //Nombre de tabulation permettant un affichage en cascade de l'arborescence $tab_init = ' '; //Representation de la tabulation $sql_where; //Permet de personnaliser la clause SQL "WHERE" comme pour insérer une jointure par exemple $return = ''; //Valeur retourne par la fonction //$return[1] --> liste de éléments séparé par une virgule //$return[2] --> Réprésentation de l'arborescence au format texte $extension = Lib::isDefined("extension"); //Tableau d'argument optionnelle de la fonction // $extension[0]; //Code HTML qui sera ajouter à la fin de la valeur dans la représentation graphique // $extension[1]; //0 ou 1. Permet de terminer le code HTML créé par $extension[0] avec l'id de l'objet en cours // $extension[2]; //Ordre tri: 0=Valeur, 1=Clefs Fils et 2=Clef Père // $extension[3]; //Liste des id à développer, si NULL, alors tout est développé // $extension[4]; //Lien lorqu'on clic sur un élément de l'arborescence (terminé par l'id) $tri; //Champ à trier /* Initialisation des variables */ //$champ_valeur .= "_".$table; //$champ_id_fils.= "_".$table; //$champ_id_pere.= "_".$table; $id_pere = $id_racine; if ($sql_where) { $sql_where = "WHERE " . $sql_where; } if (!$extension[2]) { $extension[2] = 1; //Tri par défaut } //Configuration du tri de l'arborescence switch ($extension[2]) { case 0: $tri = $champ_valeur; break; case 1: $tri = $champ_id_fils; break; case 2: $tri = $champ_id_pere; break; } $requete_principale = "SELECT {$champ_id_pere}, {$champ_id_fils}, {$champ_valeur} FROM {$table} " . "{$sql_where} " . "ORDER BY {$tri} ASC "; //echo $requete_principale; $resultat = DatabaseOperation::query($requete_principale); $nombre_ligne = mysql_num_rows($resultat); /* Corps de la fonction */ //Lancement de la fonction //Appel recursif de la fonction $i = 1; //Affiche le niveau dans lequel on est $return = recursif($resultat, $id_recherche, $champ_id_pere, $champ_id_fils, $champ_valeur, $tab_fils, $tab_arborescence, $tab_espace, $return, $nombre_ligne, $extension); //var_dump($return); return $return; }
/** * * @param type $paramIdFta */ public static function DuplicateFtaClassificationByIdFta($paramIdFtaOrig, $paramIdFtaNew) { DatabaseOperation::query(' INSERT INTO ' . ClassificationFtaModel::TABLENAME . ' (' . ClassificationFtaModel::FIELDNAME_ID_CLASSIFICATION_ARBORESCENCE_ARTICLE . ',' . ClassificationFtaModel::FIELDNAME_ID_FTA . ')' . ' SELECT ' . ClassificationFtaModel::FIELDNAME_ID_CLASSIFICATION_ARBORESCENCE_ARTICLE . ',' . $paramIdFtaNew . ' FROM ' . ClassificationFtaModel::TABLENAME . ' WHERE ' . ClassificationFtaModel::FIELDNAME_ID_FTA . '=' . $paramIdFtaOrig); }
echo " <input type=hidden name=num value={$num}>"; echo " <input type=hidden name=numcom value={$numcom}>"; $result2 = "SELECT distinct * FROM comment WHERE id_comment='{$numcom}'"; $requete = DatabaseOperation::query("{$result2}"); echo "<table width=\"80%\" border=\"0\" cellspacing=\"4\"><tr>"; $rows = mysql_fetch_array($requete); /*-formatage date-*/ $date = $rows[date]; $jour = substr($date, 8, 2); $mois = substr($date, 5, 2); $annee = substr($date, 0, 4); $date = $jour . "/" . $mois . "/" . $annee; echo "<tr bgcolor=\"#FF3333\" class=\"logFFCC66\">"; echo "<td class=\"titrtabl\" width=\"8\" bgcolor=\"#FFE5B2\">{$date}</td>"; echo "<td class=\"titrtabl\" width=\"100\" bgcolor=\"#FFE5B2\">"; $ab = DatabaseOperation::query("select * from salaries where id_user='******'id_user']}'"); $ligne = mysql_fetch_array($ab); echo "{$ligne['nom']} {$ligne['prenom']}</td>"; $commentr = stripslashes($rows[commentaire]); echo "<td class=\"titrtabl\" width=\"250\" bgcolor=\"#FFE5B2\"><textarea name=commentaire cols=\"30\">{$commentr}</textarea></td>"; echo "</tr></table><br>"; if ($action != "suppr" and $action != "modif") { echo "<a href=\"#\" onClick=\"history.go(-1);return(false)\"><img src=\"../zimages/retour-j.gif\" width=\"130\" height=\"20\" border=\"0\"></a>"; } ?> <input type="image" border="0" src="../images_pop/modification.gif"> </td> </form> </tr> </table>
$service = Lib::isDefined("service"); $compte = Lib::isDefined("compte"); $nva = Lib::isDefined("nva"); if ($action == "vitelu") { $existe = DatabaseOperation::query("select * from lu where ((id_art='{$ids[$i]}') and (id_user='******'))"); $nb1 = mysql_numrows($existe); if (!$nb1) { for ($i = 0; $i < count($ids); $i++) { if (isset(${$ids[$i]})) { DatabaseOperation::query("INSERT INTO lu(id_art ,id_user, date) VALUES ('{$ids[$i]}','{$id_user}', NOW())"); } } } else { for ($i = 0; $i < count($ids); $i++) { if (isset(${$ids[$i]})) { DatabaseOperation::query("update lu set date = now() where ((id_art='{$ids[$i]}') and (id_user='******'))"); } } } } ?> <html> <head> <title>Nouveaux articles en bref</title> <script language="JavaScript"> <!-- function MM_swapImgRestore() { //v3.0 var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc; } function MM_preloadImages() { //v3.0
$tab_data = array(); foreach ($tab_record as $key => $current_field) { if (!$current_field) { //echo "mod_auto_".$key.":".${"mod_auto_".$key}."<br>"; if (${"mod_auto_" . $key}) { $current_field = $tab_data_last[$key]; } else { $current_field = '""'; } } $tab_data[$key] = $current_field; } //echo print_r($tab_record); $req_insert_record = "INSERT `{$table_name}` VALUES(" . implode(",", $tab_data) . ")"; //echo $req_insert_record."<br>"; if (DatabaseOperation::query($req_insert_record)) { $count_record_ok = $count_record_ok + 1; } } } //print_r($tab_record); //echo count($tab_record); //Construction de la requête SQL d'insertion } $bloc .= "<li>Enregistrement traités: {$count_record_ok}/{$current_nb_line}<br></li>"; //echo $req_field_name; //Déplacement du fichier d'importation $tmp_answer = "Non"; if ($move_after_processing) { copy($dir_incoming . "/" . $current_file, $dir_archives . "/" . date("Y-m-d") . "-" . $current_file); unlink($dir_incoming . "/" . $current_file);
$method = 'POST'; //Pour une url > 2000 caractères, ne pas utiliser utiliser GET $html_table = "table " . "border=1 " . "width=100% " . "class=contenu "; /* Récupération des données MySQL */ mysql_table_load('intranet_modules'); //Lister les actions possibles sur le module $req = "SELECT * FROM intranet_actions " . "WHERE module_intranet_actions = '0' " . "OR module_intranet_actions = '" . $id_intranet_modules . "' " . "ORDER BY module_intranet_actions, nom_intranet_actions "; $result_action = DatabaseOperation::query($req); $bloc = ""; while ($rows_action = mysql_fetch_array($result_action)) { $bloc .= "<{$html_table}><tr class=titre_principal><td>" . $rows_action["description_intranet_actions"] . "</td></tr>"; //Pour chaque niveaux, lister les utilisateur concernés $req = "SELECT DISTINCT * FROM intranet_droits_acces, salaries, intranet_modules , intranet_actions " . "WHERE ( `intranet_droits_acces`.`id_user` = `salaries`.`id_user` " . "AND `intranet_droits_acces`.`id_intranet_modules` = `intranet_modules`.`id_intranet_modules` " . "AND `intranet_droits_acces`.`id_intranet_actions` = `intranet_actions`.`id_intranet_actions` " . "AND `intranet_actions`.`id_intranet_actions` = '" . $rows_action["id_intranet_actions"] . "' " . "AND `intranet_modules`.`id_intranet_modules` = '" . $id_intranet_modules . "' " . "AND `intranet_droits_acces`.`niveau_intranet_droits_acces` <> 0 " . ")" . "ORDER BY niveau_intranet_droits_acces, login "; $result_user = DatabaseOperation::query($req); while ($rows_user = mysql_fetch_array($result_user)) { $bloc .= "<tr><td>" . $rows_user["login"] . "</td>"; if ($rows_user["niveau_intranet_droits_acces"] != 1) { $bloc .= "<td>Niveau = " . $rows_user["niveau_intranet_droits_acces"] . "</<td></tr>"; } } } /* Sélection du mode d'affichage */ switch ($output) { /************* Début Code PDF *************/ case "pdf":
echo " <TD COLSPAN=\"3\" HEIGHT=\"15\">\n"; echo " <div align=\"center\">\n"; echo " <p class=\"LOGINFFFFFFCENTRE\"><br>\n"; if ($tilt2 == 1) { echo "Vous avez {$tilt2} article à publier"; } else { echo "Vous avez {$tilt2} articles à publier"; } echo "<br><br></p>\n"; echo " </div>\n"; echo " </TD>\n"; echo " <TD WIDTH=\"11\"> </TD>\n"; echo " </TR>\n"; } /* on affiche le nombre d'articles a archiver */ $tilt = DatabaseOperation::query("select distinct * from articles, publicateur, modes where publicateur.id_user = {$id_user} and publicateur.id_service = articles.id_art_serv and articles.archive = 'oui' and modes.id_user={$id_user} and modes.id_service=articles.id_art_serv and modes.serv_conf >= articles.nivo_conf"); $tilt2 = mysql_num_rows($tilt); echo "<TR>\n"; echo " <TD WIDTH=\"150\" HEIGHT=\"15\" COLSPAN=\"5\"> <IMG SRC=../lib/images/espaceur.png></TD>\n"; echo " </TR>\n"; echo "<TR>\n"; echo " <TD WIDTH=\"10\" HEIGHT=\"20\"><img src=../lib/images/espaceur.png width=\"1\" height=\"1\">\n"; echo " </TD>\n"; echo " <TD COLSPAN=\"3\"><a href=\"../adminagis/article_archiver.php\"><img src=\"../images-index/archivage.gif\" width=\"130\" height=\"20\" border=0></a></TD>\n"; echo " <TD WIDTH=\"11\" HEIGHT=\"20\"><img src=../lib/images/espaceur.png width=\"1\" height=\"1\">\n"; echo " </TD>\n"; echo " </TR>\n"; echo " <TR>\n"; echo " <TD WIDTH=\"10\">\n"; echo " <div align=\"center\"><img src=../lib/images/espaceur.png width=\"1\" height=\"1\"></div>\n"; echo " </TD>\n";
/** * Displays a MySQL error message in the right frame. * * @param string the error message * @param string the sql query that failed * @param boolean whether to show a "modify" link or not * @param string the "back" link url (full path is not required) * @param boolean EXIT the page? * * @global array the configuration array * * @access public */ function PMA_mysqlDie($error_message = '', $the_query = '', $is_modify_link = TRUE, $back_url = '', $exit = TRUE) { global $cfg, $table, $db, $sql_query; require_once './header.inc.php'; if (!$error_message) { $error_message = PMA_DBI_getError(); } if (!$the_query && !empty($GLOBALS['sql_query'])) { $the_query = $GLOBALS['sql_query']; } // --- Added to solve bug #641765 // Robbat2 - 12 January 2003, 9:46PM // Revised, Robbat2 - 13 Janurary 2003, 2:59PM if (!function_exists('PMA_SQP_isError') || PMA_SQP_isError()) { $formatted_sql = htmlspecialchars($the_query); } else { $formatted_sql = PMA_formatSql(PMA_SQP_parse($the_query), $the_query); } // --- echo "\n" . '<!-- PMA-SQL-ERROR -->' . "\n"; echo ' <table border="0" cellpadding="2" cellspacing="1">' . ' <tr>' . "\n" . ' <th class="tblHeadError"><div class="errorhead">' . $GLOBALS['strError'] . '</div></th>' . "\n" . ' </tr>' . "\n" . ' <tr>' . "\n" . ' <td>'; // if the config password is wrong, or the MySQL server does not // respond, do not show the query that would reveal the // username/password if (!empty($the_query) && !strstr($the_query, 'connect')) { // --- Added to solve bug #641765 // Robbat2 - 12 January 2003, 9:46PM // Revised, Robbat2 - 13 Janurary 2003, 2:59PM if (function_exists('PMA_SQP_isError') && PMA_SQP_isError()) { echo PMA_SQP_getErrorString(); } // --- // modified to show me the help on sql errors (Michael Keck) echo '<div class="tblWarn"><p>' . "\n"; echo ' <b>' . $GLOBALS['strSQLQuery'] . ':</b>' . "\n"; if (strstr(strtolower($formatted_sql), 'select')) { // please show me help to the error on select echo PMA_showMySQLDocu('Reference', 'SELECT'); } if ($is_modify_link && isset($db)) { if (isset($table)) { $doedit_goto = '<a href="tbl_properties.php?' . PMA_generate_common_url($db, $table) . '&sql_query=' . urlencode($the_query) . '&show_query=1">'; } else { $doedit_goto = '<a href="db_details.php?' . PMA_generate_common_url($db) . '&sql_query=' . urlencode($the_query) . '&show_query=1">'; } if ($GLOBALS['cfg']['PropertiesIconic']) { echo $doedit_goto . '<img src=" ' . $GLOBALS['pmaThemeImage'] . 'b_edit.png" width="16" height="16" border="0" hspace="2" align="middle" alt="' . $GLOBALS['strEdit'] . '" />' . '</a>'; } else { echo ' [' . $doedit_goto . $GLOBALS['strEdit'] . '</a>' . ']' . "\n"; } } // end if echo '</p>' . "\n" . '<p>' . "\n" . ' ' . $formatted_sql . "\n" . '</p></div>' . "\n"; } // end if $tmp_mysql_error = ''; // for saving the original $error_message if (!empty($error_message)) { $tmp_mysql_error = strtolower($error_message); // save the original $error_message $error_message = htmlspecialchars($error_message); $error_message = preg_replace("@((\r\n)|(\r)|(\n)){3,}@", "\n\n", $error_message); } // modified to show me the help on error-returns (Michael Keck) echo '<div class="tblWarn"><p>' . "\n" . ' <b>' . $GLOBALS['strMySQLSaid'] . '</b>' . PMA_showMySQLDocu('Error-returns', 'Error-returns') . "\n" . '</p>' . "\n"; // The error message will be displayed within a CODE segment. // To preserve original formatting, but allow wordwrapping, we do a couple of replacements // Replace all non-single blanks with their HTML-counterpart $error_message = str_replace(' ', ' ', $error_message); // Replace TAB-characters with their HTML-counterpart $error_message = str_replace("\t", ' ', $error_message); // Replace linebreaks $error_message = nl2br($error_message); echo '<code>' . "\n" . $error_message . "\n" . '</code><br />' . "\n"; // feature request #1036254: // Add a link by MySQL-Error #1062 - Duplicate entry // 2004-10-20 by mk.keck if (substr($error_message, 1, 4) == '1062') { // explode the entry and the column $arr_mysql_val_key = explode('entry \'', $tmp_mysql_error); $arr_mysql_val_key = explode('\' for key', $arr_mysql_val_key[1]); // get the duplicate value $string_duplicate_val = trim(strtolower($arr_mysql_val_key[0])); // get the field name ... $string_duplicate_key = mysql_result(DatabaseOperation::query("SHOW FIELDS FROM " . $table), $arr_mysql_val_key[1] - 1, 0); $duplicate_sql_query = "SELECT * FROM " . $table . " WHERE " . $string_duplicate_key . " LIKE '" . $string_duplicate_val . "'"; echo ' <form method="post" action="read_dump.php" style="padding: 0px; margin: 0px">' . "\n" . ' <input type="hidden" name="sql_query" value="' . $duplicate_sql_query . '" />' . "\n" . ' ' . PMA_generate_common_hidden_inputs($db, $table) . "\n" . ' <input type="submit" name="submit" value="' . $GLOBALS['strBrowse'] . '" />' . "\n" . ' </form>' . "\n"; } // end of show duplicate entry echo '</div>'; if (!empty($back_url) && $exit) { $goto_back_url = '<a href="' . (strstr($back_url, '?') ? $back_url . '&no_history=true' : $back_url . '?no_history=true') . '"> '; echo ' </td> ' . "\n" . ' </tr>' . "\n" . ' <tr><td class="tblHeaders" align="center">'; echo '[' . $goto_back_url . $GLOBALS['strBack'] . ' </a>]'; } echo ' </td>' . "\n" . ' </tr>' . "\n" . ' </table>' . "\n\n"; if ($exit) { require_once './footer.inc.php'; } }
<table width="770" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="150" valign="top"> <?php $titi = DatabaseOperation::query("select * from salaries where id_user = {$id_user}"); $toto = mysql_fetch_array($titi); if ($toto[membre_ce] == "oui") { include "../news/menuce.php"; } else { if ($id_type == 4) { include "../news/menuce.php"; } } ?> </td> <td valign="top">
/** * Contrôle et corrige l'état de validation de l'échéance fixé à un processus * Si le processus à validé tous ses chapitre, le délai est validé * Sinon, le délai reste en attente de réalisation * Fonction n'est plus utilisé * Retour de la fonction: * 0: Rien n'a été fait car le processus ne dispose pas d'enregistrement d'échéance * 1: Mise à jour effecftuée * @param type $paramIdFta * @param type $paramIdFtaProcessus * @return int */ public static function BuildFtaProcessusValidationDelai($paramIdFta, $paramIdFtaProcessus, $paramIdFtaWorkflow) { $valideFtaProcessusDelai = NULL; //L'échéance est-elle validée ? (Oui=1, Non=0) $return = '0'; $etatEcheance = FtaProcessusModel::getValideProcessusEncours($paramIdFta, $paramIdFtaProcessus, $paramIdFtaWorkflow); switch ($etatEcheance) { case 1: //Le processus à validé tous ses chapitres $valideFtaProcessusDelai = '1'; break; default: //Sinon, il reste encore des chapitres à valider $valideFtaProcessusDelai = '0'; } //Existe-il déjà un enregistrement sur ce délai ? //Recherche d'enregistrement déjà existant pour mise à jour, sinon insertion $arrayProcessusDelai = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT ' . FtaProcessusDelaiModel::KEYNAME . ', ' . FtaProcessusDelaiModel::FIELDNAME_VALIDE . ' FROM ' . FtaProcessusDelaiModel::TABLENAME . ' WHERE ' . FtaProcessusDelaiModel::FIELDNAME_ID_FTA . '=\'' . $paramIdFta . '\' AND ' . FtaProcessusDelaiModel::FIELDNAME_ID_FTA_PROCESSUS . ' = \'' . $paramIdFtaProcessus . '\' '); if ($arrayProcessusDelai) { //Si l'enregistrement existe, alors mise à jour des informations //Si l'état enregistré en différent de celui contrôlé, alors mise à jour foreach ($arrayProcessusDelai as $rowsProcessusDelai) { $valideFtaProcessusDelaiRecorded = $rowsProcessusDelai[FtaProcessusDelaiModel::FIELDNAME_VALIDE]; if ($valideFtaProcessusDelai != $valideFtaProcessusDelaiRecorded) { //Récupération de l'identifiant pour permettre la mise à jour de celui-ci $idFtaProcessusDelai = $rowsProcessusDelai[FtaProcessusDelaiModel::KEYNAME]; $req = 'UPDATE ' . FtaProcessusDelaiModel::TABLENAME . 'SET ' . FtaProcessusDelaiModel::FIELDNAME_VALIDE . ' = \'' . $valideFtaProcessusDelai . '\' ' . 'WHERE ' . FtaProcessusDelaiModel::KEYNAME . ' =\'' . $idFtaProcessusDelai . '\' '; DatabaseOperation::query($req); $return = '1'; } } } return $return; }
/** * Exécute, puis convertie un requête SQL en tableau PHP * La clef du tableau sera générée automatiquement par PHP * @param mixed $paramRequest * @return array Tableau PHP */ public static function convertSqlQueryWithAutomaticKeyToArray($paramRequest) { return DatabaseOperation::convertSqlResultWithoutKeyToArray(DatabaseOperation::query($paramRequest)); }
function defilante() { echo "<marquee msambientcpg=\"2504\" type=\"SCROLL\" direction=\"LEFT\" height=\"28\" width=\"600\" scrolldelay=\"30\" scrollamount=\"2\" class=\"txtentreprise\">"; $champs = DatabaseOperation::query("select * from newsdefil where num=1"); $colonne = mysql_fetch_array($champs); $news1 = stripslashes($colonne[news1]); $news2 = stripslashes($colonne[news2]); $news3 = stripslashes($colonne[news3]); $news4 = stripslashes($colonne[news4]); $news5 = stripslashes($colonne[news5]); echo "{$news1}"; if ($news2 != "") { bip(); } echo "{$news2}"; if ($news3 != "") { bip(); } echo "{$news3}"; if ($news4 != "") { bip(); } echo "{$news4}"; if ($news5 != "") { bip(); } echo "{$news5}"; echo "</marquee>"; }
formatage date -------------*/ $date = $colonne[date]; $jour = substr($date, 8, 2); $mois = substr($date, 5, 2); $annee = substr($date, 0, 4); $date = $jour . "/" . $mois . "/" . $annee; echo "{$date}"; ?> </td> </tr> <tr> <td class="loginFFCC66">modificateur : <?php $champs2 = DatabaseOperation::query("select * from salaries where id_user='******'id_user']}'"); $colonne2 = mysql_fetch_array($champs2); echo "{$colonne2['nom']} {$colonne2['prenom']}"; ?> </td> </tr> </table> <br> <table width="400" border="0" cellspacing="4" cellpadding="0"> <tr> <td class="logFFE5B2">news 1</td> </tr> <tr> <td> <input type="text" name="news1" size="60" maxlength="74" value="<?php $news1 = stripslashes($colonne[news1]);
echo "selected"; } echo " >"; echo "{$annee2b}</option>"; $annee2b++; } ?> </select> </td> </tr> <tr> <td width="155"> <select name="auteurs" class="loginFFFFFF"> <option value="non" selected>AUTEURS</option> <?php $requete = DatabaseOperation::query("select distinct id_user, salaries.nom, salaries.prenom from articles, salaries where salaries.id_user=articles.auteur order by nom"); while ($rows = mysql_fetch_array($requete)) { //if ($rows[nom] != $unique){ echo "<option value=\"{$rows['id_user']}\""; if ($auteurs == $rows[id_user]) { echo "selected"; } echo ">{$rows['nom']} {$rows['prenom']}</option>"; //$unique = $rows[nom]; //} } ?> </select> </td> <td width="27"> </td> <td width="187">
$mysql_user; //voir session.php $bdpass; //Mot de passe NIV I - voir session.php $mysql_database; //voir session.php //Paramétrage de la page $lang = 'fr'; $serverName = 1; $db = $_SESSION["globalConfig"]->mysql_database_name; //$goto='tbl_properties.php'; $goto = 'sql.php'; $sql_query = "SELECT * FROM {$nom_table}"; $pos = 0; //Test si la table est vide, message d'erreur $result1 = DatabaseOperation::query($sql_query); $nb1 = mysql_num_rows($result1); if ($nb1) { //Création de la page echo "\n <frameset cols=166,* rows=* frameborder=no>\n <frame src='../lib/frame_gauche.php?module={$module}&menu={$menu}' noresize />\n <frame src='../phpMyAdmin/sql.php" . "?lang={$lang}" . "&server={$serverName}" . "&db={$db}" . "&goto={$goto}" . "&sql_query={$sql_query}" . "&pos={$pos}" . "&application_courante={$application_courante}" . "&consultation={$consultation}" . "&mysql_user={$mysql_user}" . "&bdpass={$bdpass}" . "&mysql_database={$mysql_database}" . "' />\n\n <noframes>\n <body bgcolor=#FFFFFF>\n <p>L'utilisation de phpMyAdmin est plus aisée avec un navigateur <b>supportant les frames</b>.</p>\n </body>\n </noframes>\n </frameset>\n "; } else { //Informer l'utiliasteur $titre = "Aucune données dans la table {$nom_table}"; $message = "\n Intervention du service informatique requise.<br>\n Enregistrez au moins une donnée dans la table {$nom_table} de la base données MySQL {$mysql_database}<br>\n <br>\n Une copie de ce message à été envoyé\n "; afficher_message($titre, $message, $redirection); //Informer la maintenance $sujetmail = "Intranet - {$module}"; $text = "Intervention du service informatique requise.\nEnregistrer au moins une donnée dans la table '{$nom_table}' de la base données MySQL {$mysql_database}."; $destinataire = "*****@*****.**"; $expediteur = "*****@*****.**"; envoismail($sujetmail, $text, $destinataire, $expediteur);
$annee = substr($date, 0, 4); $date = $jour . "/" . $mois . "/" . $annee; echo "<td class=\"txttabl\" width=\"150\" bgcolor=\"#FFFFCC\">{$date}</td>"; echo "<td class=\"txttabl\" width=\"150\" bgcolor=\"#FFFFCC\">{$rowso['lect_art']}</td>"; echo "<td class=\"txttabl\" width=\"150\" bgcolor=\"#FFFFCC\">{$rowso['redac_com']}</td>"; echo "</tr>"; } echo " </table><br> \n"; /* on compte le nombre d'article ecrits dans table article et archives */ echo "<table width=\"400\" border=\"0\" cellspacing=\"4\"><tr>"; echo "<tr bgcolor=\"#FF3333\" class=\"logFFCC66\">"; echo "<td class=\"txttabl\" width=\"50%\" bgcolor=\"#FFFFCC\">articles ecrits</td>"; echo "<td class=\"txttabl\" width=\"50%\" bgcolor=\"#FFFFCC\">"; $doac1 = DatabaseOperation::query("select * from articles where auteur = {$numi}"); $doac2 = mysql_num_rows($doac1); $doac3 = DatabaseOperation::query("select * from articles where auteur = {$numi}"); $doac4 = mysql_num_rows($doac3); $titeuf = $doac2 + $doac4; echo "{$titeuf}"; echo "</td>"; echo "</tr>"; echo "</table>"; } ?> <input type="hidden" name="action" value="recherche"> <br> <br> </td> </tr> <tr> <td align=center>
.swf" quality=high pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="315" height="30"> </embed> </object></td> </tr><tr><td> <table width=620> <tr> <?php services($service); ?> </tr> </table> </td></tr> <tr> <td height="10"> <b><?php $reqser = "select intitule_ser from services where id_service='{$service}'"; $resultser = DatabaseOperation::query($reqser); $intservice = mysql_result($resultser, 0, intitule_ser); echo "<li> {$intservice}</li>"; ?> </b> </td> </tr> <tr> <td height="328" valign="top"><!-- #BeginLibraryItem "/Library/news_developp.lbi" --> <link rel="stylesheet" href="../lib/css/news<?php echo "{$groupe}"; ?> .css" type="text/css"> <script language="JavaScript"> <!-- function MM_goToURL() { //v3.0 var i, args=MM_goToURL.arguments; document.MM_returnValue = false;
function afficher_navigation($id_fta, $id_fta_chapitre_encours, $synthese_action, $comeback) { //Action: "consultation" ou "modification" //Barre de navigation de la Fiche Tehnique Article //Variables $html_table = "table " . "border=1 " . "width=100% " . "class=contenu "; $id_fta_chapitre_encours; $comeback; //1=l'url précédente à à enregistrer comme url de retour $t_processus_encours = array(); $t_processus_visible = array(); //Récupère la page en cours //$page_default=substr(strrchr($_SERVER["PHP_SELF"], '/'), '1', '-4'); $page_default = "modification_fiche"; //Récupération des informations préalables $_SESSION["id_fta"] = $id_fta; $objectFta = new ObjectFta($id_fta); mysql_table_load("fta"); mysql_table_load("fta_etat"); mysql_table_load("access_arti2"); //echo $_SESSION["code_article_ldc"]; //Nom de l'assistante de projet responsable: $req = "SELECT prenom, nom FROM salaries WHERE id_user='******' "; $result = DatabaseOperation::query($req); if (mysql_num_rows($result)) { $createur = mysql_result($result, 0, "prenom") . " " . mysql_result($result, 0, "nom"); } //Construction du Menu if ($_SESSION["id_article_agrologic"]) { $identifiant = $_SESSION["id_article_agrologic"]; } else { $identifiant = $_SESSION["id_dossier_fta"] . "v" . $_SESSION["id_version_dossier_fta"]; } if ($_SESSION["LIBELLE"]) { $nom = $_SESSION["LIBELLE"]; } else { $nom = $_SESSION["designation_commerciale_fta"]; } $menu_navigation = "\r\n <{$html_table}>\r\n <tr><td class=titre_principal> <div align=\"left\">\r\n {$identifiant} (LDC: <b><font size=\"2\" color=\"#0000FF\">" . $_SESSION["code_article_ldc"] . "</font></b>) - {$nom} <i>(gérée par {$createur})</i>\r\n </div>\r\n </td></tr>\r\n <tr class=titre><td>\r\n "; //Si une action est donnée, alors construction du menu des chapitres if ($synthese_action) { //Etat d'avancement de la FTA et Recherche des processus validés (et donc en lecture-seule) $liste_processus_visible = ""; //Liste des processus en lecture-seule (séparés par une virgule) //$req = "SELECT * FROM fta_processus "; $req = "SELECT DISTINCT fta_processus.* FROM fta_processus, fta_processus_cycle " . "WHERE fta_processus_cycle.id_init_fta_processus=fta_processus.id_fta_processus " . "AND id_etat_fta_processus_cycle='I' " . "AND id_fta_categorie = '" . $objectFta->getFieldValue(ObjectFta::TABLE_FTA_NAME, "id_fta_categorie") . "' "; $result = DatabaseOperation::query($req); if (mysql_num_rows($result)) { //Balayage de tous les processus while ($rows = mysql_fetch_array($result)) { $id_fta; //Déjà déclaré $id_fta_processus = $rows["id_fta_processus"]; $taux_validation_processus = fta_processus_validation($id_fta, $id_fta_processus); //echo $rows["nom_fta_processus"].": ".$taux_validation_processus."<br>"; //Liste des processus visible(lecture-seule) if ($taux_validation_processus == 1) { $t_processus_visible[] = $rows["id_fta_processus"]; } } //Fin du balayage //print_r($t_processus_visible); } else { //La table des processus est vide $titre = "Erreur de configuration du module FTA"; $message = "Cette FTA n'a pas de cycle \"Initialisation\" défini pour la catégorie " . $objectFta->getFieldValue(ObjectFta::TABLE_WORKFLOW_NAME, "nom_fta_categorie") . " <i>(Voir la table fta_processus_cycle)</i> "; afficher_message($titre, $message, $redirection); } //Fin de suivi de projet //Recherche des processus en cours //Balayage des cycles des processus (en exclant les processus déjà validés) $req = "SELECT DISTINCT id_next_fta_processus " . "FROM fta_processus_cycle, fta_processus, intranet_actions, intranet_droits_acces, intranet_modules " . "WHERE 1 AND ( 1 "; $separator = "AND"; //Suppression des processus déjà validé if ($t_processus_visible) { foreach ($t_processus_visible as $value) { $req .= $separator . " id_next_fta_processus<>" . $value . " "; $separator = "AND"; } } //Vérification des droits d'accès de l'utilisateur en cours $req .= ") " . "AND fta_processus_cycle.id_next_fta_processus=fta_processus.id_fta_processus " . "AND fta_processus.id_intranet_actions=intranet_actions.id_intranet_actions " . "AND intranet_actions.id_intranet_actions=intranet_droits_acces.id_intranet_actions " . "AND intranet_droits_acces.id_intranet_modules=intranet_modules.id_intranet_modules " . "AND id_user="******"id_user"] . " " . "AND nom_intranet_modules='fta' " . "AND niveau_intranet_droits_acces=1 " . "AND id_etat_fta_processus_cycle='" . $objectFta->getFieldValue(ObjectFta::TABLE_ETAT_NAME, "abreviation_fta_etat") . "' " . "AND id_fta_categorie = '" . $objectFta->getFieldValue(ObjectFta::TABLE_FTA_NAME, "id_fta_categorie") . "' "; //Finalisation de la requête $req .= ""; //echo "<br>".$req; $result = DatabaseOperation::query($req); while ($rows = mysql_fetch_array($result)) { //Pour chaque processus, on vérifie que tous ces précédents sont validés $req = "SELECT * FROM fta_processus_cycle " . "WHERE id_next_fta_processus=" . $rows["id_next_fta_processus"] . " AND ( 1 "; $separator = "AND"; //Ajout de la restriction des processus validé if ($t_processus_visible) { foreach ($t_processus_visible as $value) { $req .= $separator . " id_init_fta_processus<>" . $value . " "; $separator = "AND"; } } //Recherche dans le cycle correspondant à l'état en cours de la fiche $req_etat = "SELECT `fta_etat`.`abreviation_fta_etat` " . "FROM `fta_etat`, `fta` " . "WHERE ( `fta_etat`.`id_fta_etat` = `fta`.`id_fta_etat` )" . "AND ( ( `fta`.`id_fta` = '" . $id_fta . "' ) )"; $abreviation_fta_etat = mysql_result(DatabaseOperation::query($req_etat), 0, "abreviation_fta_etat"); $req .= "AND id_etat_fta_processus_cycle='" . $abreviation_fta_etat . "' "; //Filtrage par catégorie //$req .= "AND id_fta_categorie='".$_SESSION["id_fta_categorie"]."' "; //Finalisation de la requête $req .= ")"; //echo "<br>".$req; //Si la requête est vide, c'est que tous les processus précédents sont validés //Il est donc un Processus en cours $result_temp = DatabaseOperation::query($req); if (!mysql_num_rows($result_temp)) { //echo " Y"; //Ce processus en cours, est-il du type repartie ou centralisé ? $req = "SELECT multisite_fta_processus FROM fta_processus " . "WHERE id_fta_processus=" . $rows["id_next_fta_processus"]; $result_temp = DatabaseOperation::query($req); $multisite_fta_processus = mysql_result($result_temp, 0, "multisite_fta_processus"); //Oui, il s'agit d'un Processus répartie sur les sites d'assemblage if ($multisite_fta_processus) { //Existe-il une configuration de gestion forcée pour ce processus et ce site d'assemblage ? $req = "SELECT id_site_processus_fta_processus_multisite FROM fta_processus_multisite, access_arti2 " . "WHERE id_site_assemblage_fta_processus_multisite=Site_de_production " . "AND id_processus_fta_processus_multisite='" . $rows["id_next_fta_processus"] . "' " . "AND id_fta=" . $id_fta . " "; $result_temp = DatabaseOperation::query($req); if (mysql_num_rows($result_temp)) { $id_geo = mysql_result($result_temp, 0, "id_site_processus_fta_processus_multisite"); } else { //Sinon, Vérification de l'égalité entre le site d'assemblage de la FTA et le site de Localisation de l'utilisateur $req = "SELECT id_geo FROM access_arti2, geo " . "WHERE id_fta=" . $id_fta . " " . "AND Site_de_production=id_site "; $result_temp = DatabaseOperation::query($req); if (mysql_num_rows($result_temp)) { $id_geo = mysql_result($result_temp, 0, "id_geo"); } } if ($id_geo == $_SESSION["lieu_geo"]) { //L'égalité est respecté, donc ce processus est bien en cours $t_processus_encours[] = $rows["id_next_fta_processus"]; } else { // echo "TEST"; } } else { //Enregistrement du processus en tant que processus en cours $t_processus_encours[] = $rows["id_next_fta_processus"]; } } } //Fin du balayage des processus non-validés //print_r($t_processus_encours); //Recherche des processus Publics //Création de la liste des processus dans la barre de navigation $t_processus_encours; $t_processus_visible; /* switch ($synthese_action)//Suivant l'action effectuée sur la navigation: { case "modification": $t_liste_processus = array_merge($t_processus_encours,$t_processus_visible); break; case "consultation": $t_liste_processus = $t_processus_visible; break; } */ $t_liste_processus = array_merge($t_processus_encours, $t_processus_visible); //$t_liste_processus = $t_processus_encours; //Ajout des processus n'ayant pas de précédents et donc obligatoirement présent dans le menu de navigation $req = "SELECT fta_processus.* FROM fta_processus " . "LEFT JOIN fta_processus_cycle " . "ON fta_processus.id_fta_processus=fta_processus_cycle.id_next_fta_processus " . "WHERE fta_processus_cycle.id_next_fta_processus IS NULL;"; $result = DatabaseOperation::query($req); while ($rows = mysql_fetch_array($result)) { $t_liste_processus[] = $rows["id_fta_processus"]; } //Récupération des Chapitres accessible dans le menu de naviguation if ($t_liste_processus) { $req = "SELECT * FROM fta_chapitre LEFT JOIN fta_processus " . "ON fta_processus.id_fta_processus=fta_chapitre.id_fta_processus " . "WHERE ( " . "fta_chapitre.id_fta_processus=0 "; $separator = "OR"; foreach ($t_liste_processus as $value) { $req .= $separator . " fta_processus.id_fta_processus=" . $value . " "; $separator = "OR"; } $req .= " ) ORDER BY fta_chapitre.id_fta_chapitre"; $result = DatabaseOperation::query($req); //Balyage des chapitres trouvés while ($rows = mysql_fetch_array($result)) { $id_fta_chapitre = $rows['id_fta_chapitre']; $nom_fta_chapitre = $rows['nom_fta_chapitre']; $nom_usuel_fta_chapitre = $rows['nom_usuel_fta_chapitre']; //Dans le cas où il n'y a pas de chapitre sélectionné, sélection du premier if (!$id_fta_chapitre_encours) { $id_fta_chapitre_encours = $id_fta_chapitre; } if ($id_fta_chapitre_encours == $id_fta_chapitre) { $b = "<font size=3 color=#5494EE><b>"; $image1 = "[>"; $image2 = "<]"; $num = 1; //$image1="[<img src=../lib/images/etoile_clignotante.gif width=15 height=15 border=0 />]"; //$image2=$image1; } else { $image1 = "[>"; $image2 = "<]"; //Ce chapitre est-il public? if ($rows['id_fta_processus'] == 0) { $b = "<font color=\"#8977A9\">"; } else { //Le chapitre est-il validé ? $req1 = "SELECT id_fta_suivi_projet " . "FROM fta_suivi_projet " . "WHERE id_fta={$id_fta} " . "AND id_fta_chapitre={$id_fta_chapitre} " . "AND signature_validation_suivi_projet<>0 "; $result1 = DatabaseOperation::query($req1); $num = mysql_num_rows($result1); switch ($num) { case 0: //Chapiter pas encore validé $b = "<font color=\"#FF0000\">"; break; case 1: //Chapitre validé $b = "<font color=\"#00B300\">"; break; default: //Anomalie $titre = "Erreur Grave !"; $message = "La fonction afficher_navigation() vient de trouver des doublons de validation des chapitres dans la table fta_suivi_projet"; afficher_message($titre, $message, $redirection); break; } } //Fin du test public } //Fin de la colorisation //$menu_navigation.="<a href=$page_default.php?id_fta=$id_fta&id_fta_chapitre_encours=$id_fta_chapitre><img src=images/bouton_menu-$nom_fta_chapitre.png border=$border></a> "; //echo $num." ".$_SESSION["synthese_action"]."<br>"; if ($num == 0 and $_SESSION["synthese_action"] == "attente") { } else { $menu_navigation .= "<a href={$page_default}.php?id_fta={$id_fta}&id_fta_chapitre_encours={$id_fta_chapitre}&synthese_action={$synthese_action}>{$b}" . $image1 . $nom_usuel_fta_chapitre . $image2 . "</a>" . "</b></font> "; } //$menu_navigation.="<input type=submit value=`".$nom_usuel_fta_chapitre."` border=$border> "; } } //Fin de la création des chapitres } //Fin du controle de $synthese_action //Lien de retour rapide /* $menu_navigation.= "</td></tr><tr><td> <a href=index.php?id_fta_etat=".$_SESSION["id_fta_etat"]."&nom_fta_etat=".$_SESSION["abreviation_fta_etat"]."&synthese_action=$synthese_action>Retour vers la synthèse</a> "; */ if ($comeback == 1) { $_SESSION["comeback_url"] = $_SERVER["HTTP_REFERER"]; $_GLOBALS["comeback_url"] = $_SESSION["comeback_url"]; } $menu_navigation .= "</td></tr><tr><td>\r\n <a href=" . $_SESSION["comeback_url"] . "><img src=../lib/images/bouton_retour.png alt=\"\" title=\"Retour à la synthèse\" width=\"18\" height=\"15\" border=\"0\" /> Retour vers la synthèse</a> |\r\n "; //echo "<pre>".print_r($_SERVER["QUERY_STRING"])."</pre>"; //Corps du menu $menu_navigation .= "\r\n <a href=historique.php?id_fta={$id_fta}><img src=./images/graphique.png alt=\"\" title=\"" . UserInterfaceLabel::FR_AVANCEMENT_FTA . "\" width=\"18\" height=\"15\" border=\"0\" />" . UserInterfaceLabel::FR_AVANCEMENT_FTA . "</a>\r\n </td></tr>\r\n </table>\r\n "; return $menu_navigation; }
case 1: $title = "Réduction de la Durée de Vie Production"; break; case 2: $title = "Augmentation de la Durée de Vie Production"; break; } //Récupération des Informations Produits /* $req = "SELECT * FROM fta_composition, fta_nomenclature, annexe_agrologic_article_codification " . "WHERE fta_composition.id_fta=$id_fta " . "AND fta_composition.id_fta_nomenclature=fta_nomenclature.id_fta_nomenclature " . "AND fta_nomenclature.id_annexe_agrologic_article_codification=annexe_agrologic_article_codification.id_annexe_agrologic_article_codification " ; */ $req = "SELECT * FROM fta_composant, annexe_agrologic_article_codification " . "WHERE fta_composant.id_fta={$id_fta} " . "AND fta_composant.id_annexe_agrologic_article_codification=annexe_agrologic_article_codification.id_annexe_agrologic_article_codification "; $result_produit = DatabaseOperation::query($req); //Création de la liste de sélection des produits //$liste_produit="<select name=id_fta_composition size=5>"; $liste_produit = "<select name=id_fta_composant size=5>"; while ($rows_produit = mysql_fetch_array($result_produit)) { // $liste_produit.= "<OPTION value=".$rows_produit["id_fta_composition"].">" $liste_produit .= "<OPTION value=" . $rows_produit["id_fta_composant"] . ">" . $rows_produit["prefixe_annexe_agrologic_article_codification"] . $rows_produit["code_produit_agrologic_fta_nomenclature"] . " - " . $rows_produit["nom_fta_nomenclature"] . " (" . $rows_produit["duree_vie_technique_fta_composition"] . " jours)" . "</OPTION>"; } $liste_produit .= "</select>"; $bloc = "<{$html_table}><tr class=titre_principal><td>" . $title . "<br>Informations Article" . "</td></tr>" . "<tr><td>" . "<{$html_table}>" . "<tr><td>" . mysql_field_desc("access_arti2", "LIBELLE") . ": " . $LIBELLE . "<br>" . mysql_field_desc("access_arti2", "Durée_de_vie_technique") . ": " . $Durée_de_vie_technique . "<br>" . "</td></tr>" . "</table>" . "</td></tr>" . "</table>" . "<{$html_table}><tr class=titre_principal><td>" . "Sélection du Produits" . "</td></tr>" . "<tr><td>" . "<{$html_table}><tr><td align=\"center\">" . $liste_produit . "</td></tr>" . "<tr><td>" . "<{$html_table}>" . "<tr><td width=\"50%\" align=\"right\">" . "Forcer la " . mysql_field_desc("fta_derogation_duree_vie", "duree_vie_production_fta_derogation_duree_vie") . " à : " . "</td><td>" . "<input type=\"text\" name=\"duree_vie_production_fta_derogation_duree_vie\" size=\"5\"" . "</td></tr>" . "<tr><td width=\"50%\" align=\"right\">" . mysql_field_desc("fta_derogation_duree_vie", "lot_fta_derogation_duree_vie") . " : " . "</td><td>" . "<input type=\"text\" name=\"lot_fta_derogation_duree_vie\" size=\"10\" />" . "</td></tr>" . "<tr><td width=\"50%\" align=\"right\">" . mysql_field_desc("fta_derogation_duree_vie", "commentaire_fta_derogation_duree_vie") . " : " . "</td><td>" . "<input type=\"text\" name=\"commentaire_fta_derogation_duree_vie\" size=\"50\" />" . "</td></tr>" . "</table>" . "</td></tr>" . "</td></tr></table>" . "</td></tr>" . "</table>"; /* Sélection du mode d'affichage */ switch ($output) { /************* Début Code PDF
function afficher_requete_en_liste_deroulante($requete, $id_defaut, $nom_defaut) { //echo $id_defaut; //Recherche de la clef $result = DatabaseOperation::query($requete); $table = mysql_fetch_array($result); if (!$table) { //Si la liste est vide $html_liste = "<i>(vide)</i>"; } else { $key = array_keys($table); if (!$nom_defaut) { $nom_defaut = $key[1]; } //Création de la liste déroulante $html_liste = "<select name={$nom_defaut} onChange=" . $nom_defaut . "_js()>"; //Création du contenu de la liste $result = DatabaseOperation::query($requete); while ($rows = mysql_fetch_array($result)) { if ($rows[0] == $id_defaut) { $selected = " selected"; } else { $selected = ""; } $html_liste .= "<option value={$rows['0']}{$selected}>{$rows['1']}</option>"; } $html_liste .= "</select>"; } //Fin de la construction de la liste return $html_liste; }
var wshell = new ActiveXObject('wscript.shell'); var currentlogin = wshell.ExpandEnvironmentStrings('%USERNAME%'); window.location.replace('../index.php?autologin='******'Intranet Agis - Initialisation de la connexion'; echo '<html>'; echo '<head>'; echo '<title>' . $title . '</title>'; echo '<link rel=stylesheet href=../lib/css/' . $css_intranet_module . ' type=text/css>'; echo '</head>'; //} else { $req = 'SELECT prenom,id_user,id_catsopro,id_service,id_type,nom,mail,lieu_geo,portail_wiki_salaries' . ' FROM ' . $globalConfig->getConf()->getMysqlDatabaseAuthentificationTableName() . ' WHERE (login = '******')'; //echo $req; $q1 = DatabaseOperation::query($req); //'$autologin TEST'.mysql_num_rows($q1); if (mysql_num_rows($q1)) { $rows = mysql_fetch_array($q1); $prenom = $rows['prenom']; $id_user = $rows['id_user']; $id_catsopro = $rows['id_catsopro']; $id_service = $rows['id_service']; $id_type = $rows['id_type']; $nom_famille_ses = $rows['nom']; $mail_user = $rows['mail']; $lieu_geo = $rows['lieu_geo']; $portail_wiki_salaries = $rows['portail_wiki_salaries']; $_SESSION['pass'] = $pass; $_SESSION['nom_famille_ses'] = $nom_famille_ses; $_SESSION['login'] = $login;
<td class="loginFFFFFFdroit" width="4%"> </td> <td class="loginFFFFFFdroit" width="11%">Auteur</td> <td class="loginFFFFFF" width="30%"> <input type="text" name="auteur" size="22" class="loginFFFFFF" value='<?php $ab = DatabaseOperation::query("select * from salaries where id_user='******'auteur']}'"); $ligne = mysql_fetch_array($ab); echo "{$ligne['nom']} {$ligne['prenom']}"; ?> '> </td> <td class="loginFFFFFFdroit" width="15%">publié par</td> <td class="loginFFFFFF" width="30%"> <input type="text" name="publicateur" size="22" class="loginFFFFFF" value='<?php $cd = DatabaseOperation::query("select * from salaries where id_user='******'publica']}'"); $ligne2 = mysql_fetch_array($cd); echo "{$ligne2['nom']} {$ligne2['prenom']}"; ?> '> </td> <td class="loginFFFFFF" width="5%" align="center"><?php echo $News_icoLU; ?> </td> </tr> <tr> <td class="loginFFFFFFdroit"><img src=../lib/images/espaceur.gif width="25" height="1"></td> <td class="loginFFFFFFdroit" width="11%">date d'origine</td> <td class="loginFFFFFF" width="30ù">
//Une palettisation à été selectionnée $id_selection; //Modèle de palettisation sélectionnée et à utiliser $id_fta_sauvegarde = $id_fta; //Sauvegarde de l'id_fta car il va être supprimé $id_fta_conditionnement = $id_selection; //Préparation pour chargement des valeurs //Chargement des valeurs du modèle mysql_table_load("fta_conditionnement"); $id_fta = $id_fta_sauvegarde; //Affectation de l'id_fta $id_fta_conditionnement = ""; //Suppression de l'id_fta_conditionnement pour création d'un nouvel enregistrement //Suppression de la palettisation précédement sélectionnée $req = "SELECT id_fta_conditionnement " . "FROM fta_conditionnement, annexe_emballage_groupe, annexe_emballage " . "WHERE fta_annexe_emballage_groupe=3 " . "AND id_fta={$id_fta} " . "AND fta_conditionnement.id_annexe_emballage=annexe_emballage.id_annexe_emballage " . "AND annexe_emballage.id_annexe_emballage_groupe=annexe_emballage_groupe.id_annexe_emballage_groupe " . "ORDER BY reference_fournisseur_annexe_emballage "; $result = DatabaseOperation::query($req); while ($rows = mysql_fetch_array($result)) { $id_fta_conditionnement = $rows["id_fta_conditionnement"]; mysql_table_operation("fta_conditionnement", "delete"); } //Enregsitrement de la palettisation pour la FTA en cours mysql_table_operation("fta_conditionnement", "insert"); //Renvoi sur la page d'ajout avec cette nouvelle information de groupe d'emballage sélectionné header("Location: modification_fiche.php?id_fta={$id_fta}&id_fta_chapitre_encours={$id_fta_chapitre_encours}"); break; case 'suppression_modele_palettisation': //Variables passées en URL $id_fta; $id_fta_conditionnement; mysql_table_operation("fta_conditionnement", "delete"); header("Location: selection_palettisation.php?id_fta={$id_fta}&id_fta_chapitre_encours={$id_fta_chapitre_encours}");
//Mot de passe donné par l'utilisateur /* Récupération des données MySQL */ //Récupération de nom de table $liste_table = file('table_data.list'); //Récupération de mot de passe de vérification $nom_table = 'intranet_password'; $id_intranet_password = $NIV; mysql_table_load($nom_table); $real_password = $valeur_intranet_password; //Vérification du mot de passe if ($password == $real_password) { foreach ($liste_table as $value) { if (substr($value, 0, 1) != '#') { DatabaseOperation::query("DELETE FROM {$value}"); } } $message = "le module {$module} a été initialisé.<br>"; } else { $message = "Mot de passe incorrect !<br>" . "Syntaxe: nom_de_la_page.php?password=<i>votre_mot_de_passe</i><br>"; } /* Création des objets HTML (listes déroulante, cases à cocher ...etc.) */ /*********** Fin Code PHP ***********/ /************** Début Code HTML **************/
/** * * @param mixed $paramStartValue * @param HtmlResult $htmlResult * @return mixed */ function recursifOne($paramStartValue, $htmlResult, $paramNameOfBDDOrigin) { $reqTableClassifRoot = "SELECT classification_arborescence_article.id_classification_arborescence_article, " . "ascendant_classification_arborescence_article_categorie_contenu, nom_classification_arborescence_article_categorie_contenu, " . "nom_classification_arborescence_article_categorie,classification_arborescence_article_categorie_contenu.id_classification_arborescence_article_categorie_contenu " . "FROM " . $paramNameOfBDDOrigin . ".classification_arborescence_article, " . $paramNameOfBDDOrigin . ".classification_arborescence_article_categorie_contenu, " . "" . $paramNameOfBDDOrigin . ".classification_arborescence_article_categorie " . "WHERE classification_arborescence_article.id_classification_arborescence_article_categorie_contenu = " . "classification_arborescence_article_categorie_contenu.id_classification_arborescence_article_categorie_contenu " . "AND classification_arborescence_article_categorie.id_classification_arborescence_article_categorie = " . "classification_arborescence_article_categorie_contenu.id_classification_arborescence_article_categorie " . "AND ascendant_classification_arborescence_article_categorie_contenu = {$paramStartValue} " . "ORDER BY classification_arborescence_article.id_classification_arborescence_article "; $resultTableClassifRoot = DatabaseOperation::query($reqTableClassifRoot); $arrayTableClassifRoot = DatabaseOperation::convertSqlResultWithoutKeyToArray($resultTableClassifRoot); $i = 0; if ($arrayTableClassifRoot != NULL) { foreach ($arrayTableClassifRoot as $value) { $id_fils = $value["id_classification_arborescence_article"]; $id_pere = $value["ascendant_classification_arborescence_article_categorie_contenu"]; $id = $value["id_classification_arborescence_article_categorie_contenu"]; $nom_contenu = $value["nom_classification_arborescence_article_categorie_contenu"]; $nom_type = $value["nom_classification_arborescence_article_categorie"]; switch ($nom_type) { //& $htmlResult->getProprietaire() != "Carrefour(Groupe)" case "Propriétaire": $htmlResult->setProprietaire($nom_contenu); $htmlResult->setIdproprietaire($id); break; case "Marque": $htmlResult->setMarque($nom_contenu); $htmlResult->setIdmarque($id); //$htmlResult->setIsProprietaireEndToTrue(); break; case "Activité": $htmlResult->setActivite($nom_contenu); $htmlResult->setIdactivite($id); break; case "Rayon": $htmlResult->setRayon($nom_contenu); $htmlResult->setIdrayon($id); break; case "Environnement": $htmlResult->setEnvironnement($nom_contenu); $htmlResult->setIdenvironnement($id); break; case "Réseau": $htmlResult->setReseau($nom_contenu); $htmlResult->setIdreseau($id); break; case "Saisonalité": $htmlResult->setSaisonalite($nom_contenu); $htmlResult->setIdsaisonalite($id); break; case "Export": $htmlResult->setExport($nom_contenu); $htmlResult->setIdexport($id); break; //.... //.... default: break; } $j = $nom_type . $i++; $return[$j] = array($nom_type => $nom_contenu, "id" . $nom_type => $id_fils); $subReturn = recursifOne($id_fils, $htmlResult, $paramNameOfBDDOrigin); if ($subReturn != NULL) { $return[$j][] = $subReturn; /** * Post-traitement récursif */ switch ($nom_type) { case "Propriétaire": $htmlResult->removeLastProprietaire(); $htmlResult->removeLastIdProprietaire(); break; case "Marque": break; case "Activité": break; case "Rayon": break; case "Environnement": break; case "Réseau": break; case "Saisonalité": break; case "Export": break; default: break; } } else { $htmlResult->setIdArborescence($id_fils); $arrayResult = $htmlResult->getArrayResult(); $arrayResult[$id_fils] = array("IdArborescence" => $htmlResult->getIdArborescence(), "Proprietaire" => $htmlResult->getProprietaire(), "IdProprietaire" => $htmlResult->getIdproprietaire(), "Marque" => $htmlResult->getMarque(), "IdMarque" => $htmlResult->getIdmarque(), "Activite" => $htmlResult->getActivite(), "IdActivite" => $htmlResult->getIdactivite(), "Rayon" => $htmlResult->getRayon(), "IdRayon" => $htmlResult->getIdrayon(), "Environnement" => $htmlResult->getEnvironnement(), "IdEnvironnement" => $htmlResult->getIdenvironnement(), "Reseau" => $htmlResult->getReseau(), "IdReseau" => $htmlResult->getIdreseau(), "Saisonnalite" => $htmlResult->getSaisonalite(), "IdSaisonnalite" => $htmlResult->getIdsaisonalite(), "Export" => $htmlResult->getExport(), "IdExport" => $htmlResult->getIdexport()); $htmlResult->setArrayResult($arrayResult); //$htmlResult->cleanAll(); return $htmlResult; } } return $htmlResult->getArrayResult(); } else { return NULL; } }
function find_produit($code_produit, $id_fta, $record_version) { //Parcours de la nomenclature et créé les semi-fini dans la FTA $req = "SELECT * FROM " . "fta_migration_nomenclature, fta_migration_produit " . "WHERE _AUTO_PRODUIT=" . $code_produit . " " . "AND fta_migration_nomenclature._AUTO_PRODUIT=fta_migration_produit.CODE_PRODUIT "; $result = DatabaseOperation::query($req); while ($rows_produit = mysql_fetch_array($result)) { //Idenitification des semi-fini (sur 6 caractères) if (strlen($rows_produit["SOUS_PRODUIT"]) == 6) { //Chargement des données du sous-produit $req = "SELECT * FROM " . "fta_migration_nomenclature, fta_migration_produit " . "WHERE _AUTO_PRODUIT=" . $rows_produit["SOUS_PRODUIT"] . " " . "AND fta_migration_nomenclature._AUTO_PRODUIT=fta_migration_produit.CODE_PRODUIT "; $result_1 = DatabaseOperation::query($req); $rows = mysql_fetch_assoc($result_1); //Préparation des données //echo print_r($rows); //id_fta_nomenclature --> Incrémentation automatique //last_id_fta_nomenclature --> 0 $last_id_fta_nomenclature = 0; //OLD_id_fta_composition --> NULL $OLD_id_fta_composition = NULL; //id_annexe_agrologic_article_codification --> Cf. Agro|10- CPRO Code produit 7R | $tmp_codification_produit = substr($rows["_AUTO_PRODUIT"], 0, 1); $prefixe_annexe_agrologic_article_codification = "0" . $tmp_codification_produit; $req = "SELECT id_annexe_agrologic_article_codification " . "FROM annexe_agrologic_article_codification " . "WHERE prefixe_annexe_agrologic_article_codification=" . $prefixe_annexe_agrologic_article_codification . " "; $id_annexe_agrologic_article_codification = mysql_result(DatabaseOperation::query($req), 0, "id_annexe_agrologic_article_codification"); //id_access_recette_recette --> 0 $id_access_recette_recette = 0; //id_fta --> Cf. Agro.[PRODUIT].[No Produit](0) du code == "00]" + Agro.[NOMENCLATURE] $id_fta = $id_fta; //ascendant_fta_nomenclature --> NULL $ascendant_fta_nomenclature = NULL; //site_production_fta_nomenclature --> Cf. Agro.SE BASER SUR l'extraction du compte GG= ou GT=[MATIERE].[Fournisseurs](33) du code "000]" (voir PRIFOUR ?) + recouper avec la table geo (id_geo) $site_production_fta_nomenclature = $rows["SITE"]; //Pour l'instant, tout sur Avignon //poids_fta_nomenclature --> Cf. Agro. 6- 4 Quantité de lien du composant MR4 9R | //id_annexe_unite --> Cf. Agro.[PRODUIT].[champ 11] / [PRODUIT].[champ 12] / [PRODUIT].[champ 13] switch ($prefixe_annexe_agrologic_article_codification) { case "01": case "02": $id_annexe_unite = "kg"; $poids_fta_nomenclature = $rows["COEF_US1_VERS_US2"]; break; case "05": $id_annexe_unite = "L"; $poids_fta_nomenclature = ""; break; case "06": case "07": $id_annexe_unite = "kg"; $poids_fta_nomenclature = ""; break; } //code_produit_agrologic_fta_nomenclature --> Cf. Agro.[PRODUIT].[No Produit] du code <> "00" $code_produit_agrologic_fta_nomenclature = substr($rows["_AUTO_PRODUIT"], 1); //etat_fta_nomenclature --> Cf. Agro.[PRODUIT].[No Produit] du code == ( "0211]" ou "03]" $etat_fta_nomenclature = 1; //nom_fta_nomenclature --> Cf. Agro.[PRODUIT].[Désignation] $nom_fta_nomenclature = $rows["DESCRIPTION"]; //suffixe_agrologic_fta_nomenclature --> Cf. Agro.[PRODUIT].[No Produit] du code == "00]" $suffixe_agrologic_fta_nomenclature = ""; //Traitement particulier pour les "221]", "236]", "211]" cas des Surgelés $tmp = substr($rows["_AUTO_PRODUIT"], 0, 3); if ($tmp == "221" or $tmp == "236" or $tmp == "211") { $id_annexe_unite = "kg"; $poids_fta_nomenclature = ""; $quantite_piece_par_carton = $rows["COEF_US1_VERS_US2"]; //poids_total_carton_vrac_fta_nomenclature --> Cf. Agro.[PRODUIT].[Nombre de KG dans 1 CAR] du code == "0211]" $etat_fta_nomenclature = 2; } //Création de la requête $req_insert = "INSERT fta_nomenclature SET " . " last_id_fta_nomenclature='{$last_id_fta_nomenclature}' " . ", OLD_id_fta_composition='{$OLD_id_fta_composition}' " . ", id_annexe_agrologic_article_codification='{$id_annexe_agrologic_article_codification}' " . ", id_access_recette_recette='{$id_access_recette_recette}' " . ", id_fta='{$id_fta}' " . ", ascendant_fta_nomenclature='{$ascendant_fta_nomenclature}' " . ", site_production_fta_nomenclature='{$site_production_fta_nomenclature}' " . ", poids_fta_nomenclature='{$poids_fta_nomenclature}' " . ", id_annexe_unite='{$id_annexe_unite}' " . ", quantite_piece_par_carton='{$quantite_piece_par_carton}' " . ", poids_total_carton_vrac_fta_nomenclature='{$poids_total_carton_vrac_fta_nomenclature}' " . ", code_produit_agrologic_fta_nomenclature='{$code_produit_agrologic_fta_nomenclature}' " . ", etat_fta_nomenclature='{$etat_fta_nomenclature}' " . ", nom_fta_nomenclature='{$nom_fta_nomenclature}' " . ", suffixe_agrologic_fta_nomenclature='{$suffixe_agrologic_fta_nomenclature}' " . ", _VERSION='{$record_version}' "; //Création de la nomenclature echo $rows["_AUTO_PRODUIT"] . " - " . $nom_fta_nomenclature . " créé: "; echo "<h5>" . $req_insert . "</h5>"; echo "<br>"; DatabaseOperation::query($req_insert); //Appel recursif pour traiter les sous-produits $code_produit = $rows["_AUTO_PRODUIT"]; $id_fta = $id_fta; find_produit($code_produit, $id_fta, $record_version); } //Fin du traitement dans le cas d'un semi-fini } //Fin boucle }