Code source de ch.lerolle.free.fr/1com/affiche-source.php

modifié le 10 septembre 2023, taille: 5,01 Ko
NB: Les fonctions (<function>) sont intégrées dans la page appelante, en général avant la balise <body>
ou dans un document externe appelé par un 'include', 'include_once' ou 'require',
localisé dans le dossier ch.lerolle.free.fr/include, ou un de ses sous-dossiers, ou dans le même dossier que la page appelant l'include
(règle pour les Pages Perso de Free, mon hébergeur gratuit (❤️❤️❤️)...)

validation du HTML: W3C ou Aborla avec correction automatique
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
<!doctype html>
<html lang="fr-FR">
<head><!-- &nbsp; &thinsp; &copy; apostrophe-incline: ‘’ &quot;citation&quot; code: &#8217; «» É = alt 144 ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝ -->
    <meta charset="utf-8">
    <?php

        
include_once 'init_variables.php';//NB: l'INCLUDE du source d'une fonction doit être fait AVANT l'appel de la-dite fonction ! */

    // visite LOCALE ou SERVEUR ?
    
if    ($side == 'LOCAL'){$debut_chemin '';}
    else                  {
$debut_chemin $_ENV["DOCUMENT_ROOT"];} // = '/var/www/sdb/9/3/ch.lerolle'
    // le fichier passé en paramètre doit forcément exister dans $debut_chemin !!! 

    
$fin_chemin_source $_GET['file'];
    
$URLsource    =  $_SERVER["SERVER_NAME"].$fin_chemin_source;
    
//    echo '$URLsource:    '.$URLsource.'<br>';
    //    echo '$fin_chemin_source:    '.$fin_chemin_source.'<br>';
    
$Fichier_A_Coloriser $debut_chemin.$fin_chemin_source;
    
//     echo '$Fichier_A_Coloriser:    '.$Fichier_A_Coloriser.'<br><br>';
    
?>
    <title><?php echo basename($Fichier_A_Coloriser);?> (code source)</title>
    <meta name="AUTHOR"            content="Christophe LEROLLE">
    <meta name="CREATED"        content="20010331;2472285">
    <meta name="ROBOTS"            content="NOINDEX,NOFOLLOW">
    <meta name="DESCRIPTION"    content="affiche le code source du fichier passé en paramètre dans l'URL">
    <meta name="viewport"        content="width=device-width, initial-scale=1">
    <link rel="stylesheet"        type="text/css" href="/1com/css/style-rsrc.css">
<!--<link rel="stylesheet"        type="text/css" href="http://fonts.googleapis.com/css?family=Alike"> -->
    <link rel="shortcut icon"    href="/rsrc/images/ressources.ico">

    <!-- css pour présenter le fichier -->
    <style>
    *    {margin: 0 0 0 0; padding: 0 0 0 0;}

    .numero_ligne {
        float: left;
        color: Red;
        font-size: 16px; /* NB: il faut tailler a 16px pour que les hauteurs des n° et des lignes coincident.. */
        font-family: Courier;
        text-align: right;
        margin-right: 6pt;
        padding-right: 6pt;
        background-color: black;}

    td    {vertical-align: top;}
    code{white-space: nowrap;}
    </style>
</head>

<?php 
function ColoriseSourceFichier($Fichier_Passé
{
    
// obtient les n° de lignes
    
$lignes implode(range(1count(file($Fichier_Passé))), '<br />');
    
// obtient le texte du source
    // $contenu = highlight_file($Fichier_Passé, true);
    
$contenu show_source($Fichier_Passétrue);    
    
// affiche le code colorisé
    
echo "<table><tr><td class=\"numero_ligne c-a-droite\">\n$lignes\n</td><td>\n$contenu\n</td></tr></table>";
}
?>

<body>
<?php include 'rsrc-header.php';?>

<div class="centre"><h1><span class="relief taillecar-petit"><span class="taillecar-petit">Code&nbsp;source&nbsp;de <span class="rouge"><?php echo $URLsource;?></span></span></span></h1></div>
<?php 
if ($Fichier_A_Coloriser != '' and $Fichier_A_Coloriser != '/') {
    
// si le fichier existe
    
if (file_exists($Fichier_A_Coloriser)) { ?>
        modifié le <span class="rouge"><?php echo affiche_date(filemtime($Fichier_A_Coloriser)).'</span>, taille: <span class="rouge">'.aff_taille_fichier($fin_chemin_source).'</span>';?><br>
        <div class="tabul-bloc fonds-beige-fonce"><b>NB</b>: Les <b>fonctions</b> (<span class="code-source">&lt;function&gt;</span>) sont intégrées dans la page appelante, en général avant la balise <span class="code-source">&lt;body&gt;</span><br>
        ou dans un document externe appelé par un '<b>include</b>', '<b>include_once</b>' ou '<b>require</b>',<br>
        localisé dans le dossier <span class="rouge"><?php echo $_SERVER["SERVER_NAME"]?>/include</span>, ou <span class="rouge">un de ses sous-dossiers</span>,
        ou dans <span class="rouge">le même dossier que la page appelant l'include</span><br>
        (règle pour les <a target="_blank" href="https://www.free.fr/assistance/438.html" title=""><b>Pages Perso</b></a> de <img src="/1com/img/logo-free.png" alt="Free" width="50" class="align-vertical-bas">, mon hébergeur gratuit <?php affiche_motif(3,'');?>...)<br>
        <br>
        validation du HTML:  
            <a target="_blank" href="https://validator.w3.org/nu/?doc=http://<?php echo $URLsource;?>&checkerrorpages=yes&showsource=yes&showoutline=yes&showimagereport=yes" title=""><b>W3C</b></a> ou 
            <a target="_blank" href="http://validator.aborla.net/" title=""><b>Aborla</b> avec correction automatique</a><br></div>
        <?php
        
echo '<div style="font-family:Monospace, Courier, Courier New, Sans-serif;">';// cette option force l'application de la police Monospace aux numéros de ligne !?!
        // mise en page du fichier demandé, qui existe...
        
ColoriseSourceFichier($Fichier_A_Coloriser);
        echo 
'<br>';
        } else {
        
// si le fichier n'existe pas
        
echo '</h4><br><br><h4>Le fichier \'<span class="rouge">'.$URLsource.'</span>\' n’existe pas: (QUERY_STRING='.$_SERVER["QUERY_STRING"].')</h4><br>';
        }
        echo 
'</div>';
} else {
// si aucun fichier fourni en parametre
echo '</h4><br><br><h4><span class="rouge">Aucun fichier en paramètre:</span> (QUERY_STRING=<span class="rouge">'.$_SERVER["QUERY_STRING"].')</span></h4><br>';
}
?>

<?php include 'rsrc-trailer.php';?>
</body>
</html>