Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Php non trova l'array

  1. #1
    Utente bannato L'avatar di Ht28
    Registrato dal
    May 2006
    Messaggi
    1,544

    Php non trova l'array

    Ho questo codice con le parole proibite

    Codice PHP:
    <?php
    // parole-proibite.php
    $paroleNoGood = array ("mel(a|e)","per(a|e)","''");
    ?>
    e poi questo, che però non intercetta le parole proibite:

    Codice PHP:
    include("parole-proibite.php");
    //parole proibite (vedi parole-proibite.php)
    $stringa $_POST['messaggio'].' '.$nome.' '.$citta.' '.$email
    foreach(
    $paroleNoGood as $parola){
    if (
    stristr($stringa$parola) !== false){
    $errore .= "La parola $parola non è ammessa ";
     }

    ma riconosce solo questo array:

    Codice PHP:
    <?php
    // Parole proibite
    $paroleNoGood = array ("mela","mele","pera","pere","''");
    ?>

  2. #2
    mi sembra normale...
    con
    Codice PHP:
    array ("mel(a|e)","per(a|e)","''"); 
    tu stai dicendo che le parole proibite sono
    "mel(a|e)" e "per(a|e)"
    quindi quando poi fai il confronto a meno che tu non abbia scritto proprio "mel(a|e)" non lo riconoscerà


    forse tu volevi usare delle espressioni regolari, quindi dai uno sguardo qui:
    http://php.net/manual/en/function.preg-match.php

  3. #3
    Utente bannato L'avatar di Ht28
    Registrato dal
    May 2006
    Messaggi
    1,544
    Originariamente inviato da philbert
    mi sembra normale...
    con
    Codice PHP:
    array ("mel(a|e)","per(a|e)","''"); 
    tu stai dicendo che le parole proibite sono
    "mel(a|e)" e "per(a|e)"
    quindi quando poi fai il confronto a meno che tu non abbia scritto proprio "mel(a|e)" non lo riconoscerà


    forse tu volevi usare delle espressioni regolari, quindi dai uno sguardo qui:
    http://php.net/manual/en/function.preg-match.php
    Ho guardato, ma non ci capisco molto, come lo posso applicare al mio array in modo che viene riconosciuto sia da php e js?

  4. #4
    praticamente devi fare qualcosa del genere


    Codice PHP:
    if (preg_match ($parola,$stringa)== 1){
    $errore .= "La parola $parola non è ammessa ";
     } 
    però non so a cosa ti serva che te lo scriva io se poi non hai capito cos'è e come si usa preg_match...

  5. #5
    Utente bannato L'avatar di Ht28
    Registrato dal
    May 2006
    Messaggi
    1,544
    Originariamente inviato da philbert
    praticamente devi fare qualcosa del genere


    Codice PHP:
    if (preg_match ($parola,$stringa)== 1){
    $errore .= "La parola $parola non è ammessa ";
     } 
    però non so a cosa ti serva che te lo scriva io se poi non hai capito cos'è e come si usa preg_match...
    Ho già una regex che controlla la mail, scusa ma dove metto le parole mela, pera?

  6. #6
    //parole proibite (vedi parole-proibite.php)

    l'hai scritto tu, no?

  7. #7
    Utente bannato L'avatar di Ht28
    Registrato dal
    May 2006
    Messaggi
    1,544
    Originariamente inviato da philbert
    //parole proibite (vedi parole-proibite.php)

    l'hai scritto tu, no?
    Forse non mi ero spiegato bene, mi servirebbe una regex al posto di questo array, con la regex controllo meglio le parole

    Codice PHP:
    $parole = array ("mel(a|e)","per(a|e)","''"); 

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.