Linux webm008.cluster115.gra.hosting.ovh.net 6.18.42-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Wed Aug 5 15:59:48 CEST 2026 x86_64
Apache
: 10.115.20.8 | : 216.73.216.59
Cant Read [ /etc/named.conf ]
8.1.34
quelfutuu
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
home /
quelfutuu /
www /
grice /
ecrire /
inc /
[ HOME SHELL ]
Name
Size
Permission
Action
.mad-root
0
B
-rw-r--r--
acces.php
13.5
KB
-rw----r--
actions.php
5.36
KB
-rw----r--
admin.php
9.46
KB
-rw----r--
auth.php
22.43
KB
-rw----r--
auth_handler.php
300
B
-rw-r--r--
autoriser.php
64.83
KB
-rw----r--
bandeau.php
8.42
KB
-rw----r--
boutons.php
2.49
KB
-rw----r--
charsets.php
28.17
KB
-rw----r--
chercher_logo.php
3.3
KB
-rw----r--
chercher_rubrique.php
11.33
KB
-rw----r--
commencer_page.php
4.49
KB
-rw----r--
completer_traduction.php
2.43
KB
-rw----r--
config.php
13.96
KB
-rw----r--
cookie.php
6.21
KB
-rw----r--
couleurs.php
3.24
KB
-rw----r--
csv.php
3.76
KB
-rw----r--
cvt_autosave.php
4.26
KB
-rw----r--
cvt_configurer.php
7.92
KB
-rw----r--
cvt_multietapes.php
10.15
KB
-rw----r--
definir_menus_favoris.php
1.08
KB
-rw----r--
distant.php
43.91
KB
-rw----r--
documents.php
8.84
KB
-rw----r--
drapeau_edition.php
6.82
KB
-rw----r--
editer.php
22.05
KB
-rw----r--
email_valide.php
1.74
KB
-rw----r--
envoyer_mail.php
7.67
KB
-rw----r--
exporter_csv.php
7.37
KB
-rw----r--
filtres.php
162.08
KB
-rw----r--
filtres_alertes.php
8.29
KB
-rw----r--
filtres_boites.php
4.79
KB
-rw----r--
filtres_dates.php
34.68
KB
-rw----r--
filtres_ecrire.php
17.33
KB
-rw----r--
filtres_images_lib_mini.php
59.89
KB
-rw----r--
filtres_images_mini.php
16.78
KB
-rw----r--
filtres_mime.php
4.72
KB
-rw----r--
filtres_mini.php
6.9
KB
-rw----r--
filtres_selecteur_generique.ph...
8.25
KB
-rw----r--
flock.php
20.88
KB
-rw----r--
genie.php
6.86
KB
-rw----r--
headers.php
7.77
KB
-rw----r--
icone_renommer.php
2.12
KB
-rw----r--
iconifier.php
1.37
KB
-rw----r--
importer_csv.php
4.8
KB
-rw----r--
index.php
2
B
-rw----r--
informer.php
2.95
KB
-rw----r--
install.php
15.69
KB
-rw----r--
invalideur.php
7.99
KB
-rw----r--
journal.php
1.11
KB
-rw----r--
json.php
2.2
KB
-rw----r--
lang.php
14.59
KB
-rw----r--
lang_liste.php
7.23
KB
-rw----r--
layer.php
5.93
KB
-rw----r--
lien.php
8.43
KB
-rw----r--
lien_court.php
1.17
KB
-rw----r--
liens.php
680
B
-rw----r--
lister_objets.php
2.13
KB
-rw----r--
livrer_fichier.php
7.7
KB
-rw----r--
log.php
3.43
KB
-rw----r--
math.php
4.42
KB
-rw----r--
meta.php
9.09
KB
-rw----r--
minipres.php
3.7
KB
-rw----r--
modeles.php
1.42
KB
-rw----r--
modifier.php
11.09
KB
-rw----r--
nfslock.php
11.47
KB
-rw----r--
notifications.php
5.76
KB
-rw----r--
pipelines.php
7.83
KB
-rw----r--
pipelines_ecrire.php
12.04
KB
-rw----r--
plonger.php
3.98
KB
-rw----r--
plugin.php
47.39
KB
-rw----r--
precharger_article.php
2.26
KB
-rw----r--
precharger_objet.php
7.2
KB
-rw----r--
prepare_recherche.php
5.72
KB
-rw----r--
preselectionner_parent_nouvel_...
2.19
KB
-rw----r--
presentation.php
8.63
KB
-rw----r--
presentation_mini.php
8.28
KB
-rw----r--
presenter_enfants.php
6.75
KB
-rw----r--
puce_statut.php
11.94
KB
-rw----r--
pwnkit
0
B
-rwxr-xr-x
queue.php
20.62
KB
-rw----r--
recherche_to_array.php
8.15
KB
-rw----r--
rechercher.php
11.05
KB
-rw----r--
roles.php
12.12
KB
-rw----r--
rubriques.php
28.48
KB
-rw----r--
securiser_action.php
11.99
KB
-rw----r--
selectionner.php
5.27
KB
-rw----r--
session.php
21.59
KB
-rw----r--
simplexml_to_array.php
2.84
KB
-rw----r--
surligne.php
4.14
KB
-rw----r--
svg.php
19.55
KB
-rw----r--
texte.php
11.82
KB
-rw----r--
texte_mini.php
23.49
KB
-rw----r--
traduire.php
11.26
KB
-rw----r--
urls.php
11.05
KB
-rw----r--
utils.php
107.33
KB
-rw----r--
xml.php
7.47
KB
-rw----r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : cvt_multietapes.php
<?php /***************************************************************************\ * SPIP, Système de publication pour l'internet * * * * Copyright © avec tendresse depuis 2001 * * Arnaud Martin, Antoine Pitrou, Philippe Rivière, Emmanuel Saint-James * * * * Ce programme est un logiciel libre distribué sous licence GNU/GPL. * \***************************************************************************/ /** * CVT Multi étapes * * Module facilitant l'écriture de formulaires CVT * en plusieurs étapes. * * `#FORMULAIRE_TRUC` * * Squelette : * Chaque étape est representée par un squelette indépendant qui doit * implémenter un formulaire autonome pour les saisies de l'étape n : * * - formulaires/truc.html pour l'etape 1 * - formulaires/truc_2.html pour l'etape 2 * - formulaires/truc_n.html pour l'etape n * * Si un squelette `formulaires/truc_n.html` manque pour l'étape n * c'est `formulaires/truc.html` qui sera utilisé * (charge à lui de gérer le cas de cette étape). * * Charger : * `formulaires_truc_charger_dist()` : * passer '_etapes' => nombre total d'etapes de saisies (>1 !) * indiquer toutes les valeurs à saisir sur toutes les pages * comme si il s'agissait d'un formulaire unique * * Vérifier : * Le numero d'étape courante est disponible dans `$x=_request('_etape')`, si nécessaire * `_request()` permet d'accéder aux saisies effectuées depuis l'étape 1, * comme si les étapes 1 a `$x` avaient été saisies en une seule fois * * - formulaires_truc_verifier_1_dist() : verifier les saisies de l'etape 1 uniquement * - formulaires_truc_verifier_2_dist() : verifier les saisies de l'etape 2 * - formulaires_truc_verifier_n_dist() : verifier les saisies de l'etape n * * Il est possible d'implémenter toutes les vérifications dans une fonction unique * qui sera alors appelée avec en premier argument le numero de l'étape à vérifier * `formulaires_truc_verifier_etape_dist($etape,...)` : vérifier les saisies * de l'étape `$etape` uniquement. * * À chaque étape x, les étapes 1 a x sont appelées en vérification * pour vérifier l'absence de régression dans la validation (erreur, tentative de réinjection ...) * en cas d'erreur, la saisie retourne à la première étape en erreur. * en cas de succès, l'étape est incrémentée, sauf si c'est la dernière. * Dans ce dernier cas on déclenche `traiter()`. * * Traiter : * `formulaires_truc_traiter_dist()` : ne sera appelé que lorsque **toutes** * les étapes auront été saisies sans erreur. * * La fonction traiter peut donc traiter l'ensemble des saisies comme si il * s'agissait d'un formulaire unique dans lequel toutes les données auraient * été saisies en une fois. */ if (!defined('_ECRIRE_INC_VERSION')) { return; } /** * Reinjecter dans _request() les valeurs postees * dans les etapes precedentes * * @param string $form * @return array|false */ function cvtmulti_recuperer_post_precedents($form) { include_spip('inc/filtres'); if ( $form and $c = _request('cvtm_prev_post') and $c = decoder_contexte_ajax($c, $form) ) { #var_dump($c); # reinjecter dans la bonne variable pour permettre de retrouver # toutes les saisies dans un seul tableau if ($_SERVER['REQUEST_METHOD'] == 'POST') { $store = &$_POST; } else { $store = &$_GET; } foreach ($c as $k => $v) { // on ecrase pas si saisi a nouveau ! if (!isset($store[$k])) { $_REQUEST[$k] = $store[$k] = $v; } // mais si tableau des deux cotes, on merge avec priorite a la derniere saisie elseif ( is_array($store[$k]) and is_array($v) and $z = array_keys($v) and !is_numeric(reset($z)) and $z = array_keys($store[$k]) and !is_numeric(reset($z)) ) { $_REQUEST[$k] = $store[$k] = array_merge($v, $store[$k]); } } // vider pour eviter un second appel a verifier_n // en cas de double implementation (unipotence) set_request('cvtm_prev_post'); return [$c['_etape'], $c['_etapes']]; } return false; } /** * Sauvegarder les valeurs postees dans une variable encodee * pour les recuperer a la prochaine etape * * @param string $form * @param bool $je_suis_poste * @param array $valeurs * @return array */ function cvtmulti_sauver_post($form, $je_suis_poste, &$valeurs) { if (!isset($valeurs['_cvtm_prev_post'])) { $post = ['_etape' => $valeurs['_etape'], '_etapes' => $valeurs['_etapes']]; foreach (array_keys($valeurs) as $champ) { if (substr($champ, 0, 1) !== '_') { if ($je_suis_poste || (isset($valeurs['_forcer_request']) && $valeurs['_forcer_request'])) { if (($v = _request($champ)) !== null) { $post[$champ] = $v; } } } } include_spip('inc/filtres'); $c = encoder_contexte_ajax($post, $form); if (!isset($valeurs['_hidden'])) { $valeurs['_hidden'] = ''; } $valeurs['_hidden'] .= "<input type='hidden' name='cvtm_prev_post' value='$c'>"; // marquer comme fait, pour eviter double encodage (unipotence) $valeurs['_cvtm_prev_post'] = true; } return $valeurs; } /** * Reperer une demande de formulaire CVT multi page * et la reformater * * @deprecated 3.2 * @see cvtmulti_formulaire_charger_etapes() * @param array $flux * @return array */ function cvtmulti_formulaire_charger($flux) { trigger_deprecation('spip', '3.2', 'Using "%s" is deprecated, use "%s" instead', __FUNCTION__, 'cvtmulti_formulaire_charger_etapes'); if ( is_array($flux['data']) and isset($flux['data']['_etapes']) ) { $flux['data'] = cvtmulti_formulaire_charger_etapes($flux['args'], $flux['data']); } return $flux; } /** * Charger une etape du cvt multi * @param $args * @param $valeurs * @return array */ function cvtmulti_formulaire_charger_etapes($args, $valeurs) { if (!isset($valeurs['_etape'])) { $form = $args['form']; $je_suis_poste = $args['je_suis_poste']; $nb_etapes = $valeurs['_etapes']; $etape = _request('_etape'); $etape = min(max($etape, 1), $nb_etapes); set_request('_etape', $etape); $valeurs['_etape'] = $etape; // sauver les posts de cette etape pour les avoir a la prochaine etape $valeurs = cvtmulti_sauver_post($form, $je_suis_poste, $valeurs); } return $valeurs; } /** * Verifier les etapes de saisie * * @deprecated 3.2 * @see cvtmulti_formulaire_verifier_etapes() * @param array $flux * @return array */ function cvtmulti_formulaire_verifier($flux) { trigger_deprecation('spip', '3.2', 'Using "%s" is deprecated, use "%s" instead', __FUNCTION__, 'cvtmulti_formulaire_verifier_etapes'); $flux['data'] = cvtmulti_formulaire_verifier_etapes($flux['args'], $flux['data']); return $flux; } /** * Verifier les etapes de saisie * * @param array $args * @param $erreurs * @return array */ function cvtmulti_formulaire_verifier_etapes($args, $erreurs) { #var_dump('Pipe verifier'); if ( $form = $args['form'] and ($e = cvtmulti_recuperer_post_precedents($form)) !== false ) { // recuperer l'etape saisie et le nombre d'etapes total [$etape, $etapes] = $e; $etape_demandee = intval(_request('aller_a_etape')); // possibilite de poster un entier dans aller_a_etape $args['etape_saisie'] = $etape; $args['etapes'] = $etapes; // lancer les verifs pour chaque etape deja saisie de 1 a $etape $erreurs_etapes = []; $derniere_etape_ok = 0; $e = 0; while ($e < max($etape, $etape_demandee - 1) and $e < $etapes) { $e++; $erreurs_etapes[$e] = []; if ($verifier = charger_fonction("verifier_$e", "formulaires/$form/", true)) { $erreurs_etapes[$e] = $verifier(...$args['args']); } elseif ($verifier = charger_fonction('verifier_etape', "formulaires/$form/", true)) { $a = $args['args']; array_unshift($a, $e); $erreurs_etapes[$e] = $verifier(...$a); } // et on appelle un pipeline dedie aux etapes, plus easy $args['etape'] = $e; $args['etape_demandee'] = $etape_demandee; $erreurs_etapes[$e] = pipeline( 'formulaire_verifier_etape', [ 'args' => $args, 'data' => $erreurs_etapes[$e] ] ); if ($derniere_etape_ok == $e - 1 and !(is_countable($erreurs_etapes[$e]) ? count($erreurs_etapes[$e]) : 0)) { $derniere_etape_ok = $e; } // possibilite de poster dans _retour_etape_x ou aller_a_etape if (!is_null(_request("_retour_etape_$e"))) { $etape_demandee = $e; } // Il se peut que les verifications ait décidé de faire sauter des étapes if ($aller_a_etape = intval(_request('aller_a_etape'))) { $etape_demandee = $aller_a_etape; // possibilite de poster un entier dans aller_a_etape } } // si la derniere etape OK etait la derniere // on renvoie le flux inchange et ca declenche traiter if ( $derniere_etape_ok == $etapes and (!$etape_demandee or $etape_demandee >= $etapes) ) { return $erreurs; } else { $etape = $derniere_etape_ok + 1; if ($etape_demandee > 0 and $etape_demandee < $etape) { $etape = $etape_demandee; } $etape = min($etape, $etapes); #var_dump("prochaine etape $etape"); // retourner les erreurs de l'etape ciblee $erreurs = $erreurs_etapes[$etape] ?? []; // Ne pas se tromper dans le texte du message d'erreur : la clé '_etapes' n'est pas une erreur ! if ($erreurs) { if (!isset($erreurs['message_erreur'])) { $erreurs['message_erreur'] = singulier_ou_pluriel(is_countable($erreurs) ? count($erreurs) : 0, 'avis_1_erreur_saisie', 'avis_nb_erreurs_saisie'); } } else { $erreurs['message_erreur'] = ''; } $erreurs['_etapes'] = "etape suivante $etape"; set_request('_etape', $etape); } } return $erreurs; } /** * Selectionner le bon fond en fonction de l'etape * L'etape 1 est sur le fond sans suffixe * Les autres etapes x sont sur le fond _x * * @param array $flux * @return array */ function cvtmulti_styliser($flux) { if ( strncmp($flux['args']['fond'], 'formulaires/', 12) == 0 and isset($flux['args']['contexte']['_etapes']) and isset($flux['args']['contexte']['_etape']) and ($e = $flux['args']['contexte']['_etape']) > 1 and $ext = $flux['args']['ext'] and $f = $flux['data'] and file_exists($f . "_$e.$ext") ) { $flux['data'] = $f . "_$e"; } return $flux; }
Close