本文整理汇总了PHP中ecrire_meta函数的典型用法代码示例。如果您正苦于以下问题:PHP ecrire_meta函数的具体用法?PHP ecrire_meta怎么用?PHP ecrire_meta使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了ecrire_meta函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: formulaires_editer_champs_extras_traiter_dist
function formulaires_editer_champs_extras_traiter_dist($objet, $redirect = '')
{
$retour = array('redirect' => $redirect);
$table = table_objet_sql($objet);
include_spip('inc/iextras');
$saisies = iextras_champs_extras_definis($table);
$nouvelles_saisies = session_get('constructeur_formulaire_champs_extras_' . $table);
$diff = saisies_comparer_par_identifiant($saisies, $nouvelles_saisies);
$extras = array();
include_spip('inc/cextras');
// supprimer les champs supprimes
champs_extras_supprimer($table, $diff['supprimees']);
// ajouter les nouveaux champs;
champs_extras_creer($table, $diff['ajoutees']);
// modifier les champs modifies;
if ($diff['modifiees']) {
$anciennes = saisies_lister_par_identifiant($saisies);
$anciennes = array_intersect_key($anciennes, $diff['modifiees']);
champs_extras_modifier($table, $diff['modifiees'], $anciennes);
}
# champs_extras_modifier($table, # modifiees nouvelles, # modifiees anciennes);
ecrire_meta("champs_extras_" . $table, serialize($nouvelles_saisies));
$retour['message_ok'] = 'Super !';
return $retour;
}
示例2: facteur_vieil_upgrade
function facteur_vieil_upgrade(){
// migration depuis tres ancienne version, a la main
if (isset($GLOBALS['meta']['spip_notifications_version'])) {
ecrire_meta('facteur_smtp', $GLOBALS['meta']['spip_notifications_smtp']);
ecrire_meta('facteur_smtp_auth', $GLOBALS['meta']['spip_notifications_smtp_auth']);
ecrire_meta('facteur_smtp_secure', $GLOBALS['meta']['spip_notifications_smtp_secure']);
ecrire_meta('facteur_smtp_sender', $GLOBALS['meta']['spip_notifications_smtp_sender']);
ecrire_meta('facteur_filtre_images', $GLOBALS['meta']['spip_notifications_filtre_images']);
ecrire_meta('facteur_filtre_css', $GLOBALS['meta']['spip_notifications_filtre_css']);
ecrire_meta('facteur_filtre_iso_8859', $GLOBALS['meta']['spip_notifications_filtre_iso_8859']);
ecrire_meta('facteur_adresse_envoi', $GLOBALS['meta']['spip_notifications_adresse_envoi']);
ecrire_meta('facteur_adresse_envoi_nom', $GLOBALS['meta']['spip_notifications_adresse_envoi_nom']);
ecrire_meta('facteur_adresse_envoi_email', $GLOBALS['meta']['spip_notifications_adresse_envoi_email']);
// supprimer l'ancien nommage
effacer_meta('spip_notifications_smtp');
effacer_meta('spip_notifications_smtp_auth');
effacer_meta('spip_notifications_smtp_secure');
effacer_meta('spip_notifications_smtp_sender');
effacer_meta('spip_notifications_filtre_images');
effacer_meta('spip_notifications_filtre_css');
effacer_meta('spip_notifications_filtre_iso_8859');
effacer_meta('spip_notifications_adresse_envoi');
effacer_meta('spip_notifications_adresse_envoi_nom');
effacer_meta('spip_notifications_adresse_envoi_email');
effacer_meta('spip_notifications_version');
// KEZAKO ?
include_spip('base/abstract_sql');
sql_drop_table('spip_notifications', true);
}
}
示例3: admin_verifie_session
function admin_verifie_session($script, $anonymous=false) {
include_spip('base/abstract_sql');
$pref = sprintf("_%d_",$GLOBALS['visiteur_session']['id_auteur']);
$signal = fichier_admin($script, "$script$pref");
$valeur = sql_getfetsel('valeur', 'spip_meta', "nom='admin'");
if ($valeur === NULL) {
ecrire_meta('admin', $signal, 'non');
} else {
if (!$anonymous AND ($valeur != $signal)) {
if (intval(substr($valeur, strpos($valeur,'_')+1))<>
$GLOBALS['visiteur_session']['id_auteur']) {
include_spip('inc/minipres');
spip_log("refus de lancer $script, priorite a $valeur");
return minipres(_T('info_travaux_texte'));
}
}
}
$journal = "spip";
if (autoriser('configurer')) // c'est une action webmestre, soit par ftp soit par statut webmestre
$journal = 'webmestre';
// on pourrait statuer automatiquement les webmestres a l'init d'une action auth par ftp ... ?
spip_log("admin $pref" . ($valeur ? " (reprise)" : ' (init)'),$journal);
return '';
}
示例4: galettonuts_upgrade
function galettonuts_upgrade()
{
$version_installee = isset($GLOBALS['meta']['galettonuts_version']) ? $GLOBALS['meta']['galettonuts_version'] : '0.0';
// La version installée est la dernière en date
if ($version_installee == galettonuts_version()) {
return;
} else {
if (version_compare($version_installee, '0.0', 'eq')) {
include_spip('base/galettonuts_tables');
include_spip('base/create');
include_spip('base/abstract_sql');
creer_base();
ecrire_meta('galettonuts_version', galettonuts_version());
ecrire_meta('galettonuts_config', serialize(array('adresse_db' => 'localhost', 'prefix_db' => 'galette_', 'db_ok' => false, 'activer_cron' => true, 'heures' => 0, 'minutes' => 30)));
ecrire_meta('galettonuts_synchro', serialize(array('frequence' => 600)));
ecrire_metas();
echo '<br />', debut_boite_info(true), '<strong>', _T('galettonuts:installation_succes'), '</strong>', '<p>', _T('galettonuts:texte_installation_succes'), '</p>', fin_boite_info(true);
return;
}
}
$version_comparaison = version_compare(galettonuts_version(), $version_installee);
// Mise à jour
if (-1 == $version_comparaison) {
// TODO: Gérer un Upgrade
ecrire_meta('galettonuts_version', galettonuts_version());
return;
} else {
if (1 == $version_comparaison) {
// TODO: Gérer un Downgrade
return;
}
}
}
示例5: formulaires_configurer_revisions_objets_traiter_dist
function formulaires_configurer_revisions_objets_traiter_dist()
{
include_spip('inc/meta');
$tables = serialize(_request('objets_versions'));
ecrire_meta('objets_versions', $tables);
return array('message_ok' => _T('config_info_enregistree'));
}
示例6: fraap_candidatures_upgrade
function fraap_candidatures_upgrade($nom_meta_base_version, $version_cible)
{
$current_version = "0.0";
if (isset($GLOBALS['meta'][$nom_meta_base_version])) {
$current_version = $GLOBALS['meta'][$nom_meta_base_version];
}
if ($current_version == "0.0") {
creer_base();
maj_tables('spip_auteurs');
ecrire_meta($nom_meta_base_version, $current_version = $version_cible);
}
// ajout d'un statut publie par defaut
/* if (version_compare($current_version, '0.3', '<')) {
include_spip('base/abstract_sql');
sql_alter("TABLE spip_candidatures CHANGE statut statut VARCHAR(10) DEFAULT 'publie' NOT NULL");
ecrire_meta($nom_meta_base_version,$current_version="0.3");
}
// ajout du statut publié pour les enregistrements déjà présents
if (version_compare($current_version, '0.33', '<')) {
include_spip('base/abstract_sql');
$res = sql_select("statut", "spip_candidatures");
while ($row = sql_fetch($res)){
if(isset($row['statut'])) {
if (!sql_updateq("spip_candidatures",array('statut'=>'publie'))) spip_log('mise à jour colonne statut rencontre un probleme','journal');
}
}
ecrire_meta($nom_meta_base_version,$current_version="0.33");
}
*/
}
示例7: genie_popularites_dist
/**
* Cron de calcul des popularités des articles
*
* @uses genie_popularite_constantes()
*
* @param int $t
* Timestamp de la dernière exécution de cette tâche
* @return int
* Positif si la tâche a été terminée, négatif pour réexécuter cette tâche
**/
function genie_popularites_dist($t)
{
// Si c'est le premier appel, ne pas calculer
$t = $GLOBALS['meta']['date_popularites'];
ecrire_meta('date_popularites', time());
if (!$t) {
return 1;
}
$duree = time() - $t;
list($a, $b) = genie_popularite_constantes($duree);
// du passe, faisons table (SQL) rase
sql_update('spip_articles', array('maj' => 'maj', 'popularite' => "popularite * {$a}"), 'popularite>1');
// enregistrer les metas...
$row = sql_fetsel('MAX(popularite) AS max, SUM(popularite) AS tot', "spip_articles");
ecrire_meta("popularite_max", $row['max']);
ecrire_meta("popularite_total", $row['tot']);
// Une fois par jour purger les referers du jour ; qui deviennent
// donc ceux de la veille ; au passage on stocke une date_statistiques
// dans spip_meta - cela permet au code d'etre "reentrant", ie ce cron
// peut etre appele par deux bases SPIP ne partageant pas le meme
// _DIR_TMP, sans tout casser...
$aujourdhui = date("Y-m-d");
if (($d = $GLOBALS['meta']['date_statistiques']) != $aujourdhui) {
spip_log("Popularite: purger referer depuis {$d}");
ecrire_meta('date_statistiques', $aujourdhui);
if (strncmp($GLOBALS['connexions'][0]['type'], 'sqlite', 6) == 0) {
spip_query("UPDATE spip_referers SET visites_veille=visites_jour, visites_jour=0");
} else {
sql_alter("TABLE spip_referers DROP visites_veille,\n\t\t\tCHANGE visites_jour visites_veille INT(10) UNSIGNED NOT NULL DEFAULT '0',\n\t\t\tADD visites_jour INT(10) UNSIGNED NOT NULL DEFAULT '0'");
}
}
// et c'est fini pour cette fois-ci
return 1;
}
示例8: urls_vider_tables
/**
* Desinstallation/suppression des tables urls
*
* @param string $nom_meta_base_version
*/
function urls_vider_tables($nom_meta_base_version)
{
// repasser dans les urls par defaut
ecrire_meta('type_urls', 'page');
sql_drop_table("spip_urls");
effacer_meta($nom_meta_base_version);
}
示例9: formulaires_configurer_transcodeur_traiter_dist
function formulaires_configurer_transcodeur_traiter_dist()
{
$res = array('editable' => true);
ecrire_meta('charset', _request('charset'));
$res['message_ok'] = _T('config_info_enregistree');
return $res;
}
示例10: forum_upgrade
/**
* Installation/maj des tables forum
*
* @param string $nom_meta_base_version
* @param string $version_cible
*/
function forum_upgrade($nom_meta_base_version, $version_cible)
{
// cas particulier :
// si plugin pas installe mais que la table existe
// considerer que c'est un upgrade depuis v 1.0.0
// pour gerer l'historique des installations SPIP <=2.1
if (!isset($GLOBALS['meta'][$nom_meta_base_version])) {
$trouver_table = charger_fonction('trouver_table', 'base');
$trouver_table('');
// vider le cache des descriptions !
if ($desc = $trouver_table('spip_forum') and isset($desc['field']['id_article'])) {
ecrire_meta($nom_meta_base_version, '1.0.0');
}
// si pas de table en base, on fera une simple creation de base
}
$maj = array();
$maj['create'] = array(array('maj_tables', array('spip_forum')));
$maj['1.1.0'] = array(array('sql_alter', "TABLE spip_forum ADD id_objet bigint(21) DEFAULT 0 NOT NULL AFTER id_forum"), array('sql_alter', "TABLE spip_forum ADD objet VARCHAR (25) DEFAULT '' NOT NULL AFTER id_objet"));
$maj['1.1.1'] = array(array('sql_update', "spip_forum", array('objet' => "'breve'", 'id_objet' => 'id_breve'), 'id_breve> 0'), array('sql_update', "spip_forum", array('objet' => "'article'", 'id_objet' => 'id_article'), 'id_article>0'), array('sql_update', "spip_forum", array('objet' => "'site'", 'id_objet' => 'id_syndic'), 'id_syndic>0'), array('sql_update', "spip_forum", array('objet' => "'message'", 'id_objet' => 'id_message'), 'id_message>0'), array('sql_update', "spip_forum", array('objet' => "'rubrique'", 'id_objet' => 'id_rubrique'), 'id_rubrique>0'));
# champ ip sur 40 car (compat IPv6)
$maj['1.2.0'] = array(array('sql_alter', "TABLE spip_forum CHANGE ip ip VARCHAR(40) DEFAULT '' NOT NULL"));
# rejouer la suppression/creation de l'index optimal
# et la suppression des vieux champs, car la premiere sequence avait echoue
# en raison d'un DROP KEY au lieu de DROP INDEX
$maj['1.2.1'] = array(array('sql_alter', "TABLE spip_forum DROP INDEX optimal"), array('sql_alter', "TABLE spip_forum ADD INDEX optimal (statut,id_parent,id_objet,objet,date_heure)"), array('sql_alter', "TABLE spip_forum DROP id_breve"), array('sql_alter', "TABLE spip_forum DROP id_article"), array('sql_alter', "TABLE spip_forum DROP id_syndic"), array('sql_alter', "TABLE spip_forum DROP id_message"), array('sql_alter', "TABLE spip_forum DROP id_rubrique"));
$maj['1.2.2'] = array(array('ecrire_meta', 'forum_prive_objets', $GLOBALS['meta']['forum_prive_objets'] == 'non' ? '' : 'spip_articles,spip_breves,spip_syndic'));
include_spip('base/upgrade');
maj_plugin($nom_meta_base_version, $version_cible, $maj);
}
示例11: verifier_crash_tables
/**
* Vérifier si une table a crashé
*
* Pour cela, on vérifie si on peut se connecter à la base de données.
*
* @see message_crash_tables()
*
* @return bool|array
* Si pas de table de crashée, on retourne `false`.
* Sinon, retourne un tableau contenant tous les noms
* des tables qui ont crashé.
*/
function verifier_crash_tables()
{
if (spip_connect()) {
include_spip('base/serial');
include_spip('base/auxiliaires');
$crash = array();
foreach (array('tables_principales', 'tables_auxiliaires') as $com) {
foreach ($GLOBALS[$com] as $table => $desc) {
if (!sql_select('*', $table, '', '', '', 1) and !defined('spip_interdire_cache')) {
# cas "LOST CONNECTION"
$crash[] = $table;
}
}
}
#$crash[] = 'test';
if ($crash) {
ecrire_meta('message_crash_tables', serialize($crash));
spip_log('crash des tables', 'err');
spip_log($crash, 'err');
} else {
effacer_meta('message_crash_tables');
}
return $crash;
}
return false;
}
示例12: genie_mail_dist
/**
* Envoi du Mail des nouveautes
* base sur le squelette nouveautes.html
*
* La meta dernier_envoi_neuf permet de marquer la date du dernier envoi
* et de determiner les nouveautes publiees depuis cette date
*
* http://doc.spip.org/@genie_mail_dist
*
* @param int $t
* @return int
*/
function genie_mail_dist($t)
{
$adresse_neuf = $GLOBALS['meta']['adresse_neuf'];
$jours_neuf = $GLOBALS['meta']['jours_neuf'];
$now = time();
if (!isset($GLOBALS['meta']['dernier_envoi_neuf'])) {
ecrire_meta('dernier_envoi_neuf', date('Y-m-d H:i:s', $now - 3600 * 24 * $jours_neuf));
}
$page = recuperer_fond('nouveautes', array('date' => $GLOBALS['meta']['dernier_envoi_neuf'], 'jours_neuf' => $jours_neuf));
# en une seule passe avec un squelette textuel:
# 1ere ligne = sujet
# lignes suivantes jusqu'a la premiere blanche: headers SMTP
$page = stripslashes(trim($page));
$page = preg_replace(",\r\n?,", "\n", $page);
$p = strpos($page, "\n\n");
$s = strpos($page, "\n");
if ($p and $s) {
if ($p > $s) {
$headers = substr($page, $s + 1, $p - $s);
}
$sujet_nouveautes = substr($page, 0, $s);
$mail_nouveautes = trim(substr($page, $p + 2));
}
if (strlen($mail_nouveautes) > 10) {
$envoyer_mail = charger_fonction('envoyer_mail', 'inc');
$envoyer_mail($adresse_neuf, $sujet_nouveautes, $mail_nouveautes, '', $headers);
ecrire_meta('dernier_envoi_neuf', date('Y-m-d H:i:s', $now));
} else {
spip_log("mail nouveautes : rien de neuf depuis {$jours_neuf} jours");
}
return 1;
}
示例13: exec_export_all_init
function exec_export_all_init($rub, $gz, $tables, $serveur='', $save=''){
$meta = base_dump_meta_name($rub);
utiliser_langue_visiteur();
if (!isset($GLOBALS['meta'][$meta])){
// c'est un demarrage en arrivee directe depuis exec=admin_tech
// on initialise (mais si c'est le validateur, ne rien faire)
if ($GLOBALS['exec'] == 'valider_xml') return;
$archive = exec_export_all_args($rub, $gz);
$tables = export_all_start($meta, $archive, $rub, $tables);
$v = array($gz, $archive, $rub, $tables, 1, 0, $serveur, $save);
ecrire_meta($meta, serialize($v), 'non');
// rub=$rub sert AUSSI a distinguer cette redirection
// d'avec l'appel initial sinon FireFox croit malin
// d'optimiser la redirection
$url = generer_url_ecrire('export_all',"rub=$rub", true);
} else {
// appels suivants
$export = charger_fonction('export', 'inc');
$arg = $export($meta);
// Si retour de $export c'est fini; dernier appel pour ramasser
// et produire l'en tete du fichier a partir de l'espace public
$url = generer_action_auteur("export_all",$arg,'',true, true, true);
}
include_spip('inc/headers');
redirige_par_entete($url);
}
示例14: lire_metas
function lire_metas($table = 'meta')
{
if ($result = spip_query("SELECT nom,valeur FROM spip_{$table}")) {
include_spip('base/abstract_sql');
$GLOBALS[$table] = array();
while ($row = sql_fetch($result)) {
$GLOBALS[$table][$row['nom']] = $row['valeur'];
}
sql_free($result);
if (!$GLOBALS[$table]['charset'] or $GLOBALS[$table]['charset'] == '_DEFAULT_CHARSET') {
ecrire_meta('charset', _DEFAULT_CHARSET, NULL, $table);
}
// noter cette table de configuration dans les meta de SPIP
if ($table !== 'meta') {
$liste = unserialize($GLOBALS['meta']['tables_config']);
if (!$liste) {
$liste = array();
}
if (!in_array($table, $liste)) {
$liste[] = $table;
ecrire_meta('tables_config', serialize($liste));
}
}
}
return $GLOBALS[$table];
}
示例15: player_affiche_config_form
function player_affiche_config_form ($exec_page){
global $spip_lang_right, $spip_lang_left;
if ($player = _request('player')) {
ecrire_meta('player', $player);
if(version_compare($GLOBALS['spip_version_code'],'1.9300','<')) {
include_spip("inc/meta");
ecrire_metas();
}
}
$player_ = $GLOBALS['meta']['player'];
$out = ""
. debut_cadre_trait_couleur(_DIR_PLUGIN_PLAYER_IMAGES."player-son-24.png", true, "", "Player Audio")
. "<form action='".generer_url_ecrire($exec_page)."' method='post' class='verdana2'><div>"
. bouton_radio("player", "neoplayer", "Neolao player", $player_ == "neoplayer")
. "<br />"
. bouton_radio("player", "dewplayer", "Dew player", $player_ == "dewplayer")
. "<br />"
. bouton_radio("player", "pixplayer", "One pixel out player", $player_ == "pixplayer")
. "<br />"
. bouton_radio("player", "eraplayer", "Erational player", $player_ == "eraplayer")
. "<div style='text-align:$spip_lang_right'><input type='submit' name='Valider' value='"._T('bouton_valider')."' class='fondo' /></div>"
. "</div></form>"
. fin_cadre_trait_couleur(true)
;
return ($out);
}