
Recherche avancée
Médias (2)
-
Exemple de boutons d’action pour une collection collaborative
27 février 2013, par
Mis à jour : Mars 2013
Langue : français
Type : Image
-
Exemple de boutons d’action pour une collection personnelle
27 février 2013, par
Mis à jour : Février 2013
Langue : English
Type : Image
Autres articles (105)
-
La sauvegarde automatique de canaux SPIP
1er avril 2010, parDans le cadre de la mise en place d’une plateforme ouverte, il est important pour les hébergeurs de pouvoir disposer de sauvegardes assez régulières pour parer à tout problème éventuel.
Pour réaliser cette tâche on se base sur deux plugins SPIP : Saveauto qui permet une sauvegarde régulière de la base de donnée sous la forme d’un dump mysql (utilisable dans phpmyadmin) mes_fichiers_2 qui permet de réaliser une archive au format zip des données importantes du site (les documents, les éléments (...) -
Script d’installation automatique de MediaSPIP
25 avril 2011, parAfin de palier aux difficultés d’installation dues principalement aux dépendances logicielles coté serveur, un script d’installation "tout en un" en bash a été créé afin de faciliter cette étape sur un serveur doté d’une distribution Linux compatible.
Vous devez bénéficier d’un accès SSH à votre serveur et d’un compte "root" afin de l’utiliser, ce qui permettra d’installer les dépendances. Contactez votre hébergeur si vous ne disposez pas de cela.
La documentation de l’utilisation du script d’installation (...) -
Utilisation et configuration du script
19 janvier 2011, parInformations spécifiques à la distribution Debian
Si vous utilisez cette distribution, vous devrez activer les dépôts "debian-multimedia" comme expliqué ici :
Depuis la version 0.3.1 du script, le dépôt peut être automatiquement activé à la suite d’une question.
Récupération du script
Le script d’installation peut être récupéré de deux manières différentes.
Via svn en utilisant la commande pour récupérer le code source à jour :
svn co (...)
Sur d’autres sites (9465)
-
Evolution #4478 (Nouveau) : Permettre une requête de type SELECT DISTINCT via les BOUCLES
20 avril 2020, par Mathieu BrumePermettre de créer une boucle avec un critère qui effectuerait un SELECT DISTINCT
Je ne connais pas suffisamment Spip à ce stade pour imaginer la meilleure façon de faire.
J’imagine un critère genre distinct (ou à franciser ?)
Une demande similaire date de 2006 sur Spip Forums et, compte-tenu du fait qu’un SELECT DISTINCT est quand même quelque chose d’assez courant, je suis surpris qu’il n’y ait pas eu plus de demandes à ce sujet.
La solution, en attendant, est de passer par une boucle DATA avec une source sql, ou par la définition d’une BALISE spécifique.
-
Documentation #3374 (Nouveau) : "PHP Warning : Cannot modify header information" récurrentes
14 janvier 2015, par Eric CamusSur une machine Windows + IIS 6, avec des SPIP 3.0.17 + Sarka 3.2.28.
On subit à longueur de journée des erreurs :
[13-Jan-2015 10:29:07 Europe/Paris] PHP Warning: Cannot modify header information - headers already sent by (output started at D:\wwwwww\yyyyyyy\ecrire\public.php:154) in D:\ wwwwww\yyyyyyy \ecrire\inc\headers.php on line 152
Après une analyse du code et des essais en production, j’ai identifié que ces erreurs proviennent toutes (quel que soit le site SPIP sur les 180 actuellement en production) de l’écriture du fichier " tmp/cache/chemin.txt" qui termine le calcul de la page. Ci-dessous un debug_backtrace() :
Array ( [0] => Array ( [file] => D :\wwwwww\yyyyyyy\ecrire\inc\flock.php [line] => 233 [function] => http_status [args] => Array ( [0] => 401 )
)
[1] => Array
(
[file] => D :\wwwwww\yyyyyyy\ecrire\inc\flock.php
[line] => 193
[function] => raler_fichier
[args] => Array
(
[0] => tmp/cache/chemin.txt
))
[2] => Array
(
[file] => D :\wwwwww\yyyyyyy\ecrire\inc\utils.php
[line] => 1032
[function] => ecrire_fichier
[args] => Array
(
[0] => tmp/cache/chemin.txt
[1] => a:2 :s:32 :"6f0bd1a59e3585679ea73508e8a166ba"...
))
[3] => Array
(
[file] => D :\wwwwww\yyyyyyy\ecrire\public.php
[line] => 184
[function] => save_path_cache
[args] => Array
(
))
[4] => Array
(
[file] => D :\wwwwww\yyyyyyy\spip.php
[line] => 24
[args] => Array
(
[0] => D :\wwwwww\yyyyyyy\ecrire\public.php
)[function] => include
))
Ayant placé ce code dans la fonction " http_status " :
if(headers_sent()) // APmodif debug mode $f=$_SERVER[’DOCUMENT_ROOT’].’\debug_header.txt’ ; $out=date(’******************[d/m/Y H:i:s]’)."\r\n" ; $out.=’PHP_SELF=’.$_SERVER[’PHP_SELF’]."\r\n" ; $out.=’QUERY_STRING=’.$_SERVER[’QUERY_STRING’]."\r\n" ; $out.=’-----ob_get_contents---------------------------------------------’."\r\n".ob_get_contents()."\r\n". ’-----headers_list------------------------------------------------’."\r\n" ; $out.=print_r(headers_list(),true)."\r\n". ’-----------------------------------------------------------------’."\r\n" ; $out.=’STATUS_STRING=’.$status_string[$status]."\r\n" ; $out.=’*****FIN*********************************************************’."\r\n" ; file_put_contents($f,$out,FILE_APPEND) ; file_put_contents($_SERVER[’DOCUMENT_ROOT’].’\debug_backtrace.txt’,print_r(debug_backtrace(),true)) ; else if ($php_cgi) header("Status : ".$status_string[$status]) ; else header("HTTP/1.0 ".$status_string[$status]) ;
Un extrait de "debug_header.txt" :
******************[14/01/2015 08:40:53] PHP_SELF=/yyyyyyy/spip.php QUERY_STRING=page=style.css
ob_get_contents---------------------------------------------
headers_list------------------------------------------------
Array
(
[0] => X-Powered-By : PHP/5.4.35
[1] => Composed-By : SPIP @ www.spip.net
[2] => X-Spip-Cache : 7776000
[3] => Content-Type : text/css ; charset=iso-8859-15
[4] => Vary : Accept-Encoding
[5] => Last-Modified : Wed, 14 Jan 2015 07:40:52 GMT
)
STATUS_STRING=401 Unauthorized
*****FIN*********************************************************Cette analyse montre que ces erreurs passent toutes par l’appel de la fonction "raler_fichier" dans " ecrire_fichier" du fichier "flock.php" :
if (!$ignorer_echec) include_spip(’inc/autoriser’) ; if (autoriser(’chargerftp’)) raler_fichier($fichier) ; spip_unlink($fichier) ;
Maintenant les questions :
- Pourquoi seuls les administrateurs affichent cette erreur qui en plus arrête le processus par un "exit" dans "raler_fichier", donc les codes suivant ne sont pas exécuter (suppression et log SPIP) ? Sans compter que l’on ne voit rien car la plupart du temps elle arrive dans un fichier de CSS !!!
- Pourquoi supprimer un fichier qui n’est pas obligatoirement en erreur car c’est probablement un problème de LOCK (deux processus en même temps) ?
- Peut-on désactivé cette portion de code sans risque de problème ?Pour la part, je prends sur moi de supprimer cette portion de code.
-
Anomalie #4571 : interprété comme dans le des tableaux
8 octobre 2020, par Luc MaminOui, c’est bien sous Spip 3.2
Exemple anonymisé :
Dsden de Gironde : DRH2
30 Cours de Luze, BP 919, 33 060 Bordeaux cedex
< < Enseignant·es de A à E
Prénom NOM
05.56.00.00.00 Enseignant·es de F à O
Prénom NOM
05.56.00.00.00 Enseignant·es de P à Z
Prénom NOM
05.56.00.00.00