Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    260

    verificare che si trovi il contenuto di un array in una stringa

    raga ho il seguente problema:

    codice:
    $ricerca = array(":", "*", "?", '"', "<", ">");
    $pos = strpos ($stringa, $ricerca);
    
    if ($pos === true) {
    print "è stato trovato un carattere pericoloso";
    ....
    in pratica dovrebbe verificare nella stringa "$stringa" l'esistenza di uno dei carettari specificato nell'array "$ricerca".


    Ma nn funziona

    Potete aiutarmi a capire il problema?

    Ciao

  2. #2
    non sono certo che il mix needle della strpos accetti array, perdendo di utilità come funzione ...

    quick & dirty direi di fare così


    codice:
    $ricerca = array(":", "*", "?", '"', "<", ">");
    
    if ($stringa != str_replace($ricerca, "", $stringa)) {
    print "è stato trovato un carattere pericoloso";

    ... ho solo un dubbio, non vedo caratteri pericolosi in quell'array
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  3. #3
    O na cosa del tipo:

    Codice PHP:
    $ricerca = array(':''*''?''"''<''>');
    foreach(
    $ricerca as $valore){
        
    $pos strpos($stringa$valore);
        if (
    $pos === false){
            
    //TUTTO OK
        
    } else {
            print 
    "è stato trovato un carattere pericoloso";
            break;
        }


  4. #4
    o anche ...

    $ricerca = array(':', '*', '?', '"', '<', '>');

    if(preg_match('/\\'.implode('|\\', $ricerca).'/', $stringa))
    print "è stato trovato un carattere pericoloso";

    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    260
    ... ho solo un dubbio, non vedo caratteri pericolosi in quell'array
    nn ci far caso al testo del print, è solo un esempio

    cmq funzionano entrambi gl'esempi adesso mi tocca solo scegliere quale metodo adottare


    Grazie mille

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.