Guestbook con file singolo o multipli?

  • Creatore Discussione Creatore Discussione Shyson
  • Data di inizio Data di inizio
ciao
allora eccho dove è l'inghippo
tu non hai nel db http://[Sito no good] ma http://mela.com, quindi prima di sostituire
http://[Sito no good] con [Sito no good]
devi trasformare http://mela.com in http://[Sito no good]
per quello alcuni post fa ti dicevo che l'iseale è fare le eventuali modifiche al messaggio non a valle quando stampi, ma ha monte prima che il messaggio venga salvato.
visto che nel form dove l'utente scrive il messaggio hai il campo per inserire l'eventuale sito è li che devi intervenire, tutto il resto viene di conseguenza

L'ho messo qui ma è come prima

PHP:
if($errore==""){ 
$riga['messaggio'] = str_ireplace("http".chr(47).chr(47)."[Sito no good]", "[Sito no good]", $riga['messaggio']);   
//Scrive i dati all'interno della tabella del db
$q="INSERT INTO guest_form(data_locale,dataGmt,nome,suoemail,citta,url,country,ip,bandierina,messaggio)
VALUES('$data_locale','$dataGmt','$nome','$suoemail','$citta','$url','".$countries[$two_letter_country_code][1]."','$ip','$bandierina','$messaggio')"; 
// Lancio la query         
$ris=mysql_query($q);  

...
 
Ho trovato un punto nella pagina dove i codici stampano i tag nel db, ho messo così: se vado a capo nel db stampa <br /> perciò funziona.

Ma il nostro codice stampa sempre la stessa cosa: nel db il sito proibito e nel messaggio http://[Sito no good]

PHP:
$riga['messaggio'] = str_ireplace("http".chr(47).chr(47)."[Sito no good]", "[Sito no good]",$riga['messaggio']);   

$messaggio = nl2br($messaggio);
 
ciao
mancano i :
$riga['messaggio'] = str_ireplace("http:".chr(47).chr(47)."[Sito no good]", "[Sito no good]",$riga['messaggio']);
se non è quello mi arrendo
 
ciao
mancano i :
$riga['messaggio'] = str_ireplace("http:".chr(47).chr(47)."[Sito no good]", "[Sito no good]",$riga['messaggio']);
se non è quello mi arrendo

Non funziona, il punto è che quando abbiamo messo questo codice nel campo url, questo funziona anche se nel db scrive il nome del sito proibito.

Non si potrebbe creare un codice simile per il campo messaggio?

PHP:
$replacements1 = "[Sito no good]"; 
$tolgo_http_www=array('http://', 'www.'); 
$riga['url'] = trim(str_ireplace($tolgo_http_www,"",$riga['url']));
$riga['url'] = preg_replace($sitiArray, $replacements1, $riga['url']); 
if($riga['url'] == "") { 
    echo "<div class=\"site\"><span class=\"voci2\">Sito:</span><span style=\"margin-left:11px; color:#a8a8a8; text-shadow:0px 1px 0px white;\">-</span></div>"; 
}elseif($riga['url'] == "[Sito no good]") { 
    echo "<div class=\"site\"><span class=\"voci2\">Sito:&nbsp;&nbsp;</span><span class=\"badWord\">[Sito no good]</span></div>"; 
}
else { 
    $riga['url1']="http://www.".$riga['url'];
//Se la stringa è 12 caratteri o più (con lo spazio interno), viene accorciata a 9 e mette i 3 puntini, TOT a video 12
    if(strlen($riga['url']) > 12) { 
        $riga['url']=substr($riga['url'],0,9)."..."; 
    } 
    echo "<div class=\"site\"><span class=\"voci2\">Sito:</span><a class=\"carattere-2\" href=\"".$riga['url1']."\" target=\"_blank\">http://".$riga['url']."</a></div>"; 
   }
 
ciao
non mi sono dimenticato, ma ho un periodo alquanto incasinato.
potresti provare

PHP:
<?php
//.....
if($errore==""){
$sitiArray=array('www.pinco.com','www.pallo.it');
$replacements2="[Sito censurato]";
$riga['messaggio'] = preg_replace($sitiArray, $replacements2, $riga['messaggio']); 
$riga['messaggio'] = str_ireplace("http".chr(47).chr(47)."[Sito no good]", "[Sito no good]", $riga['messaggio']);   
//Scrive i dati all'interno della tabella del db
//......qui fai l'insert...
?>
prova e sappimi dire
 
ciao
non mi sono dimenticato, ma ho un periodo alquanto incasinato.
potresti provare

PHP:
<?php
//.....
if($errore==""){
$sitiArray=array('www.pinco.com','www.pallo.it');
$replacements2="[Sito censurato]";
$riga['messaggio'] = preg_replace($sitiArray, $replacements2, $riga['messaggio']); 
$riga['messaggio'] = str_ireplace("http".chr(47).chr(47)."[Sito no good]", "[Sito no good]", $riga['messaggio']);   
//Scrive i dati all'interno della tabella del db
//......qui fai l'insert...
?>
prova e sappimi dire

Non va bene, lo lascio come prima
 

Discussioni simili