- Home
- Categorie
- Coding e Sistemistica
- PHP
- Query per sostituire caratteri errati: possibile?
-
Ciao The_Lord_of_Diplomacy
Così a primo acchitto mi vien in mente di fare un SELECT salvando tutti i campi di una tabella in un array
in altri due array ti memorizzi, in pari ordine, i caratteri da sostituire e quelli con cui sostituirli
e poi procedi con la funzione str_replace()
CREDO dovrebbe andare
Facci sapere se risolvi
-
Io prima proverei ad estrare in dati e visualizzarli in PHP con utf8_decode
puoi così evitarti di cambiare tutto e lasci i dati in utf8
-
Grazie intanto per le risposte. Perdonatemi ma avrei bisogno di istruzioni più specifiche per entrambe le soluzioni. Non sono espertissimo in questo campo.
-
Dovresti fare un select con WHERE like i simboli e ciclarli facendo un update
-
direi che esiste una strade nettamente più semplice con una query SQL:
update nome_tabella set nome_campo = replace(nome_campo, 'à', 'à');
-
Riprendo questo vecchio post in quanto ho lo stesso identico problema del topic.
Anche a me il provider dopo un ripristno del database ha 'aggiunto' dei caratteri nel mio caso il backslash () in tutti i post con dei link, ecco un esempio:
Le foto sono di <a href="flickr.com/photos/bousserez/">Vincent Bousserez</a>.ho provato con questa query ma mysql mi trova sempre da dire:
UPDATEwp_posts
SETpost_content
= replace(post_content,'','');Qualcuno mi puo' aiutare? ringrazio anticipatamente
-
Che tipo di errore ti da?
La stringa esatta del database qual'è?
Da sostituire con?
-
Usa stripslashes().
-
@tigrone said:
Usa stripslashes().
Esatto, ieri sera ho provato un po' a studiare in questo mondo per me complicato e anch'io ho trovato questo comando ma non riesco ad usarlo direttamente sul database.
Conosci uno script php ad hoc che faccia una cosa del tipo 'rimuovi tutti i \ che trovi nei campi xx delle tabelle xx del database xx' oppure il comando diretto da usare in SQL ?
Grazie in anticipo e scusa il linguaggio elementare.
-
Ma perchè li vuoi eliminare dal db?
E' giusto che stiano lì.
-
Il motivo è scritto pochi post sopra.
Comunque ho risolto cosi' direttamente sul databaseUPDATE
wp_posts
SET post_content=REPLACE(post_content, '\', '')Grazie e ciao