Autor | Zpráva | ||
---|---|---|---|
Petr Ká Profil |
#1 · Zasláno: 30. 1. 2014, 18:48:31
Ahoj,
potřeboval bych poradit s ukládáním a úpravou dat do databáze z wysivygu... Pokud uživatel někde zkopíruje text včetně vlastnosti background nebo background-color potřeboval bych je odstranit. Je to možné? Děkuji |
||
Taps Profil |
#2 · Zasláno: 30. 1. 2014, 18:52:46
Petr Ká:
pokud používáš TinyMCE, tak můžeš zkusit http://www.tinymce.com/wiki.php/Plugin3x:paste |
||
Petr Ká Profil |
Právě že ne, používám jQuery scEditor
Spíš bych uvítal nějaké PHP řešení při zpracování před uložením dat do DB |
||
Taps Profil |
#4 · Zasláno: 30. 1. 2014, 21:03:23
Petr Ká
zkus $output = preg_replace('/(<[^>]+) style=".*?"/i', '$1', $input); |
||
Str4wberry Profil |
#5 · Zasláno: 30. 1. 2014, 21:05:26
|
||
Petr Ká Profil |
#6 · Zasláno: 31. 1. 2014, 09:00:15
Taps:
No to ale přepíšu celej style ne? Potřeboval bych v tom style vyhledat : background* po středník (pokud je) a nahradit ho za "" (prázdný znak, smazat) Str4wberry: No to je vážně kanon na mouchu - potřebuji jen smazat bg vlastnost :) |
||
DJ Miky Profil |
Mohlo by to jít takhle (nutné PHP >= 5.3):
$output = preg_replace_callback( '~style="[^"]+"|style=\'[^\']+\'~is', function($match) { return preg_replace( '~(?<=["\';])\s*background[-a-z]*\s*:[^;]*(?:;|(?=[\'"]))~is', '', $match[0] ); }, $input ); background-image: url('adresa;parametr'); (středník v adrese obrázku na pozadí, případně ještě bez apostrofů okolo),
který ale není běžný. Vnořený regulární výraz je kvůli možnosti více background* vlastností v rámci jednoho style . Možná by to šlo nějak napasovat i do jednoho.
|
||
Časová prodleva: 11 let
|
0