本文整理汇总了PHP中table_objet函数的典型用法代码示例。如果您正苦于以下问题:PHP table_objet函数的具体用法?PHP table_objet怎么用?PHP table_objet使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了table_objet函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: type_urls_URL_objet_exec
function type_urls_URL_objet_exec() {
global $type_urls;
$type = _request('type_objet');
$trouver_table = charger_fonction('trouver_table', 'base');
$desc = $trouver_table(table_objet($type));
$table = $desc['table'];
$champ_titre = $desc['titre']?$desc['titre']:'titre';
$col_id = @$desc['key']["PRIMARY KEY"];
if (!$col_id) return false; // Quand $type ne reference pas une table
$id_objet = intval(_request('id_objet'));
// chercher dans la table des URLS
include_spip('base/abstract_sql');
// Recuperer une URL propre correspondant a l'objet.
$row = sql_fetsel("U.url, O.$champ_titre", "$table AS O LEFT JOIN spip_urls AS U ON (U.type='$type' AND U.id_objet=O.$col_id)", "O.$col_id=$id_objet", '', 'U.date DESC', 1);
if (!$row) return false; # Quand $id_objet n'est pas un numero connu
// Calcul de l'URL complete
$url = str_replace('.././','../',generer_url_entite($id_objet, $type, '', '', true));
$row2 = !strlen($url2 = $row['url'])
// si l'URL n'etait pas presente en base, maintenant elle l'est !
?sql_fetsel("url", "spip_urls", "id_objet=$id_objet AND type='$type'", '', 'date DESC', 1)
:array('url'=>$url2);
include_spip('inc/charsets');
// titre || url complete || type d'URLs || URL recalculee || url propre en base
echo charset2unicode($row['titre']).'||'.$url.'||'.$type_urls.'||'.$row2['url'].'||'.$url2;
}
示例2: cextras_objets_valides
function cextras_objets_valides(){
$objets = array();
$objets_extensibles = pipeline("objets_extensibles", array(
'article' => _T('cextras:table_article'),
'auteur' => _T('cextras:table_auteur'),
'breve' => _T('cextras:table_breve'),
'groupes_mot' => _T('cextras:table_groupes_mot'),
'mot' => _T('cextras:table_mot'),
'rubrique' => _T('cextras:table_rubrique'),
'site' => _T('cextras:table_site')
));
ksort($objets_extensibles);
foreach ($objets_extensibles as $objet => $traduction) {
$objets[$objet] = array(
'table' => table_objet_sql($objet),
'type' => objet_type(table_objet($objet)),
'nom' => $traduction,
);
}
return $objets;
}
示例3: formulaires_forum_prive_charger_dist
function formulaires_forum_prive_charger_dist($objet, $id_objet, $id_forum, $afficher_previsu, $statut, $retour = '')
{
if (!function_exists($f = 'forum_recuperer_titre')) {
$f = 'forum_recuperer_titre_dist';
}
// si objet, il faut un titre, sinon on est dans un statut privrac/privadm qui permet un forum sans objet
if ($objet and $id_objet and !($titre = $f($objet, $id_objet, $id_forum, false))) {
return false;
}
$primary = id_table_objet($objet);
$table = table_objet($objet);
// Tableau des valeurs servant au calcul d'une signature de securite.
// Elles seront placees en Input Hidden pour que inc/forum_insert
// recalcule la meme chose et verifie l'identite des resultats.
// Donc ne pas changer la valeur de ce tableau entre le calcul de
// la signature et la fabrication des Hidden
// Faire attention aussi a 0 != ''
$ids = array();
$ids[$primary] = ($x = intval($id_objet)) ? $x : '';
$ids['id_objet'] = ($x = intval($id_objet)) ? $x : '';
$ids['objet'] = $objet;
$ids['id_forum'] = ($x = intval($id_forum)) ? $x : '';
// ne pas mettre '', sinon le squelette n'affichera rien.
$previsu = ' ';
// pour les hidden
$script_hidden = "";
foreach ($ids as $id => $v) {
$script_hidden .= "<input type='hidden' name='{$id}' value='{$v}' />";
}
$config = array();
foreach (array('afficher_barre', 'forum_titre', 'forums_texte', 'forums_urlref') as $k) {
$config[$k] = ' ';
}
return array('nom_site' => '', 'table' => $table, 'texte' => '', 'config' => $config, 'titre' => $titre, '_hidden' => $script_hidden, 'url_site' => "http://", 'id_forum' => $id_forum, '_sign' => implode('_', $ids), '_autosave_id' => $ids);
}
示例4: supprimer_lien_document
/**
* Supprimer un lien entre un document et un objet
*
* @param int $id_document
* @param string $objet
* @param int $id_objet
* @param bool $supprime
* si true, le document est supprime si plus lie a aucun objet
* @param bool $check
* si true, on verifie les documents references dans le texte de l'objet
* et on les associe si pas deja fait
* @return bool
*/
function supprimer_lien_document($id_document, $objet, $id_objet, $supprime = false, $check = false)
{
if (!($id_document = intval($id_document))) {
return false;
}
// D'abord on ne supprime pas, on dissocie
include_spip('action/editer_liens');
objet_dissocier(array('document' => $id_document), array($objet => $id_objet));
// Si c'est une vignette, l'eliminer du document auquel elle appartient
// cas tordu peu probable
sql_updateq("spip_documents", array('id_vignette' => 0), "id_vignette=" . $id_document);
// verifier son statut apres une suppression de lien
include_spip('action/editer_document');
document_instituer($id_document);
pipeline('post_edition', array('args' => array('operation' => 'delier_document', 'action' => 'delier_document', 'table' => 'spip_documents', 'id_objet' => $id_document, 'objet' => $objet, 'id' => $id_objet), 'data' => null));
if ($check) {
// si demande, on verifie que ses documents vus sont bien lies !
$spip_table_objet = table_objet_sql($objet);
$table_objet = table_objet($objet);
$id_table_objet = id_table_objet($objet, $serveur);
$champs = sql_fetsel('*', $spip_table_objet, addslashes($id_table_objet) . "=" . intval($id_objet));
$marquer_doublons_doc = charger_fonction('marquer_doublons_doc', 'inc');
$marquer_doublons_doc($champs, $id_objet, $objet, $id_table_objet, $table_objet, $spip_table_objet, '', $serveur);
}
// On supprime ensuite s'il est orphelin
// et si demande
// ici on ne bloque pas la suppression d'un document rattache a un autre
if ($supprime and !sql_countsel('spip_documents_liens', "objet!='document' AND id_document=" . $id_document)) {
$supprimer_document = charger_fonction('supprimer_document', 'action');
return $supprimer_document($id_document);
}
}
示例5: action_dereferencer_traduction_rubrique_dist
function action_dereferencer_traduction_rubrique_dist() {
$securiser_action = charger_fonction('securiser_action', 'inc');
$arg = $securiser_action();
list($type, $id_objet) = explode('/', $arg);
if (!$type = objet_type($type) or !$id_objet = intval($id_objet)) {
if (!_AJAX) {
include_spip('inc/minipres');
minipres('Arguments incompris');
}
else {
spip_log('Arguments incompris dans action dereferencer_traduction_rubrique');
return false;
}
}
$objet = table_objet($type);
$_id_objet = id_table_objet($objet);
$table = table_objet_sql($objet);
$id_trad_old = sql_getfetsel('id_trad', $table, "$_id_objet = " . sql_quote($id_objet));
if ($id_trad_old) {
include_spip('inc/modifier');
modifier_contenu($objet, $id_objet, array('invalideur' => "id='$objet/$id_objet'"), array('id_trad' => 0));
// si la deliaison fait qu'il ne reste plus que la source
// dans le groupe de traduction on lui remet l'id_trad a 0
if (1 == $nb_dans_groupe = sql_countsel($table, array('id_trad = ' . sql_quote($id_trad_old)))) {
modifier_contenu($objet, $id_trad_old, array('invalideur' => "id='$objet/$id_trad_old'"), array('id_trad' => 0));
}
}
}
示例6: filtre_role_dist
/**
* Retrouve la traduction d'un rôle dans un objet donné
*
* @param string $role
* Le role dans la base de donnée
* @param string $objet
* L'objet sur lequel est le rôle
* @return string
* Le texte du rôle dans la langue en cours
*
**/
function filtre_role_dist($role, $objet) {
if (!$role) return '';
if (!$objet) return $role;
$roles = roles_presents(table_objet(objet_type($objet)));
if (isset($roles['titres'][$role])) {
return _T($roles['titres'][$role]);
}
return $role;
}
示例7: petitions_afficher_config_objet
/**
* Boite de configuration des objets articles
*
* @param array $flux
* @return array
*/
function petitions_afficher_config_objet($flux)
{
if (($type = $flux['args']['type']) == 'article' and $id = $flux['args']['id']) {
if (autoriser('modererpetition', $type, $id)) {
$table = table_objet($type);
$id_table_objet = id_table_objet($type);
$flux['data'] .= recuperer_fond("prive/configurer/petitionner", array($id_table_objet => $id));
}
}
return $flux;
}
示例8: inc_documenter_objet_dist
/**
* Retourne le code HTML du portfolio, liste des documents et formulaire d'ajout de documents
*
* @note
* Marque les documents vus dans les textes de l'objet avant le calcul !
*
* @uses inc_marquer_doublons_doc_dist()
*
* @param int $id Identifiant de l'objet
* @param string $type Type d'objet
* @return string code HTML
**/
function inc_documenter_objet_dist($id, $type)
{
$serveur = '';
// avant de documenter un objet, on verifie que ses documents vus sont bien lies !
$spip_table_objet = table_objet_sql($type);
$table_objet = table_objet($type);
$id_table_objet = id_table_objet($type, $serveur);
$champs = sql_fetsel('*', $spip_table_objet, addslashes($id_table_objet) . "=" . intval($id));
$marquer_doublons_doc = charger_fonction('marquer_doublons_doc', 'inc');
$marquer_doublons_doc($champs, $id, $type, $id_table_objet, $table_objet, $spip_table_objet, '', $serveur);
$contexte = array('objet' => $type, 'id_objet' => $id);
return recuperer_fond('prive/objets/contenu/portfolio_document', array_merge($_GET, $contexte));
}
示例9: definir
function definir($params=array()) {
foreach ($params as $cle=>$valeur) {
if (isset($this->$cle)) {
$this->$cle = $valeur;
}
}
// calculer _objet et _table_sql
$this->_type = objet_type(table_objet($this->table)); // article
$this->_objet = table_objet($this->_type); // articles
$this->_table_sql = table_objet_sql($this->table); // spip_articles
// calculer l'id du champ extra
$this->make_id();
}
示例10: formulaires_traduire_charger_dist
/**
* Charger les données de #FORMULAIRE_TRADUIRE
*
* @param string $objet
* Type d'objet
* @param int $id_objet
* Identifiant de l'objet
* @param string $retour
* URL de retour
* @param bool $traduire
* Permet de désactiver la gestion de traduction sur un objet ayant id_trad
* @return array|bool
* False si l'identifiant n'est pas numérique ou si l'objet n'a pas de langue
* Contexte à transmettre au squelette du formulaire sinon
*/
function formulaires_traduire_charger_dist($objet, $id_objet, $retour = '', $traduire = true)
{
if (!intval($id_objet)) {
return false;
}
$valeurs = formulaires_editer_objet_charger($objet, $id_objet, null, 0, $retour, '');
// verifier que l'objet indique possede bien des champs id_trad et lang
// attention, charger renomme lang => langue pour ne pas perturber la langue d'affichage du squelette
if (!isset($valeurs['langue'])) {
return false;
}
$valeurs['editable'] = autoriser('changerlangue', $objet, $id_objet);
$valeurs['_langue'] = '';
$langue_parent = '';
$id_parent = '';
if (isset($valeurs['id_rubrique'])) {
$id_parent = $valeurs['id_rubrique'];
}
if (isset($valeurs['id_parent'])) {
$id_parent = $valeurs['id_parent'];
}
if ($id_parent) {
$langue_parent = sql_getfetsel("lang", "spip_rubriques", "id_rubrique=" . intval($id_parent));
}
if (!$langue_parent) {
$langue_parent = $GLOBALS['meta']['langue_site'];
}
if ($valeurs['editable'] and in_array(table_objet_sql($objet), explode(',', $GLOBALS['meta']['multi_objets']))) {
$valeurs['_langue'] = $valeurs['langue'];
}
$valeurs['langue_parent'] = $langue_parent;
$valeurs['_objet'] = $objet;
$valeurs['_id_objet'] = $id_objet;
$valeurs['changer_lang'] = '';
$valeurs['_traduisible'] = autoriser('changertraduction', $objet, $id_objet);
$valeurs['_traduire'] = '';
if (isset($valeurs['id_trad']) and $valeurs['_traduisible']) {
$valeurs['_traduire'] = $traduire ? ' ' : '';
$valeurs['_vue_traductions'] = "prive/objets/liste/" . (trouver_fond($f = table_objet($objet) . "-trad", "prive/objets/liste") ? $f : "objets-trad");
// pour afficher la liste des trad sur la base de l'id_trad en base
// independamment d'une saisie en cours sur id_trad
$valeurs['_lister_id_trad'] = $valeurs['id_trad'];
$valeurs['_id_parent'] = $id_parent;
}
$valeurs['_saisie_en_cours'] = (!_request('annuler') and (_request('changer_lang') !== null or _request('changer_id_trad') !== null));
$valeurs['_pipeline'] = array('traduire', array('type' => $objet, 'id' => $id_objet));
return $valeurs;
}
示例11: inc_editer_mots_dist
function inc_editer_mots_dist($objet, $id_objet, $cherche_mot, $select_groupe, $flag, $visible = false, $url_base='') {
if ($GLOBALS['meta']["articles_mots"] == 'non') return '';
if (!preg_match('/^[0-9, ]*$/', $select_groupe)) return '';
$trouver_table = charger_fonction('trouver_table', 'base');
$nom = table_objet($objet);
$desc = $trouver_table($nom);
$table_id = @$desc['key']["PRIMARY KEY"];
$reponse = ($flag AND $cherche_mot)
? chercher_inserer_mot($cherche_mot, $select_groupe, $objet, $id_objet, $nom, $table_id, $url_base)
: '';
list($liste, $mots) = afficher_mots_cles($flag, $objet, $id_objet, $nom, $table_id, $url_base);
$aff =false;
$bouton = _T('titre_mots_cles').aide ("artmots");
if ($liste)
$aff = true;
if ($flag) { // si droit de modif donner le formulaire
$visible = ($visible OR $cherche_mot OR ($flag === 'ajax'));
list($visible, $res) = formulaire_mots_cles($id_objet, $mots, $nom, $table_id, $url_base, $visible, $objet);
if ($res) {
$liste .= debut_block_depliable($visible,"lesmots")
. $res
. creer_mot($nom, $id_objet, $table_id, $url_base, $cherche_mot, $select_groupe)
. fin_block();
$bouton = bouton_block_depliable($bouton, $visible,"lesmots");
$aff = true;
}
}
if (!$aff)
return '';
$res = debut_cadre_enfonce("mot-cle-24.gif", true, "", $bouton)
. $reponse
. $liste
. fin_cadre_enfonce(true);
return ajax_action_greffe("editer_mots", $id_objet, $res);
}
示例12: nettoyer_url_page
function nettoyer_url_page($url, $contexte=array())
{
$url_objets = urls_liste_objets();
$raccourci_url_page_html = ',^(?:[^?]*/)?('. $url_objets . ')([0-9]+)(?:\.html)?([?&].*)?$,';
$raccourci_url_page_id = ',^(?:[^?]*/)?('. $url_objets .')\.php3?[?]id_\1=([0-9]+)([?&].*)?$,';
$raccourci_url_page_spip = ',^(?:[^?]*/)?(?:spip[.]php)?[?]('. $url_objets .')([0-9]+)(&.*)?$,';
if (preg_match($raccourci_url_page_html, $url, $regs)
OR preg_match($raccourci_url_page_id, $url, $regs)
OR preg_match($raccourci_url_page_spip, $url, $regs)) {
$type = preg_replace(',s$,', '', table_objet($regs[1]));
if ($type == 'syndic') $type = 'site';
$_id = id_table_objet($regs[1]);
$contexte[$_id] = $regs[2];
$suite = $regs[3];
return array($contexte, $type, null, $type, $suite);
}
return array();
}
示例13: exec_iconifier_args
function exec_iconifier_args($id, $primary, $script, $iframe=false)
{
$type = objet_type(table_objet(substr($primary, 3)));
if (!preg_match('/^\w+$/', "$primary$script")
OR !autoriser('iconifier', $type, $id)) {
include_spip('inc/minipres');
echo minipres();
} else {
$iconifier = charger_fonction('iconifier', 'inc');
$ret = $iconifier($primary, $id, $script, $visible=true);
if ($iframe!=='iframe')
ajax_retour($ret);
else {
echo "<div class='upload_answer upload_document_added'>$ret</div>";
}
}
}?>
示例14: ajouter_traitement_automatique
/**
* Ajouter un traitement automatique sur une balise
*
* On peut restreindre l'application du traitement au balises appelées dans un
* type de boucle via le paramètre optionnel $table.
*
* @param array $interfaces
* Les interfaces du pipeline declarer_tables_interfaces
* @param string $traitement
* Un format comme pour sprintf, dans lequel le compilateur passera la valeur de la balise
* @param string $balise
* Le nom de la balise à laquelle on veut appliquer le traitement
* @param string $table (optionnel)
* Un type de boucle auquel on veut restreindre le traitement.
*/
function ajouter_traitement_automatique($interfaces, $traitement, $balise, $table = 0)
{
$table_traitements = $interfaces['table_des_traitements'];
if (!isset($table_traitements[$balise])) {
$table_traitements[$balise] = array();
}
/* On essaie d'être tolérant sur le nom de la table */
if ($table) {
include_spip('base/objets');
$table = table_objet($table);
}
if (isset($table_traitements[$balise][$table])) {
$traitement_existant = $table_traitements[$balise][$table];
}
if (!isset($traitement_existant) or !$traitement_existant) {
$traitement_existant = '%s';
}
$interfaces['table_des_traitements'][$balise][$table] = sprintf($traitement, $traitement_existant);
return $interfaces;
}
示例15: action_plan_dist
function action_plan_dist()
{
include_spip('inc/autoriser');
if (!autoriser('ecrire')) {
return false;
}
include_spip('base/objets');
include_spip('inc/utils');
$objet = table_objet(_request('objet'));
$env = array('id_rubrique' => intval(_request('id_rubrique')), 'lister' => $objet == 'rubriques' ? 'rubrique' : 'tout', 'conteneur' => 'non');
if ($statut = _request('statut')) {
$env['statut'] = $statut;
}
$fond = "prive/squelettes/inclure/plan-{$objet}";
header("Content-Type: text/html; charset=" . $GLOBALS['meta']['charset']);
if (trouver_fond($fond)) {
echo recuperer_fond($fond, $env);
} else {
echo "";
}
}