Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it L'avatar di Gabbro
    Registrato dal
    Nov 2000
    Messaggi
    828

    censurare pezzi di testo

    Salve,
    ho un sito dove gli utenti possono inserire del testo che viene salvato in mysql su un campo text. Ho notato che molti utenti inserisco in questo campo i loro url e questo non mi và a genio.
    volevo sapere allora come fare una cosa di questo tipo. Esempio:
    l'utente inserisce:

    vieni sul mio sito www.taldeitali.it ......

    deve diventare

    vieni sul mio sito *****************

    ovvero deve censurare da www a .it (oppure da http a .it o .com etc etc)

    ciao

  2. #2

    ^_^

    siccome non sono capace di usare le espressioni regolari
    prova così

    $testo = "ciao come stai www.ciao.it molto bene";


    $extens = array('.it', '.com', '.net', '.org', '.ecc');

    for($i=0;$i<5;$i++) {

    $sel_a = explode("www.", $testo);
    $sel_b = explode("$extens[$i]", $sel_a[1]);

    $cerca = strstr($testo, $extens[$i]);
    if($cerca) {
    $rimpiazza = str_replace("www.$sel_b[0]$extens[$i]", "[Sito Censurato]", $testo);
    echo"$rimpiazza
    ";
    }

    }
    facce sapè! :-P

    Ho modificato il codice!

  3. #3
    Utente di HTML.it L'avatar di Emyl
    Registrato dal
    Jul 2004
    Messaggi
    250
    Ti consiglio di studiarti questo:

    http://www.php.net/manual/it/pcre.pattern.syntax.php

    e di applicare il tutto alla funzione preg_replace()

    "Ci sono 10 tipi di persone, quelli che capiscono i numeri binari...
    e quelli che non li capiscono."

  4. #4
    Utente di HTML.it L'avatar di Gabbro
    Registrato dal
    Nov 2000
    Messaggi
    828

    Re: ^_^

    Originariamente inviato da moonx2004
    siccome non sono capace di usare le espressioni regolari
    prova così

    $testo = "ciao come stai www.ciao.it molto bene";


    $extens = array('.it', '.com', '.net', '.org', '.ecc');

    for($i=0;$i<5;$i++) {

    $sel_a = explode("www.", $testo);
    $sel_b = explode("$extens[$i]", $sel_a[1]);

    $cerca = strstr($testo, $extens[$i]);
    if($cerca) {
    $rimpiazza = str_replace("www.$sel_b[0]$extens[$i]", "[Sito Censurato]", $testo);
    echo"$rimpiazza
    ";
    }

    }
    facce sapè! :-P

    Ho modificato il codice!



    ho provato a mettere così ma non dà alcun risultato. come mai?


    $testo = $messaggio_db;

    $extens = array(".it", ".com", ".net", ".org", ".tk");

    for($i=0;$i<=4;$i++) {

    $sel_a = explode("www.", $testo);
    $sel_b = explode("$extens[$i]", $sel_a[1]);

    $rimpiazza = str_replace("www.$selb[0].$extens[$i]", "[Sito Censurato]", $testo);

    }

    $messaggio_db = $rimpiazza;

  5. #5
    Utente di HTML.it L'avatar di Gabbro
    Registrato dal
    Nov 2000
    Messaggi
    828
    up

  6. #6
    riguarda meglio il codice che ti avevo postato perchè subito dopo ho fatto una modifica! vedrai che è diverso da quello che hai usato tu :-)

  7. #7
    Utente di HTML.it L'avatar di Gabbro
    Registrato dal
    Nov 2000
    Messaggi
    828
    ho controllato ed era diverso. ho messo così ma non fà nulla.
    Dove sbaglio?

    $testo = $messaggio_db;


    $extens = array('.it', '.com', '.net', '.org', '.tv');

    for($i=0;$i<5;$i++) {

    $sel_a = explode("www.", $testo);
    $sel_b = explode("$extens[$i]", $sel_a[1]);

    $cerca = strstr($testo, $extens[$i]);
    if($cerca) {
    $rimpiazza = str_replace("www.$sel_b[0]$extens[$i]", "[Sito Censurato]", $testo);


    }

    }

    $messaggio_db = $rimpiazza;

  8. #8
    manca echo"$messaggio_db";

    :-)

  9. #9
    Utente di HTML.it L'avatar di Gabbro
    Registrato dal
    Nov 2000
    Messaggi
    828
    ........
    ma no quello lo faccio dopo io, non l'ho postato perchè mi sembrava banale...
    non c'è un motivo per cui non mi funziona?

  10. #10

    ^_^

    l'echo deve stare dentro al ciclo, come ho fattoio nel codice che ti ho postato, dovrebbe essere quello il motivo

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.