Un Evento Unico. 5 Sale. 27 Interventi. SEO, SOCIAL, E-Commerce, Mobile, Turismo.
CLICCA QUI e SCOPRI DI PIù X Chiudi
 
Forum GT: Condividiamo idee e conoscenza Forum GT: Condividiamo idee e conoscenza


Condividi questo contenuto nei Social Network:
Ti stiamo aspettando: Registrati subito e gratis. Entra a far parte di una delle comunità più attive in Italia. Se hai dimenticato i tuoi dati li puoi recuperare subito.


Vai indietro   Forum per Webmaster: Condividiamo Idee e Conoscenza > Cms > Wordpress > Templates per Wordpress
Benvenuto! Forum Regole FAQ Lista utenti Calendario Segna come letti


Rispondi
 
LinkBack Strumenti di discussione
Vecchio 15-12-09, 12:58   #1 (permalink)
User
 
Data di registrazione: Aug 2008
Messaggi: 10
Wordpress accessibile commenti duplicati

Ciao,

ho realizzato un tema accessibile per Wordpress, si chiama Santa Lucia e potete vederlo in opera (e fare il download) all'indirizzo wordpress.4elementi.info.

Per uniformare al template i messaggi di errore ho utilizzato due pagine intermedie (studiate per la verifica dei dati inseriti dall'utente nel formulario) che segnalano errore se non vengono inseriti nome, e-mail e messaggio e se si scrive un commento duplicato.

E qui la difficoltà: mi connetto al database e richiamo il contenuto dei campi della colonna che contengono il testo dei commenti

$query = "SELECT comment_content FROM wp_comments";
$result = mysql_query($query) or die(mysql_error());

assegno alla variabile $testo (nel contesto di un ciclo while) la ricerca dei contenuti

while($row = mysql_fetch_array($result)){
$testo = $row['comment_content'];

vado a raffrontare il testo del messaggio inserito nel formulario (che va col metodo post nella variabile $commento) con il testo ottenuto dalla query sui campi commento del database Mysql

if ($commento==$testo)
{
print "<p>Attenzione, esiste gia'un commento con lo stesso contenuto: probabilmente non l'hai scritto tu, se vuoi ritorna alla <a href=\"javascript:history.back()\">pagina precedente</a> e correggi il testo. Se il link di ritorno alla pagina non funziona, premi il pulsante \"indietro di una pagina\" del tuo <span lang=\"en\">browser</span></p>";
}

Non funziona a meno che i due commenti uguali siano scritti consecutivamente: eppure se scrivo con echo il contenuto delle variabile $testo e $commento vedo che corrisponde.

E' poco precisa la funzione di confronto if ($commento==$testo) fuori del ciclo while?

Grazie

Francesco
dalziani non in linea   Rispondi citando
Vecchio 15-12-09, 23:30   #2 (permalink)
User
 
Data di registrazione: Aug 2008
Messaggi: 10
Ho risolto (saggiamente consigliato) modificando la query in

$query = "SELECT comment_content FROM wp_comments WHERE comment_content='".$commento."'";
$result = mysql_query($query) or die(mysql_error());
$esiste=mysql_num_rows($result);
if($esiste >0){

Il problema era che essendo l'algoritmo inserito in un ciclo while, il confronto avveniva solo col primo commento estratto dal database.

Ciao

Francesco
dalziani non in linea   Rispondi citando
Rispondi
Tags: , , , ,



Strumenti di discussione

Regole di scrittura
Non puoi postare nuove discussioni
Non puoi rispondere alle discussioni
Non puoi allegare file
Non puoi editare i tuoi post

BB code is Attivo
smilies è Attivo
[IMG] il codice è Attivo
Il codice HTML è Disattivato
Trackbacks are Attivo
Pingbacks are Attivo
Refbacks are Disattivato
Vai al forum



Tutti gli orari sono GMT +3. Attualmente sono le 14:26.




Forum GT - © 2004-2009 GT idea S.r.l P.iva 02418200800 - Privacy/Disclaimer

SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.