Funzione Glob - ricerca file contenente una parola

francescoITA

Nuovo Utente
10 Gen 2020
12
0
1
Ciao ragazzi,
perdonatemi sto utilizzando la funzione glob in php per ricercare i file in una determinata directory.
Ho bisogno però nel form di ricerca di filtrare i risultati contenenti la parola ricercata:

ad esempio:

percorso/i miei file.pdf
percordo/file word.pdf
ecc.


se nel form di ricerca inserisco la parola "miei", dovrebbe restituirmi solo "i miei file.pdf"

ho visto che la funzione glob prevede l'uso dell'asterisco (*) per i file che "iniziano con" ma non sono riuscito a trovare nulla per la funzione "contiene la parola"

un pò quello che fa il carattere % in sql


Grazie mille a chi saprà/vorrà aiutarmi
Francesco
 
ho provato questo , ma non so per quale motivo non mi restituisce alcun risultato
oltretutto php va in errore quando il campo cercanome è vuoto

la funzione dovrebbe restituirmi i file contenenti il nome ricercato tra i file pdf presenti nella cartella path , inserendomeli in una tabella con il relativo link per aprirli

qualche idea?


PHP:
<form method="post">
    <input type="text"   name="cercanome" style="width: 190px;">
    <input type="submit" name="sendcerca" value="CERCA" style="width: 50px;">
</form>   


<form name="modulo" method="post">

<?php

if (isset($_POST['cercanome'])) {
        $cercanome = strtoupper($_POST['cercanome']);
    } else {
        $cercanome = '';
    }

            
$n = 1;

foreach(glob('path/'.$cercanome.'*.{pdf,PDF}', GLOB_BRACE) as $file){
        
                
        $nomefile = basename($file);
        $cliente = substr($nomefile, 0 ,strpos($nomefile, '20'));
       
        
if (strpos($cliente, $cercanome) !== false) {
            
?>
    
    
            <tr class="cs1">
                <td class="cs1" width="75px" align="center"><?php echo $n++; ?></td>
                <td class="cs1" width="600px" align="center"><?php echo $cliente; ?></td>
                <td class="cs1" width="200px" align="center"><?php echo '<a href="'.$file.'" target= "_blank">APRI</a><br>';  ?></td>
            </tr>
            
<?php

}
        
}

?>

    
    </tbody>

    </table><?php
    
    endif; ?>
</form>
 

Discussioni simili