Valid XHTML     Valid CSS2    

Listing du fichier ncis_res_sol.php avec syntaxhighlighter


        <?php
        
        #    (gH)   -_-  ncis_res_sol.php  ;  TimeStamp (unix) : 31 Mars 2013 vers 11:09
        
        error_reporting(E_ALL | E_NOTICE | E_STRICT) ;
        include("std.php") ;
        debutPage("Aidons Abby","strict") ;
        debutSection() ;
        
        #############################################################################################
        
        function chiffreRepete($desChiffres) {
        #-------------------------------------
        
          # on passe les chiffres en revue
          # et on cumule les occurrences
          # on sort de la boucle dès qu'on voit un chiffre pour la deuxième fois
          # grace à return
        
          $lng = strlen($desChiffres) ;
          $cnt = array() ;
          $idc = 0 ; # idc = indice de chiffre
          while ($idc<$lng) {
            $chif = substr($desChiffres,$idc,1) ;
            if (!isset($cnt[$chif])) {
              $cnt[$chif] = 1 ;
            } else {
              return( TRUE ) ; # mieux que $cnt[chif]++ ; if ($cnt[$idc]>1) { ...
            } ; # finsi
            $idc++ ;
          } ; # fin tant que
        
          # si on arrive ici, c'est qu'aucun chiffre n'était répété
        
          return( FALSE ) ;
        
        } # fin de fonction chiffreRepete
        
        function alternancePairImpair($quatreChiffres) {
        #-----------------------------------------------
        
          return( preg_match("/[02468][13579][02468][13579]/",$quatreChiffres) ) ;
          # que pensez-vous de
          ## return( preg_match("/[[02468][13579]]{2}/",$quatreChiffres) ) ;
        
        } # fin de fonction alternancePairImpair
        
        #############################################################################################
        
        h1("Aidons Abby à trouver les suspects") ;
        
        # testons si un numéro de plaque a été fourni
        
        $plaque = "???" ;
        if (isset($_GET["plaque"])) {
           $plaque = trim($_GET["plaque"]) ;
        } ; # finsi
        
        if (($plaque=="???") or ($plaque=="")) {
           h2("Vous n'avez pas transmis de numéro de plaque, dommage pour Abby.","grouge") ;
           pvide() ;
           p() ;
             echo href("montresource.php?nomfic=ncis_res_sol.php","Code-source PHP de cette page","orange_stim nou")."." ;
           finp() ;
           finSection() ;
           finPage() ;
           exit() ;
        } ; # finsi
        
        blockquote() ;
        
        h2("Voici le numéro de plaque que vous avez transmis : ".s_span($plaque,"gvertf"),"grouge") ;
        
        blockquote() ;
        
        # s'il y a de 1 à 4 chiffres, un espace, deux lettres, un espace et deux chiffres, c'est bien
        # un numéro de suspect
        
        if (!preg_match("/^[0-9]{1,4} [A-Za-z]{2} [0-9]{2}\$/",$plaque)) {
        
           h3("Il ne s'agit pas du numéro d'un suspect.") ;
        
        } else {
        
           h3("Il s'agit bien du numéro d'un suspect.") ;
        
           # suspect Ari = que des consonnes
        
           preg_match("/[A-Za-z]{2}/",$plaque,$trouve) ; # noter qu'il n'y a plus ^ ni $
           $lesLettres = strtoupper($trouve[0]) ;
           if (!preg_match("/[AEIOUY]/",$lesLettres)) { # mais pas preg_match("/[^AEIOUY]/",$lesLettres)
              p() ;
                echo " A cause des consonnes, ce pourrait bien &ecirc;tre Ari Haswari." ;
              finp() ;
           } # fin si
        
           # suspect tueur de port en port = un chiffre répété (avant ou après les lettres)
        
           preg_match_all("/[0-9]+/",$plaque,$chiffres) ;
           $chiffresAvant = $chiffres[0][0] ;
           $chiffresApres = $chiffres[0][1] ;
           if (chiffreRepete($chiffresAvant.$chiffresApres)) {
              p() ;
                echo " A cause de chiffre(s) répété(s), ce pourrait bien &ecirc;tre le tueur de port en port." ;
              finp() ;
           } # fin si
        
           # suspect la grenouille = 4 chifres exactement avant les lettres avec alternance pair/impair
        
           if (preg_match("/[0-9]{4}/",$plaque,$chiffres)) {
              if (alternancePairImpair($chiffres[0])) {
                 p() ;
                   echo " A cause des 4 chiffre(s) en alternance pair/impair, ce pourrait bien &ecirc;tre \"la Grenouille\"." ;
                 finp() ;
              } # fin si
           } # fin si
        
        } # fin si
        
        finblockquote() ;
        finblockquote() ;
        
        #############################################################################################
        
        pvide() ;
        
        p() ;
        echo href("montresource.php?nomfic=ncis_res_sol.php","Code-source PHP de cette page","orange_stim nou")."." ;
        finp() ;
        
        
        finSection() ;
        finPage() ;
        ?>
        

La coloration syntaxique est réalisée par : SyntaxHighlighter.

Si vous préférez, vous pouvez utiliser celle de geshi ou même celle construite autour de la fonction highlight_file.

 

 

retour gH    Retour à la page principale de   (gH)