BACKEND MODULE. La valeur par défaut est _DISPATCH mais on peut utilise un autre script exemple :
|
|
- Marie-Christine Boutin
- il y a 8 ans
- Total affichages :
Transcription
1 BACKEND MODULE Auteur : Philippe Leblond Compagnie : Sys-Tech ( Référence obligatoire pour les backend module : conf.php Accès : $MCONF['access']='user,group,admin'; Valeur possible : user : utilisateur (On pourra mettre des permissions sur les utilisateur qui auront accès à ce module) group : groupe (On pourra mettre des permissions sur les groupes utilisateur qui auront accès à ce module) admin : administrateur (Les administrateurs auront accès à ce module) Script à utiliser : $MCONF['script']='_DISPATCH'; //appelera par défaut index.php La valeur par défaut est _DISPATCH mais on peut utilise un autre script exemple : $MCONF['script']='allo.php'; //non recommandé Icone du module backend : $MCONF['default']['tabs_images']['tab']='moduleicon.gif'; Module de traduction pour les termes généraux relié au backend : $MCONF['default']['11_ref']='LLL:EXT:st_kitchen/mod1/locallang_mod.php'; Workspace permission : $MCONF['workspaces'] = online,offline,custom ; Valeur possible : online : Permet en mode live offline : Permit en mode draft custom : Permit dans les workspace personnonalisé
2 Localisation global $LANG $LANG->getLL('function1') Menu fonction Pour ajouter des menus : function menuconfig() { global $LANG; $this->mod_menu = Array ( 'function' => Array ( '1' => $LANG->getLL('function1'), '2' => $LANG->getLL('function2'), '3' => $LANG->getLL('function3'), ) ); parent::menuconfig(); Pour récupérer le numéro du menu contextuel : $this->mod_settings['function']
3 TYPO3 Core Engine (TCE) Le TYPO3 core engine permet d'exécuter des commandes et faire des requêtes SQL sans avoir à écrire des longues lignes de code php et des requêtes SQL. De plus il prend en compte tous les paramètres et permission par défaut de TYPO3. Il y a donc moins de chance de se tromper en utilisant le TCE que faire nous même nos requêtes SQL. Documentation : 3/3/ Data : (création ou modification) Syntaxe pour une modification : $data[ tablename ][ uid ][ fieldname ] = value Exemple pour une création : $data['pages']['new9823be87'] = array( "title" => "The page title", "subtitle" => "Other title stuff", "pid" => "45" ); Soumission d'une data $tce = t3lib_div::makeinstance('t3lib_tcemain'); $tce->stripslashes_values = 0; $tce->start($data,array()); $tce->process_datamap(); Pour récuper le id d'un nouvel enregistrement : $tce->substnewwithids[$id]; Cmd : (delete,move,copy) Syntaxe pour une supression : $cmd[table][uid][commande] = valeur; Exemple pour une suppression : $cmd['pages'][66]['delete'] = 1; Soumission d'une commande : $tce = t3lib_div::makeinstance('t3lib_tcemain');
4 $tce->stripslashes_values=0; $tce->start(array(),$cmd); $tce->process_cmdmap();
5 Création de lien et le TCE Méthode editonclick Création d'un lien pour éditer une table du TCA : //Éditer la page ayant comme uid 66 $params='&edit[pages][66]=edit'; $link = '<a href="#" onclick="'.htmlspecialchars(t3lib_befunc::editonclick($params)).'">edit</a>'; //Éditer le titre de la page ayant comme uid 66 $params='&edit[pages][66]=edit&columnsonly=title'; $link = '<a href="#" onclick="'.htmlspecialchars(t3lib_befunc::editonclick($params)).'">edit</a>'; Création d'un lien pour créer un nouvel enregistrement dans une table : //Créer une page sous la page ayant comme uid 33 $params = '&edit[pages][33]=new&defvals[pages][title]=newelement&defvals[pages][subtitle]=newelement2'; $content.= '<a href="#" onclick="'.htmlspecialchars(t3lib_befunc::editonclick($params,$globals['back_path'])).'">'. 'Create new page inside page 33</a><br/>';
6 Méthode tce_db.php et alt_doc.php tce_db.php : SC_tce_db Class Reference Ce fichier TYPO3 permet d'exécuter des cmd et datamap. Document : /view/3/3/ Syntaxe : // id : page du backend // $this->mconf['name'] : nom du module // $this->mod_settings['function'] : menu $returnurl="redirect=".$baseurl.urlencode("mod.php?id={$this->id&m={$this- >MCONF['name']&SET[function]={$this->MOD_SETTINGS['function']{$param"); $urlcomplete = "{$baseurltce_db.php?&cmd[{$table][{$uidrecord][delete]=1&{$returnurl"; alt_doc.php : SC_alt_doc Class Reference Permet de faire un rendu du TCA Syntaxe : // id : page du backend // $this->mconf['name'] : nom du module // $this->mod_settings['function'] : menu $returnurl="returnurl=".urlencode("mod.php?id={$this->id&m={$this- >MCONF['name']&SET[function]={$this->MOD_SETTINGS['function']{$param"); $editrecord = "edit[{$table][{$uidrecord]=edit"; $urlcomplete = "{$baseurlalt_doc.php?{$returnurl&{$editrecord";
7 Voici 2 fonctions pratiques pour les backend modules : /* * cmd : EDIT,NEW,DELETE */ function geturlcmdrecord($table,$uidrecord,$cmd='edit',$param=array()) { if (count($param)>0) { $param = '&'.implode('&',$param); $baseurl = t3lib_div::getindpenv(typo3_request_dir); $returnurl="returnurl=".urlencode("mod.php?id={$this->id&m={$this- >MCONF['name']&SET[function]={$this->MOD_SETTINGS['function']{$param"); if (strcasecmp('edit',$cmd)==0) { $editrecord = "edit[{$table][{$uidrecord]=edit"; $urlcomplete = "{$baseurlalt_doc.php?{$returnurl&{$editrecord"; elseif (strcasecmp('delete',$cmd)==0) { $returnurl="redirect=".$baseurl.urlencode("mod.php?id={$this->id&m={$this- >MCONF['name']&SET[function]={$this->MOD_SETTINGS['function']{$param"); $urlcomplete = "{$baseurltce_db.php?&cmd[{$table][{$uidrecord][delete]=1&{$returnurl"; else { $editrecord = "edit[{$table][{$this->id]=new"; $urlcomplete = "{$baseurlalt_doc.php?{$returnurl&{$editrecord"; return $urlcomplete;
8 /* * cmd : EDIT,NEW,DELETE */ function geticoncmd($table,$uidrecord,$cmd='edit',$param=array(),$width=16,$height=16,$addattribute='') { $baseurl = t3lib_div::getindpenv(typo3_request_dir); if (strcasecmp('delete',$cmd)==0) { $icon = '<a '.$addattribute.' href="'.$this- >geturlcmdrecord($table,$uidrecord,$cmd,$param).'"><img '.t3lib_iconworks::skinimg($baseurl,'sysext/t3skin/icons/gfx/garbage.gif').' width="'.$width.'" height="'.$height.'" alt="" /></a>'; if (strcasecmp('edit',$cmd)==0) { $icon = '<a '.$addattribute.' href="'.$this- >geturlcmdrecord($table,$uidrecord,$cmd,$param).'"><img '.t3lib_iconworks::skinimg($baseurl,'sysext/t3skin/icons/gfx/edit2.gif').' width="'.$width.'" height="'.$height.'" alt="" /></a>'; if (strcasecmp('new',$cmd)==0) { $icon = '<a '.$addattribute.' href="'.$this- >geturlcmdrecord($table,$uidrecord,$cmd,$param).'"><img '.t3lib_iconworks::skinimg($baseurl,'sysext/t3skin/icons/gfx/new_el.gif').' width="'.$width.'" height="'.$height.'" alt="" /></a>'; return $icon;
9 Simulation du frontend en backend Il arrive parfois d'avoir besoin des méthodes du TSFE pour avoir accès aux méthode de la librairie tslib_cobj. Avec la méthode suivante on peut avoir accès aux méthodes de template ainsi qu'à l'objet typolink pour faire des liens en backend. Cette méthode peut causer certain problème car on est pas dans un contexte de frontend. function get_tsfe($pid = 1) { require_once(path_site.'typo3/sysext/cms/tslib/class.tslib_fe.php'); require_once(path_site.'t3lib/class.t3lib_userauth.php'); require_once(path_site.'typo3/sysext/cms/tslib/class.tslib_feuserauth.php'); require_once(path_site.'t3lib/class.t3lib_cs.php'); require_once(path_site.'typo3/sysext/cms/tslib/class.tslib_content.php') ; require_once(path_site.'t3lib/class.t3lib_tstemplate.php'); require_once(path_site.'t3lib/class.t3lib_page.php'); require_once(path_site.'t3lib/class.t3lib_timetrack.php'); $TSFEclassName = t3lib_div::makeinstanceclassname('tslib_fe'); $GLOBALS['TSFE'] = new $TSFEclassName($GLOBALS['TYPO3_CONF_VARS'], $pid, '0', 0, '','','',''); $temp_ttclassname = t3lib_div::makeinstanceclassname('t3lib_timetrack'); $GLOBALS['TT'] = new $temp_ttclassname(); $GLOBALS['TT']->start(); $GLOBALS['TSFE']->config['config']['language']=$_GET['L']; $GLOBALS['TSFE']->id = $pid; $GLOBALS['TSFE']->connectToMySQL(); $sqldebug = $GLOBALS['TYPO3_DB']->debugOutput; $GLOBALS['TYPO3_DB']->debugOutput = false; $GLOBALS['TSFE']->initLLVars(); $GLOBALS['TSFE']->initFEuser(); $GLOBALS['TSFE']->sys_page = t3lib_div::makeinstance('t3lib_pageselect'); $GLOBALS['TSFE']->sys_page->init($GLOBALS['TSFE']->showHiddenPage); $page = $GLOBALS['TSFE']->sys_page->getPage($pid); if (count($page) == 0) { $GLOBALS['TYPO3_DB']->debugOutput = $sqldebug; return false;
10 if ($page['doktype']==4 && count($globals['tsfe']- >getpageshortcut($page['shortcut'],$page['shortcut_mode'],$page['uid'])) == 0) { $GLOBALS['TYPO3_DB']->debugOutput = $sqldebug; return false; if ($page['doktype'] == 199 $page['doktype'] == 254) { $GLOBALS['TYPO3_DB']->debugOutput = $sqldebug; return false; $GLOBALS['TSFE']->getPageAndRootline(); $GLOBALS['TSFE']->initTemplate(); $GLOBALS['TSFE']->forceTemplateParsing = 1; $GLOBALS['TSFE']->tmpl->start($GLOBALS['TSFE']->rootLine); $GLOBALS['TSFE']->sPre = $GLOBALS['TSFE']->tmpl- >setup['types.'][$globals['tsfe']->type]; // toplevel - objarrayname $GLOBALS['TSFE']->pSetup = $GLOBALS['TSFE']->tmpl- >setup[$globals['tsfe']->spre.'.']; if (!$GLOBALS['TSFE']->tmpl->loaded ($GLOBALS['TSFE']->tmpl->loaded &&!$GLOBALS['TSFE']->pSetup)) { $GLOBALS['TYPO3_DB']->debugOutput = $sqldebug; return false; $GLOBALS['TSFE']->getConfigArray(); //$GLOBALS['TSFE']->getCompressedTCarray(); $GLOBALS['TSFE']->inituserGroups(); $GLOBALS['TSFE']->connectToDB(); $GLOBALS['TSFE']->determineId(); return $GLOBALS['TSFE']->newCObj(); Avec cette fonction nous pouvons obtenir plusieurs fonctions relié exclusivement au frontend telque la fonction typolink, typolink_url et les fonctions de template. Pour initialiser le TSFE : $this->get_tsfe();
11 Pour l'utilisation des fonction frontend : url : $GLOBALS['TSFE']->cObj->typolink_url($link); $GLOBALS['TSFE']->cObj->typolink($link); Template : $html = "###TEST###<div>###REPLACE###</div>###TEST###"; $templatecomplete = $GLOBALS['TSFE']->cObj->getSubpart($html,"###TEST###"); $markerarray=array(); $subpartarray=array(); $wrappedsubpartarray=array(); $markerarray['###replace###'] = 'ceci est un test'; $content = $GLOBALS['TSFE']->cObj->substituteMarkerArrayCached($templateComplete, $markerarray,$subpartarray,$wrappedsubpartarray);
12 Hook TCEMain Hook pour les datas (lorsqu'on veux modifier ou créer un enregistrement): Dans le fichier ext_localconf.php : $GLOBALS ['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/ class.t3lib_tcemain.php']['processdatamapclass'][] = 'EXT:keyextension/file.php:tx_class'; Dans le fichier file.php : // $status : update ou new // $table : table sur laquelle on fait l'opération // $id : reprsente le id de l'enregistrement (lors de la création d'un objet on doit utiliser la fonction $tce->substnewwithids[$id];) // $fieldarray : représente les champs qu'on crée ou modifie. Action à faire après l'enregistrement des données. function processdatamap_afterdatabaseoperations($status, $table, $id, $fieldarray, $tce) { // mettre son code ici Pour récuper le id d'un nouvel enregistrement : $tce->substnewwithids[$id]; Action à faire avant l'enregistrement des données. function processdatamap_preprocessfieldarray(&$incomingfieldarray, $table, $id, $tce) { // mettre son code ici Hook pour les cmd (lorsqu'on veux déplacé, copié ou supprimé un enregistrement) $GLOBALS ['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/ class.t3lib_tcemain.php']['processcmdmapclass'][] = 'EXT:profweb_pratiques/ class.tx_profwebpratiques_tcemain.php:tx_profwebpratiques_tcemain'; // $command: delete, moce, copy, undelete // $table : table sur laquelle on fait l'opération // $id // $value : représente les champs qu'on crée ou modifie. function processcmdmap_preprocess($command, $table, $id, $value, $tce) { // mettre son code ici
13
14 Fonction backend et astuce Cache : Pour supprimer la cache d'une page on peut utiliser la fonction : $tce->clear_cachecmd exemple : require_once (PATH_t3lib."class.t3lib_tcemain.php"); $tce = t3lib_div::makeinstance("t3lib_tcemain"); $tce->clear_cachecmd($uidpage); t3lib_befunc : Pour obtenir les champs startime, endtime, hidden : t3lib_befunc::beenablefields('table'); Pour obtenir le champ deleted : t3lib_befunc::deleteclause('table'); t3lib_userauthgroup : Savoir si un utilisateur est administrateur ou pas : $GLOBALS['BE_USER']->isAdmin Permet d'obtenir les condition SQL pourr les permission d'une page sélectionner dans le backend $GLOBALS['BE_USER']->getPagePermsClause Pour savoir si un utilisateur appartient à un groupe : $GLOBALS['BE_USER']->isMemberOfGroup($idGroup) Autre : Connaitre le ID de la page où l'on se trouve dans le backend : $this->id
15 Création d'arbre dans le backend Technique 1 : require_once(path_t3lib.'../typo3/class.webpagetree.php'); $tree = t3lib_div::makeinstance('webpagetree'); $content.= $tree->getbrowsabletree(); Utiliser la fonction JumpTo en javascript pour identifier la bonne page. Technique 2 : require_once(path_t3lib.'class.t3lib_treeview.php'); $tree = t3lib_div::makeinstance('t3lib_treeview'); //initialise treeview $tree->init(); $tree->expandfirst =1; $tree->expandall = 1; $tree->mounts = array(1); $tree->table = 'pages'; $tree->clause = ''; //additionnal clause where (begin whith ' AND') $tree->orderbyfields = 'sorting'; debug($tree->tree); $content.=$tree->getbrowsabletree(); Utiliser la fonction JumpTo en javascript pour identifier la bonne page. Technique 3 (arbre statique) : require_once(path_t3lib.'class.t3lib_pagetree.php'); // Initialize starting point of page tree: $treestartingpoint = 1; $treestartingrecord = t3lib_befunc::getrecord('pages', $treestartingpoint); $depth = 2; // Initialize tree object: $tree = t3lib_div::makeinstance('t3lib_pagetree'); $tree->init('and '.$GLOBALS['BE_USER']->getPagePermsClause(1)); // Creating top icon; the current page $HTML = t3lib_iconworks::geticonimage('pages', $treestartingrecord, $GLOBALS['BACK_PATH'],'align="top"'); $tree->tree[] = array(
16 ); 'row' => $treestartingrecord, 'HTML'=>$HTML // Create the tree from starting point: $tree->gettree($treestartingpoint, $depth, ''); #debug($tree->tree); // Put together the tree HTML: $output = ' <tr bgcolor="#999999"> <td><b>icon / Title:</b></td> <td><b>page UID:</b></td> </tr> '; foreach($tree->tree as $data) { $output.=' <tr bgcolor="#cccccc"> <td nowrap="nowrap">'.$data['html'].htmlspecialchars($data['row']['title']).'</td> <td>'.htmlspecialchars($data['row']['uid']).'</td> </tr> '; $content.= '<table border="0" cellspacing="1" cellpadding="0">'.$output.'</table>';
17 CRON Pour n'importe quelle commande provenant du CLI, il faut faire passer la requête par le fichier typo3/cli_dispatch.phpsh. Celui-ci s'occupe d'initialiser l'environnement TYPO3 et de loader l'utilisateur backend requis. À noter qu'il est très important de créer un utilisateur backend et dont le nom d'utilisateur devra obligatoirement commencer par _CLI_. Dans l'exemple ci-dessous le nom de notre utilisateur backend est _CLI_st_extension ext_localconf.php : $TYPO3_CONF_VARS['SC_OPTIONS']['GLOBAL']['cliKeys']['st_extension'] = array('ext:st_extension/cli/class.tx_st_extension_cli.php','_cli_st_extension'); st_extension : représente le nom de notre cli st_extension : représente la clé unique de notre extension _CLI_st_extension : nom de l'utilisateur backend Code : <?php // Ce fichier est inclu à partir de typo3/cli_dispatch.phpsh if (!defined('typo3_climode')) die('you cannot run this script directly!'); require_once(path_t3lib. 'class.t3lib_cli.php'); class tx_st_extension_cli extends t3lib_cli { function tx_st_extension_cli() { // Make sure the this always calls the parent's constructor parent::t3lib_cli(); function main() { // Check arguments by looping through $this->cli_args! foreach($this->cli_args as $arg => $value) { // Do something function dosomething() { // Do something here return true;
18 // XCLASS Management if (defined('typo3_mode') && $TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/ st_extension/cli/tx_st_extension_cli.php']) include_once($typo3_conf_vars[typo3_mode]['xclass']['ext/st_extension/cli/ tx_st_extension_cli.php']); // Call the functionality $myobj = t3lib_div::makeinstance('tx_st_extension_cli'); $myobj->main(); $myobj->dosomething();?> Tous les arguments passés au script se retrouvent dans la variable membre $cli_args après que le constructeur de t3lib_cli ait été appelé. Plusieurs fonctions sont aussi disponibles pour gérer les arguments. Utiliser $SERVER["argv"] lorsque le paramètre $argv doit être spécifié. Il ne reste plus qu'à appeller le script de cette façon. Le premier argument est obligatoire. Ça doit être le keyname utilisé pour l'array $TYPO3_CONF_VARS['SC_OPTIONS']['GLOBAL']['cliKeys']. On peut ensuite passer tous les arguments qu'on veut. Note: Le binaire de php doit obligatoirement être /usr/bin/php. Utilisez un symlink si ce n'est pas le cas. /srv/www/vhosts/csrsdev.clients.sys-tech.net/typo3/cli_dispatch.phpsh st_extension
19 Interface de configuration d'une extension dans l'extension manager Créer dans le dossier de base de l'extension le fichier ext_conf_template.txt exemple de ext_conf_template.txt : # cat=basic; type=boolean; label= Titre de page titlepage = 1 # cat=basic; type=string; label= Code code = cat : cat correspond à la catégorie de la variable, les choix possibles sont : basic,menu,content,page,advanced. La plus utilisé est basic. On peut utiliser des sous-catégories pour ajouter des titres : enable dims file typo color links language Exemple de sous-catégorie : # cat=basic/enable; Les type possible : - boolean (case à cocher à la restitution) - int (entier) - int[0-3] (entier entre 0 à 3) - int+ (entier entre 0 et 10000) - color (choix de couleurr) - wrap (permet de mettre deux partie de code -> on récupère dans le code la "partie gauche partie droite") - options[option1,option2,option3,...] (Affiche une select box avec les valeurs définies entre []) - file (pas testé) - string : champ text
20 quelques exemple : # cat=basic; type=options[label9,test2]; label=test variablename9=test2 # cat=basic/file; type=file[html,jpg]; label=label11 variablename11= # cat=basic; type=int[0-3]; label = 0 a 3 debug = 0 # cat=basic; type=string; label=label2 variablename2 = 123 # cat=basic; type=boolean; label=label1:mettre ici la description description variablename1 = 1 Label : représenter un libellé à afficher. Exploitation des variables Maintenant il suffit de récupérer les variables dans le plugin pour pouvoir les utiliser, on procède de cette manière : global $TYPO3_CONF_VARS; $variable=$typo3_conf_vars["ext"]["extconf"]["nom_extension"]; Ceci nous renvoi dans $variable le tableau sérialisé des variables de configuration. Il suffit de désérialiser ce tableau comme ceci : $variable=unserialize($variable); Ensuite on peut accéder au valeur des variable puisque l'index de $variable est le nom mis dans le fichier ext_conf_template.txt exemple : echo $variable["titlepage"];
21 TCA exemple de la fonction itemsprocfunc : Permet de modifier la valeur d'un select 'category' => array ( 'exclude' => 0, 'label' => 'test', 'config' => array ( 'type' => 'select', 'foreign_table' => 'tx_stkitchen_category', 'foreign_table_where' => 'ORDER BY tx_stkitchen_category.uid', "itemsprocfunc" => "user_getgenreitems", 'size' => 5, 'minitems' => 0, 'maxitems' => 5, ) ), function user_getgenreitems(&$config, &$item) { $config['items'][2] = array('label0',201); return $config; Exemple de la fonction userfunc : Permet de créer un champ sur mesure "category" => Array ( "label" => "test", 'config' => Array ( 'type' => 'user', 'userfunc' => 'user_getgenreitems', ), ), function user_getgenreitems($pa, $fobj) { //reponse dans $PA['row']['category'] $content = '<select name="data[tx_stkitchen_recipe][3][category]"><option value="1">1</option><option value="2">2</option></select>'; return $content; IRRE
22 'test' => Array( 'exclude' => 1, 'label' => 'test', 'config' => Array( 'type' => 'inline', 'foreign_table' => 'fe_groups', 'maxitems' => 10, 'appearance' => Array( 'collapseall' => 1, 'expandsingle' => 1, ), ), ), Fichier : 'file' => array ( 'exclude' => 0, 'label' => 'LLL:EXT:bbb/locallang_db.xml:tx_bbb_bbb.file', 'config' => array ( 'type' => 'group', 'internal_type' => 'file', 'allowed' => 'gif,png,jpeg,jpg', 'max_size' => $GLOBALS['TYPO3_CONF_VARS']['BE']['maxFileSize'], 'uploadfolder' => 'uploads/tx_bbb', 'size' => 1, 'minitems' => 0, 'maxitems' => 1, ) ), Lien : 'link' => array ( 'exclude' => 0, 'label' => 'LLL:EXT:bbb/locallang_db.xml:tx_bbb_bbb.link', 'config' => array ( 'type' => 'input', 'size' => '15', 'max' => '255', 'checkbox' => '', 'eval' => 'trim', 'wizards' => array( '_PADDING' => 2, 'link' => array( 'type' => 'popup',
23 ), ) ) ) 'title' => 'Link', 'icon' => 'link_popup.gif', 'script' => 'browse_links.php?mode=wizard', 'JSopenParams' => 'height=300,width=500,status=0,menubar=0,scrollbars=1' Méthode utilisé pour récuper notre lien de la BD : $url = htmlspecialchars($link); $name = explode(' ', $url); $content = $this->cobj->gettypolink('titre du url', $url);
24 AJAX Coté serveur : Dans le fichier ext_localconf.php $TYPO3_CONF_VARS['BE']['AJAX']['tx_myext::ajaxID'] = 'filename:object->method'; exemple : $TYPO3_CONF_VARS['BE']['AJAX']['SC_alt_db_navframe::expandCollapse'] = 'typo3/ alt_db_navframe.php:sc_alt_db_navframe->ajaxexpandcollapse'; alt_db_navframe.php : public function ajaxexpandcollapse($params, &$ajaxobj) { $this->init(); // do the logic... if (empty($this->tree)) { $ajaxobj->seterror('an error occurred'); else { // the content is an array that can be set through $key / $value pairs as parameter $ajaxobj->addcontent('tree', 'The tree works...'); Coté client : $this->doc->loadjavascriptlib('contrib/prototype/prototype.js'); $this->doc->loadjavascriptlib('js/common.js'); new Ajax.Request('ajax.php', { method: 'get', parameters: 'ajaxid=sc_alt_db_navframe::expandcollapse', oncomplete: function(xhr, json) { // display results, should be "The tree works".bind(this), ont3error: function(xhr, json) { // display error message, will be "An error occurred" if an error occurred.bind(this) );
25 Versioning et workspace Documentation : 3/2/ view/3/7/ view/ (En allemand) Stage de la version : Editing : Le contenu peut être éditer librement. Reviewer : Le contenu doit être approuver avant d'être publier. Le contenu ne peut être modifier à moins d'avoir les droits de reviewer. Publish : Le contenu peut être publier. Le contenu ne peut être modifer tant et aussi longtemp que le contenu n'a pas été publié officiellement. Seul les membre ayant les droits d'éditer en mode live peuvent changer le contenu. Pour cela il faut avoir les droits sur le "Live workspace" Reject : Le contenu a été rejeter et peut être éditer à nouveau. Toute personne ayant les droit sur le workspace a le droit d'éditer un contenu et passer au mode reviewer. Type de versionning : Element : Versionning sur les enregistrements Page : Versionning sur les pages Branch : Versionning sur copy, deplacé des branches complète de page (page et sous page) Workspace avec templavoila Lorsqu'on crée un nouvel élément dans le workspace nous créons un élément vide qui aura comme label "INITIAL PLACEHOLDER" et un nouvel élément sera créé et aura dans le champ t3ver_oid le uid du premier élément créé. Lorsqu'on modifie un élément de contenu dans le workspace il y aura un nouvel élément de créer avec t3ver_label="auto-created for WS 1" aura dans le champ t3ver_oid le uid de l'élément en ligne. Lorsqu'on supprime un élément de contenu en fait c'est comme si on avait une nouvelle révision de la page car l'élément de contenu était entrer dans la table pages.
26 Champ dans la base de donnée : t3ver_oid : uid de la version originale t3ver_id : le nieme nombre associer a la page original (incrementiel) pid : -1 pour les versions hots ligne. t3ver_wsid : id du workspace t3ver_label : Description sur la version t3ver_stage : id du stage t3ver_state : 2 version supprimé, 1 nouvel élément, 3 élément déplacé, 4 are move-to pointer elements t3ver_count : Nombre de fois qu'un element a été en ligne t3ver_tstamp : date de publication de la version t3ver_move_id : Contient la source id de l'enregistrement qui doit être déplacé Stage statut : stage reject = -1 stage editing = 0 stage review = 1 stage publish = 10 Différence entre swap et publish : Dans les 2 cas nous allons publié la version en ligne. La différence fondamentale est que lorsqu'on utilise swap, la version hors ligne ira en ligne alors que la version live revient en mode hors-ligne alors que si l'on utilise publish alors la version hors ligne ira en ligne et la version en ligne ira dans les archives. Swap sera souvent utilisé pour un événement pontuel et que l'on veut plus tard revenir avec notre ancienne version. On refera un swap à nouveau. versionol Lorsqu'on selectionne un enregistrement basé sur le uid alors pour qu'on obtienne le bon resultat en mode preview il est important d'utiliser la fonction $GLOBALS['TSFE']->sys_page- >versionol('table',$row); versionol transformera le uid avec le bon uid en mode preview. Frontend : $GLOBALS['TSFE']->sys_page->versionOL($table,&$row, $unsetmovepointers=false) Backend : t3lib_befunc::workspaceol ($table, &$row) exemple :
27 $res = $GLOBALS['TYPO3_DB']->exec_SELECTquery('*','tt_content', "uid='80'",'','',''); $row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res); $GLOBALS['TSFE']->sys_page->versionOL('tt_content',$row,false); if (is_array($row)) { $content = "<br/>content header = {$row['header']"; uid en mode live : 80 uid en mode preview : est le uid en mode live mais en mode preview le uid devrait etre 82 pour notre exemple. versionol va transformer notre $row avec les bons paramètres. Notre tableau devra contenir les valeur suivant pour être fonctionnel : "uid", "pid" and "t3ver_state" fixversioningpid Lorsque nous sommes en mode preview et que l'on choisit un uid qui a comme pid -1 alors on utilise la fonction fixversioningpid pour obtenir le pid de la page correspondante. Frontend : $GLOBALS['TSFE']->sys_page->fixVersioningPid(table,$row); Backend : t3lib_befunc::fixversioningpid(table,$row);
Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework
Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework L'objectif de ce document est de poser des bases de réflexion sur la modélisation d'un projet réalisé
Plus en détailProcédures Stockées WAVESOFT... 12 ws_sp_getidtable... 12. Exemple :... 12. ws_sp_getnextsouche... 12. Exemple :... 12
Table des matières Les Triggers... 2 Syntaxe... 2 Explications... 2 Les évènements déclencheurs des triggers... 3 Les modes de comportements des triggers... 4 Les pseudo tables... 5 Exemple... 6 Les procédures
Plus en détailService d'authentification LDAP et SSO avec CAS
Service d'authentification LDAP et SSO avec CAS Clé de l'extension : ig_ldap_sso_auth 2006-2007, Michaël Gagnon, Ce document est publié sous la licence open source, disponible au
Plus en détailPHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS)
PHP et mysql php_mysql PHP et mysql Code: php_mysql Originaux url: http://tecfa.unige.ch/guides/tie/html/php-mysql/php-mysql.html url: http://tecfa.unige.ch/guides/tie/pdf/files/php-mysql.pdf Auteurs et
Plus en détailSYSTÈMES D INFORMATIONS
SYSTÈMES D INFORMATIONS Développement Modx Les systèmes de gestion de contenu Les Content Management Système (CMS) servent à simplifier le développement de sites web ainsi que la mise à jour des contenus.
Plus en détailSoon_AdvancedCache. Module Magento SOON. Rédacteur. Relecture & validation technique. Historique des révisions
Module Magento SOON Soon_AdvancedCache Rédacteur Hervé G. Lead développeur Magento herve@agence-soon.fr AGENCE SOON 81 avenue du Bac 94210 LA VARENNE ST HILAIRE Tel : +33 (0)1 48 83 95 96 Fax : +33 (0)1
Plus en détailBIRT (Business Intelligence and Reporting Tools)
BIRT (Business Intelligence and Reporting Tools) Introduction Cette publication a pour objectif de présenter l outil de reporting BIRT, dans le cadre de l unité de valeur «Data Warehouse et Outils Décisionnels»
Plus en détailSHERLOCK 7. Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5
SHERLOCK 7 Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5 Cette note montre comment intégrer un script Java dans une investigation Sherlock et les différents aspects de Java script. S T E M M E R I M A G I N
Plus en détailMysql. Les requêtes préparées Prepared statements
Mysql Les requêtes préparées Prepared statements Introduction Les prepared statements côté serveur sont une des nouvelles fonctionnalités les plus intéressantes de MySQL 4.1 (récemment sorti en production
Plus en détailTutoriel de formation SurveyMonkey
Tutoriel de formation SurveyMonkey SurveyMonkey est un service de sondage en ligne. SurveyMonkey vous permet de créer vos sondages rapidement et facilement. SurveyMonkey est disponible à l adresse suivante
Plus en détailModule Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP
Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP Au cours de ce TP, vous allez voir comment PHP permet aux utilisateurs, une interaction avec
Plus en détailINTRODUCTION A JAVA. Fichier en langage machine Exécutable
INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du
Plus en détailNuxeo 5.4 : les nouveautés
Atelier GED - 30 mars 2011, Paris Consortium ESUP-Portail Nuxeo.conf et templates Depuis la version 5.3.2, nouvelle façon de configurer Nuxeo à l'aide du fichier nuxeo.conf et des templates. Les templates
Plus en détailPaginer les données côté serveur, mettre en cache côté client
Paginer les données côté serveur, mettre en cache côté client Vous voulez sélectionner des lignes dans une table, mais celle-ci comporte trop de lignes pour qu il soit réaliste de les ramener en une seule
Plus en détailSurveillance de Scripts LUA et de réception d EVENT. avec LoriotPro Extended & Broadcast Edition
Surveillance de Scripts LUA et de réception d EVENT avec LoriotPro Extended & Broadcast Edition L objectif de ce document est de présenter une solution de surveillance de processus LUA au sein de la solution
Plus en détailDrupal Développeur. Theming et développement pour Drupal. Une formation T@hitiClic. Formateur : Fabien Crépin. Drupal Développeur.
Theming et développement pour Drupal Une formation Formateur : Fabien Crépin Introduction Objectif : savoir développer un module et un thème 4 demi-journées Ce qu'on verra en théorie et en pratique : Environnement
Plus en détailStockage du fichier dans une table mysql:
Stockage de fichiers dans des tables MYSQL avec PHP Rédacteur: Alain Messin CNRS UMS 2202 Admin06 30/06/2006 Le but de ce document est de donner les principes de manipulation de fichiers dans une table
Plus en détail1. Installation du Module
1 sur 10 Mise en place du Module Magento V 1.5.7 1. Installation du Module Vous pouvez installer le module de deux façons différentes, en passant par Magento Connect, ou directement via les fichiers de
Plus en détailLa programmation orientée objet Gestion de Connexions HTTP Manipulation de fichiers Transmission des données PHP/MySQL. Le langage PHP (2)
Le langage PHP (2) Walid Belkhir Université de Provence belkhir@cmi.univ-mrs.fr http://www.lif.univ-mrs.fr/ belkhir/ 1 / 54 1 La programmation orientée objet 2 Gestion de Connexions HTTP 3 Manipulation
Plus en détail27/11/12 Nature. SDK Python et Java pour le développement de services ACCORD Module(s)
Propriétés du Document Source du Document SDK_accords.odt Titre du Document SDK Python et Java pour le développement de services ACCORD Module(s) PyaccordsSDK, JaccordsSDK Responsable Prologue Auteur(s)
Plus en détailRecherche dans un tableau
Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6
Plus en détailLe stockage local de données en HTML5
Le stockage local HTML5, pourquoi faire? Dans une optique de réduction des couts de maintenance, de déploiement, beaucoup d'entreprises ont fait le choix de migrer leurs applicatifs (comptables, commerciales,
Plus en détail1. Qu'est-ce que SQL?... 2. 2. La maintenance des bases de données... 2. 3. Les manipulations des bases de données... 5
1. Qu'est-ce que SQL?... 2 2. La maintenance des bases de données... 2 2.1 La commande CREATE TABLE... 3 2.2 La commande ALTER TABLE... 4 2.3 La commande CREATE INDEX... 4 3. Les manipulations des bases
Plus en détaillundi 3 août 2009 Choose your language What is Document Connection for Mac? Communautés Numériques L informatique à la portée du Grand Public
Communautés Numériques L informatique à la portée du Grand Public Initiation et perfectionnement à l utilisation de la micro-informatique Microsoft Document Connection pour Mac. Microsoft Document Connection
Plus en détailPlan Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Transactions
Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Cours Internet et Outils: [1/12] Intro, Internet, Web, XHTML (2H) [2/12] XHTML(2H) [3/12]
Plus en détailSQL Server et Active Directory
SQL Server et Active Directory Comment requêter AD depuis SQL Server Comment exécuter des requêtes de sélection sur un Active Directory depuis SQL Server? L'utilisation du principe des serveurs liés adapté
Plus en détailLes Utilisateurs dans SharePoint
Les Utilisateurs dans SharePoint La gestion des utilisateurs dans SharePoint SharePoint dont le cœur est l'outil collaboratif, Windows SharePoint Services. Chaque utilisateur (ou collaborateur) peut créer
Plus en détailAlfstore workflow framework Spécification technique
Alfstore workflow framework Spécification technique Version 0.91 (2012-08-03) www.alfstore.com Email: info@alfstore.com Alfstore workflow framework 2012-10-28 1/28 Historique des versions Version Date
Plus en détail1. Introduction... 2. 2. Création d'une macro autonome... 2. 3. Exécuter la macro pas à pas... 5. 4. Modifier une macro... 5
1. Introduction... 2 2. Création d'une macro autonome... 2 3. Exécuter la macro pas à pas... 5 4. Modifier une macro... 5 5. Création d'une macro associée à un formulaire... 6 6. Exécuter des actions en
Plus en détailAWS avancé. Surveiller votre utilisation d EC2
10 AWS avancé Dans ce chapitre, nous bâtirons sur les bases que nous avons apprises jusqu ici. Nous étudierons des sujets plus avancés tels que la surveillance de votre utilisation d AWS, l utilisation
Plus en détailTutoriel TYPO3 pour les rédacteurs
Tutoriel TYPO3 pour les rédacteurs - typo3_tut_fr Tutoriel TYPO3 pour les rédacteurs Tutoriel TYPO3 pour les rédacteurs Clé de l'extension: typo3_tut_fr Langue: fr Mots-clés: foreditors, forbeginners,
Plus en détail.NET - Classe de Log
.NET - Classe de Log Classe permettant de Logger des données Text Dans tous les projets, il est indispensable de pouvoir stocker de l'information textuelle : Pour le suivi des erreurs Pour le suivi de
Plus en détailHow to Login to Career Page
How to Login to Career Page BASF Canada July 2013 To view this instruction manual in French, please scroll down to page 16 1 Job Postings How to Login/Create your Profile/Sign Up for Job Posting Notifications
Plus en détailINTRODUCTION AU CMS MODX
INTRODUCTION AU CMS MODX Introduction 1. Créer 2. Organiser 3. Personnaliser UNE PETITE INTRODUCTION QUEST-CE QU UN CMS? CMS est l acronyme de Content Management System. C est outil qui vous permet de
Plus en détailPratique et administration des systèmes
Université Louis Pasteur Licence Informatique (L2) UFR de Mathématiques et Informatique Année 2007/2008 1 But du TP Pratique et administration des systèmes TP10 : Technologie LAMP Le but de ce TP est de
Plus en détailTP JAVASCRIPT OMI4 TP5 SRC1 2011-2012
TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012 FORMULAIRE DE CONTACT POUR PORTFOLIO PRINCIPE GENERAL Nous souhaitons réaliser un formulaire de contact comprenant les champs suivants : NOM PRENOM ADRESSE MAIL MESSAGE
Plus en détail1. Introduction...2. 2. Création d'une requête...2
1. Introduction...2 2. Création d'une requête...2 3. Définition des critères de sélection...5 3.1 Opérateurs...5 3.2 Les Fonctions...6 3.3 Plusieurs critères portant sur des champs différents...7 3.4 Requête
Plus en détailApplication de lecture de carte SESAM-Vitale Jeebop
Application de lecture de carte SESAM-Vitale Jeebop Présentation Le module de lecture de carte SESAM-Vitale Jeebop est une application Java Web Start, c'est à dire une application Java qui se télécharge
Plus en détailTous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs.
Connexion à 4D Server depuis une page ASP Par Noreddine MARGOUM, Technicien Contrôle Qualité, 4D S.A. Note technique 4D-200403-08-FR Version 1 Date 1 Mars 2004 Résumé Le propos de cette note technique
Plus en détailFormulaire pour envoyer un mail
Formulaire pour envoyer un mail AVERTISSEMENT : Ce tuto est une compilation de plusieurs sources trouvées sur internet, dont les références sont données à la fin de cet article. Le but de ce tutoriel n'est
Plus en détailGestion Electronique de Document (ECM/GED)
Gestion Electronique de Document (ECM/GED) Analyse de l existant Découpage modulaire La gestion électronique de documents repose sur un ensemble de deux modules conjoints, au sein de la famille «ecm» :
Plus en détailTP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile
TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface
Plus en détailConfigurer la supervision pour une base MS SQL Server Viadéis Services
Configurer la supervision pour une base MS SQL Server Référence : 11588 Version N : 2.2 : Créé par : Téléphone : 0811 656 002 Sommaire 1. Création utilisateur MS SQL Server... 3 2. Configuration de l accès
Plus en détailEncryptions, compression et partitionnement des données
Encryptions, compression et partitionnement des données Version 1.0 Grégory CASANOVA 2 Compression, encryption et partitionnement des données Sommaire 1 Introduction... 3 2 Encryption transparente des
Plus en détailREMBO Version 2.0. Mathrice 2004 DESCRIPTION MISE EN OEUVRE CONCLUSION. laurent.renault@u-picardie.fr
REMBO Version 2.0 Mathrice 2004 DESCRIPTION MISE EN OEUVRE CONCLUSION Description Successeur de BPBatch 3 déclinaisons Rembo Auto Deploy (déploiement massif de clients) Rembo Auto Backup (restauration
Plus en détailPLUGINS Guide du Développeur STEPHANE FERRARI. P l u X m l 5.4
PLUGINS Guide du Développeur STEPHANE FERRARI P l u X m l 5.4 Table des matières Présentation de PluXml...5 Principales caractéristiques...5 Pré-requis...6 Procédure d'installation...6 Procédure de mise
Plus en détailOlivier Mondet http://unidentified-one.net
T-GSI Ch.4 Le Langage SQL LDD, LCD Cet exercice guidé reprend le plan suivis lors de l intervention de formation faite pour l académie de Versailles. L objectif principal visait en la présentation du langage
Plus en détailGuide d'installation et de configuration du module
sur Guide d'installation et de configuration du module Développement : ruy007 et Quadra Team Documentation : VR... 27 janvier 2010 1. Récupérer la extension key du module Le lien vers l'extension est :
Plus en détailDans la série LES TUTORIELS LIBRES présentés par le site FRAMASOFT. Premiers pas avec WinPT (cryptographie sous Win) EITIC
Dans la série LES TUTORIELS LIBRES présentés par le site FRAMASOFT Premiers pas avec WinPT (cryptographie sous Win) EITIC Logiciel : WinPT site : http://www.winpt.org/ Niveau : Débutant Auteur : EITIC
Plus en détailConnaître la version de SharePoint installée
Connaître la version de SharePoint installée Comment savoir la version de SharePoint en cours Dans le cadre de la maintenance de plusieurs fermes SharePoint, il est indispensable de connaître les versions
Plus en détailPhone Manager Soutien de l'application OCTOBER 2014 DOCUMENT RELEASE 4.1 SOUTIEN DE L'APPLICATION
Phone Manager Soutien de l'application OCTOBER 2014 DOCUMENT RELEASE 4.1 SOUTIEN DE L'APPLICATION Sage CRM NOTICE The information contained in this document is believed to be accurate in all respects but
Plus en détailMANUEL WORDPRESS. Objectif: Refonte d un site web sous Wordpress I PRE-REQUIS: 1 / Créer un backup (sauvegarde) du site:
MANUEL WORDPRESS Objectif: Refonte d un site web sous Wordpress I PRE-REQUIS: 1 / Créer un backup (sauvegarde) du site: A/ Traitement de la base de données: Pour cette étape, vous aurez besoin au préalable
Plus en détailModule pour la solution e-commerce Magento
Module pour la solution e-commerce Magento sommaire 1. Introduction... 3 1.1. Objet du document... 3 1.2. Liste des documents de référence... 3 1.3. Avertissement... 3 1.4. Contacts... 3 1.5. Historique
Plus en détailIntroduction à JDBC. Accès aux bases de données en Java
Introduction à JDBC Accès aux bases de données en Java Eric Cariou Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Introduction JDBC : Java Data Base Connectivity
Plus en détailServeur d'application Client HTML/JS. Apache Thrift Bootcamp
Serveur d'application Client HTML/JS Apache Thrift Bootcamp Pré-requis La liste ci-dessous de logiciels doit être installée et opérationnelle sur la machine des participants : Compilateur thrift http://thrift.apache.org/
Plus en détailNouveautés joomla 3 1/14
Nouveautés joomla 3 1/14 Table des matières 1 Responsive... 1 2 Bootstrap... 1 3 LESS CSS intégré... 1 4. JUI (pour les développeurs d'extensions)... 1 5. Le Mambo days vs le Génial UX... 2 6. 7 étapes
Plus en détailTDB-SSI LES EXTENSIONS
TDB-SSI LES EXTENSIONS U n i v e r s i t é d e l a M é d i t e r r a n é e F a c u l t é d e M é d e c i n e Projet TDB-SSI Documentation du Tableau de Bord de Sécurité des Systèmes d Information Marseille,
Plus en détailModule Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS
Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS 1. Introduction Nous allons aborder la notion de surcouche procédurale au sein des SGBDS relationnels tels que Oracle (PLSQL)
Plus en détailArchitecture Orientée Service, JSON et API REST
UPMC 3 février 2015 Précedemment, en LI328 Architecture générale du projet Programmation serveur Servlet/TOMCAT Aujourd hui Quelques mots sur les SOA API - REST Le format JSON API - REST et Servlet API
Plus en détailCréation de Sous-Formulaires
Création de Sous-Formulaires Révision 1.01 du 02/01/04 Réalisé avec : OOo 1.1.0 Plate-forme / Os : Toutes Distribué par le projet Fr.OpenOffice.org Table des Matières 1 But de ce how-to...3 2 Pré-requis...3
Plus en détailGroupe Eyrolles, 2003, ISBN : 2-212-11317-X
Groupe Eyrolles, 2003, ISBN : 2-212-11317-X 3 Création de pages dynamiques courantes Dans le chapitre précédent, nous avons installé et configuré tous les éléments indispensables à la mise en œuvre d une
Plus en détailIntroduction aux outils BI de SQL Server 2014. Tutoriel sur SQL Server Integration Services (SSIS)
MIT820: Entrepôts de données et intelligence artificielle Introduction aux outils BI de SQL Server 2014 Tutoriel sur SQL Server Integration Services (SSIS) Description générale Ce tutoriel a pour objectif
Plus en détailUtilisation de JAVA coté Application serveur couplé avec Oracle Forms Hafed Benteftifa www.degenio.com Novembre 2008
Introduction Utilisation de JAVA coté Application serveur couplé avec Oracle Forms Hafed Benteftifa www.degenio.com Novembre 2008 Forms 10g permet l utilisation du JAVA côté client et côté application
Plus en détailLangage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL
Cours PL/SQL Langage propre à Oracle basé sur ADA Offre une extension procédurale à SQL PL/SQL permet d utiliser un sous-ensemble du langage SQL des variables, des boucles, des alternatives, des gestions
Plus en détailSQL Parser XML Xquery : Approche de détection des injections SQL
SQL Parser XML Xquery : Approche de détection des injections SQL Ramahefy T.R. 1, Rakotomiraho S. 2, Rabeherimanana L. 3 Laboratoire de Recherche Systèmes Embarqués, Instrumentation et Modélisation des
Plus en détailPour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère
L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la
Plus en détailSécurité des applications web. Daniel Boteanu
I F8420: Éléments de Sécurité des applications web Daniel Boteanu Architecture des applications web Client légitime Internet HTTP 浀 HTML Server Web 2 Architecture des applications web Client légitime Internet
Plus en détailOnce the installation is complete, you can delete the temporary Zip files..
Sommaire Installation... 2 After the download... 2 From a CD... 2 Access codes... 2 DirectX Compatibility... 2 Using the program... 2 Structure... 4 Lier une structure à une autre... 4 Personnaliser une
Plus en détailCompte-rendu de projet de Système de gestion de base de données
Compte-rendu de projet de Système de gestion de base de données Création et utilisation d'un index de jointure LAMBERT VELLER Sylvain M1 STIC Université de Bourgogne 2010-2011 Reponsable : Mr Thierry Grison
Plus en détailInstructions pour mettre à jour un HFFv2 v1.x.yy v2.0.00
Instructions pour mettre à jour un HFFv2 v1.x.yy v2.0.00 HFFv2 1. OBJET L accroissement de la taille de code sur la version 2.0.00 a nécessité une évolution du mapping de la flash. La conséquence de ce
Plus en détailMicro-ordinateurs, informations, idées, trucs et astuces. Utiliser une caméra IP Trendnet IP-TV110. Auteur : François CHAUSSON
Micro-ordinateurs, informations, idées, trucs et astuces Utiliser une caméra IP Trendnet IP-TV110 Auteur : François CHAUSSON Date : 8 février 2012 Référence : utiliser une caméra IP Trendnet IP-TV110.doc
Plus en détailSupervision et infrastructure - Accès aux applications JAVA. Document FAQ. Page: 1 / 9 Dernière mise à jour: 15/04/12 16:14
Document FAQ Supervision et infrastructure - Accès aux EXP Page: 1 / 9 Table des matières Introduction... 3 Démarrage de la console JMX...4 I.Généralités... 4 II.WebLogic... 5 III.WebSphere... 6 IV.JBoss...
Plus en détailRapport de Mini-Projet en ArcGIS Engine
Rapport de Mini-Projet en ArcGIS Engine Réalisée par : Asmae BENMESSAOUD 3ème Année Cycle d Ingénieur Géoinformation Année Universitaire 2010- Sommaire 1 Introduction L analyse géographique et la visualisation
Plus en détailChapitre 5 : Les procédures stockées PL/SQL
I. Introduction Une procédure ou une fonction stockée est un bloc PL/SQL nommé pouvant accepter des paramètres et être appelée. Généralement, on utilise une fonction pour calculer une valeur. Les procédures
Plus en détailProjet de programmation (IK3) : TP n 1 Correction
Projet de programmation (IK3) : TP n 1 Correction Semaine du 20 septembre 2010 1 Entrées/sorties, types de bases et structures de contrôle Tests et types de bases Tests et types de bases (entiers) public
Plus en détailcedric.foll@(education.gouv.fr laposte.net) Ministère de l'éducation nationale Atelier sécurité Rabat RALL 2007
A t t a q u e s c o n t r e l e s a p p l i s w e b cedric.foll@(education.gouv.fr laposte.net) Ministère de l'éducation nationale Atelier sécurité Rabat RALL 2007 D e l ' u t i l i t é d e l ' a t t a
Plus en détailTable des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction
PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS Depuis SAS 9.2 TS2M3, SAS propose un nouveau langage de programmation permettant de créer et gérer des tables SAS : le DS2 («Data Step 2»). Ces nouveautés
Plus en détailGuide d'installation rapide TFM-560X YO.13
Guide d'installation rapide TFM-560X YO.13 Table of Contents Français 1 1. Avant de commencer 1 2. Procéder à l'installation 2 Troubleshooting 6 Version 06.08.2011 16. Select Install the software automatically
Plus en détailLes déclencheurs. Version 1.0. Grégory CASANOVA
Les déclencheurs Version 1.0 Grégory CASANOVA 2 Les déclencheurs [09/07/09] Sommaire 1 Introduction... 3 2 Pré-requis... 4 3 Les déclencheurs du DML... 5 3.1 Introduction... 5 3.2 Création d un déclencheur
Plus en détailVTP. LAN Switching and Wireless Chapitre 4
VTP LAN Switching and Wireless Chapitre 4 ITE I Chapter 6 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 1 Pourquoi VTP? Le défi de la gestion VLAN La complexité de gestion des VLANs et des
Plus en détailEdition de sites Jahia 6.6
Sommaire Edition de sites Jahia 6.6 documentation temporaire en attendant la finalisation de la documentation en ligne Ligne graphique Débuter l'édition Interface utilisateur Astuces de publication Boîte
Plus en détailDOM - Document Object Model
DOM - Document Object Model 1 But de DOM Interfacer les langages de programmation avec les documents XML en les associant avec un modèle orienté objet DOM permet aux programmes et scripts : d'accéder et
Plus en détailEyes Of Network 4.0. Documentation d installation et de configuration
Eyes Of Network 4.0 Documentation d installation et de configuration Document crée par Sallaud Jérémy Le 19/02/2014 Sommaire Système Informations... 4 Synthèse des logiciels intégrés... 4 Configuration
Plus en détailWDpStats Procédure d installation
WDpStats Procédure d installation Table de matières WDpStats... 1 Procédure d installation... 1 Table de matières... 1 Résumé... 2 Réquisits... 2 Installation... 2 Difficultés... 6 Lancement... 7 wdpstats_install_oracle_fr.xml
Plus en détailRappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme
Rappel Ralf Treinen Université Paris Diderot UFR Informatique Laboratoire Preuves, Programmes et Systèmes treinen@pps.univ-paris-diderot.fr 6 mai 2015 Jusqu'à maintenant : un petit langage de programmation
Plus en détailHébergement de site web Damien Nouvel
Hébergement de site web Plan L'hébergeur Le serveur web Apache Sites dynamiques 2 / 27 Plan L'hébergeur Le serveur web Apache Sites dynamiques 3 / 27 L'hébergeur L'hébergeur sous-traite l'architecture
Plus en détailECLIPSE ET PDT (Php development tools)
ECLIPSE ET PDT (Php development tools) Eclipse Eclipse est un IDE (Integrated Development Environment)).C estun projet de la Fondation Eclipse visant à développer tout un environnement de développement
Plus en détailVTigerCRM. CRM : Logiciel de gestion des activités commerciales d'une (petite) entreprise
CRM : Logiciel de gestion des activités commerciales d'une (petite) entreprise Possibilités : Gestion des rendez-vous/appels Gestion des e-mails Gestion des stocks Gestion des ventes Enregistrement des
Plus en détailCREATION d UN SITE WEB (INTRODUCTION)
CREATION d UN SITE WEB (INTRODUCTION) Environnement : World Wide Web : ordinateurs interconnectés pour l échange d informations ( de données) Langages : HTML (HyperText Markup Language) : langages pour
Plus en détailInstallation locale de JOOMLA SEPIA
FOAD TICE Installation locale de JOOMLA SEPIA Académie de Reims FRANÇOIS PALLUT Paternité - Pas d'utilisation Commerciale - Partage des Conditions Initiales à l'identique : http://creativecommons.org/licenses/by-nc-sa/2.0/fr/
Plus en détailCREATION WEB DYNAMIQUE
CREATION WEB DYNAMIQUE IV ) MySQL IV-1 ) Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requêtes vers les bases de données relationnelles. Le serveur de
Plus en détailKPI (Key Performance Indicator) dans MOSS
KPI (Key Performance Indicator) dans MOSS Introduction Un KPI (Key Performance Indicator), Indicateur de Performance ou Indicateur Clé est un concept permettant de présenter à un utilisateur une information
Plus en détail8 Mars 2011. Guide du Wiki Confluence
Guide du Wiki Confluence 8 Mars 2011 Guide du Wiki Confluence Guide de Confluence Wiki Table des matières 1. Welcome... Error! Bookmark not defined. 2. Frequently Asked Questions (FAQ)... 1 2.1 What is
Plus en détailPHP 5. La base de données MySql. A. Belaïd 1
PHP 5 La base de données MySql A. Belaïd 1 Base de données C est quoi une base de données? Une base de données contient une ou plusieurs tables, chaque table ayant un ou plusieurs enregistrements Exemple
Plus en détailGuide utilisateur : Directmail et newsletter
Guide utilisateur : Directmail et newsletter Copyright 2004, OneXt Content System, 29/03/2005 Tables des Matières Directmail et newsletter...1 Fonctionnement général...1 Modules et pages...1
Plus en détailExercices sur SQL server 2000
Exercices sur SQL server 2000 La diagramme de classe : Exercices sur SQL server 2000 Le modèle relationnel correspondant : 1 Créer les tables Clic-droit on Tables et choisir «New Table» Créer la table
Plus en détailOcs Inventory et GLPI s appuie sur un serveur LAMP. Je vais donc commencer par installer les paquets nécessaires.
Installation & Configuration GPLPI / OCS Inventory NG Installer sur Debian 5 Lenny, Liaison Active Directory, Mise en place du couple OCS/GLPI Par : POMENTE Guillaume OCS Inventory et GLPI sont deux outils
Plus en détailORACLE 10G DISTRIBUTION ET REPLICATION. Distribution de données avec Oracle. G. Mopolo-Moké prof. Associé UNSA 2009/ 2010
ORACLE 10G DISTRIBUTION ET REPLICATION Distribution de données avec Oracle G. Mopolo-Moké prof. Associé UNSA 2009/ 2010 1 Plan 12. Distribution de données 12.1 Génération des architectures C/S et Oracle
Plus en détailéquipement radio Procédure
07/03/2014 GLPI / Inventaire équipement radio Procédure Anthony MANDRON SDIS 21 Table des matières Procédure d installation de GLPI sur une Debian Wheezy :... 2 Mise en place du plugin «Generic Object
Plus en détail