Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Zboga mi PHP replace() ne brise tagove u MySQL bazi

[es] :: PHP :: Zboga mi PHP replace() ne brise tagove u MySQL bazi

[ Pregleda: 2071 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

pakito
Paun Es Durlic
kustos etnolog (u penziji!) i programer
naivac
Majdanpek * Pančevo

Član broj: 91953
Poruke: 273
*.dynamic.isp.telekom.rs.

Sajt: www.PaunDurlic.com


+3 Profil

icon Zboga mi PHP replace() ne brise tagove u MySQL bazi26.08.2012. u 13:21 - pre 142 meseci
Za obradu reči koristim jedan WYSIWG editor.
Posle svake izmene, naročito kada se obriše neka reč koja je bila "tagirana", ostaje u html kodu njen tag.
Vidim ga u bazi kao, na primer: <span style=\"font-weight: bold;\"></span>.

Pokušao sam da sve takve prazne tagove obrišem naredbom:
Code:
$unos="UPDATE tabela SET polje = replace(polje, '<span style=\"font-weight: bold;\"></span>', '')";

ali bez uspeha.

1. U čemu je problem?
2. Kako da obrišem ove tagove?
 
Odgovor na temu

plague
Software Developer
Auckland, NZ

Član broj: 46734
Poruke: 623
*.aDSL.Verat.Net.



+373 Profil

icon Re: Zboga mi PHP replace() ne brise tagove u MySQL bazi26.08.2012. u 14:24 - pre 142 meseci
Kako me secanje sluzi, ako string $unos zapocinjes sa dvostrukim navodnicima, dalje u tom stringu kada koristis \" on to tumaci kao duple navodnike unutar stringa. Ttako da ce baza dobiti zapravo sledeci string:
Code:
<span style="font-weight: bold;"></span>

Posto tebi u bazi ima i \, moraces da koristis:
Code (php):

$unos="UPDATE tabela SET polje = replace(polje, '<span style=\\\"font-weight: bold;\\\"></span>', '')";
 
Odgovor na temu

pakito
Paun Es Durlic
kustos etnolog (u penziji!) i programer
naivac
Majdanpek * Pančevo

Član broj: 91953
Poruke: 273
*.dynamic.isp.telekom.rs.

Sajt: www.PaunDurlic.com


+3 Profil

icon Re: Zboga mi PHP replace() ne brise tagove u MySQL bazi26.08.2012. u 15:15 - pre 142 meseci
Na žalost, sa \\\" neće!
Probao sam sa =\\" - prijavljuje grešku!
 
Odgovor na temu

maksvel

Član broj: 107376
Poruke: 2417

Jabber: maksvel
Sajt: maksvel.in.rs


+161 Profil

icon Re: Zboga mi PHP replace() ne brise tagove u MySQL bazi26.08.2012. u 16:32 - pre 142 meseci
Zvuči šašavo, .. ali, pokušaj sa još po dva sleša, znači:

Code (php):

$unos="UPDATE tabela SET polje = replace(polje, '<span style=\\\\\"font-weight: bold;\\\\\"></span>', '')";
 


Izgleda da MySQL, kad primi escape verziju od php-a, zahteva još jedan "krug".
 
Odgovor na temu

pakito
Paun Es Durlic
kustos etnolog (u penziji!) i programer
naivac
Majdanpek * Pančevo

Član broj: 91953
Poruke: 273
*.dynamic.isp.telekom.rs.

Sajt: www.PaunDurlic.com


+3 Profil

icon Re: Zboga mi PHP replace() ne brise tagove u MySQL bazi26.08.2012. u 16:50 - pre 142 meseci
Ja njemu:

Code:
$unos="UPDATE tabla SET polje = replace(polje, '<span style=\\\\"font-weight: bold;\\\\"></span>', '')";


A on meni:

Code:
Parse error: syntax error, unexpected T_STRING in /home/muzempe/public_html/vlaski.recnik/multi-replace.php on line 54


 
Odgovor na temu

maksvel

Član broj: 107376
Poruke: 2417

Jabber: maksvel
Sajt: maksvel.in.rs


+161 Profil

icon Re: Zboga mi PHP replace() ne brise tagove u MySQL bazi26.08.2012. u 17:09 - pre 142 meseci
Ja isprobao ovo:
Code (php):

...
$unos="UPDATE test1 SET text = replace(text, '<span style=\\\\\"font-weight: bold;\\\\\"></span>', '')";

mysql_query($unos);
...
 

(pet backslashova)
i obrisao je zapis <span style=\"font-weight: bold;\"></span>

(tabelu sam naslovio test1, a polje text)
 
Odgovor na temu

pakito
Paun Es Durlic
kustos etnolog (u penziji!) i programer
naivac
Majdanpek * Pančevo

Član broj: 91953
Poruke: 273
*.dynamic.isp.telekom.rs.

Sajt: www.PaunDurlic.com


+3 Profil

icon Re: Zboga mi PHP replace() ne brise tagove u MySQL bazi26.08.2012. u 17:58 - pre 142 meseci
Svaka čast, i hvala!
Zaista radi, čisti bazu bolje nego ministar Dulić Srbiju!

Ostaje nam još samo da skontamo logiku!?
 
Odgovor na temu

pakito
Paun Es Durlic
kustos etnolog (u penziji!) i programer
naivac
Majdanpek * Pančevo

Član broj: 91953
Poruke: 273
*.dynamic.isp.telekom.rs.

Sajt: www.PaunDurlic.com


+3 Profil

icon Re: Zboga mi PHP replace() ne brise tagove u MySQL bazi26.08.2012. u 18:02 - pre 142 meseci
Auf! Sad tek vidim da je u vašem prvom predlogu VEĆ BILO PET \\\\\, samo meni nedeljom brojačica ima slobodan dan! ;)
A ja izbrojao četiri! Oprostite, i hvala još jednom!
 
Odgovor na temu

maksvel

Član broj: 107376
Poruke: 2417

Jabber: maksvel
Sajt: maksvel.in.rs


+161 Profil

icon Re: Zašto mi PHP replace() ne brise tagove u MySQL bazi26.08.2012. u 22:53 - pre 142 meseci
Super!
I bez persiranja molim

Mala napomena, za svaki slučaj: pre isprobavanja raznoraznih upita nad bazom, obavezno treba napraviti bekap odgovarajućih tabela, da ne bude svašta.
 
Odgovor na temu

[es] :: PHP :: Zboga mi PHP replace() ne brise tagove u MySQL bazi

[ Pregleda: 2071 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.