![]() |
![]() |
|
| Condividi questo contenuto nei Social Network: |
|
Tweet |
|
|
|
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. |
||||
|
|||||||||
|
|
LinkBack | Strumenti di discussione |
|
|
#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 |
|
|
|
|
|
|
|
#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 |
|
|
|
| Tags: accessibile, commenti, duplicati, php, wordpress |
| Strumenti di discussione | |
|
|