SQL запрос для удаления блока Adsense

SEO-MAN
На сайте с 25.06.2007
Offline
187
856

Когда то вручную на одном форуме своем вставил порядка 200 блоков Adsense в разные посты на одном сайте на джумбле.

UPDATE jos_content SET fulltext = REPLACE (fulltext,'<!--

google_ad_client = "ca-pub-6111111111111111119";

/* 160x600, русбой стоя */

google_ad_slot = "91111111113";

google_ad_width = 160;

google_ad_height = 600;

//-->','')

Проблема, как раставить экранирующие ковычки? Или регулярное выражение составить?

Форум сео (http://forum-seo.net) для новичков автоматическая регистрация в 30000 каталогах за 5$ (/ru/forum/157861) Нужна доработка 2 досок объявлений - avtopmr.net, pmrdom.com (вип объявления и удаление дублей)
M
На сайте с 12.11.2005
Offline
122
#1

А что mysql-то говорит?

С кавычками всё должно быть нормально, проблема скорее всего со слешами "/" - их экранировать вот так "\/", да с переходами строк "\n".

С регулярными выражениями знаком слабо, но можно реплейсить куски текста, а не код целиком, потом уже работать с тем, что осталось.

balaboler
На сайте с 15.11.2012
Offline
24
#2

Можно не воевать с mysql, а запрашивать php скриптом тексты статей, делать замену и отправлять обратно

Киш мири ин тухес унд зай гезунд
SEO-MAN
На сайте с 25.06.2007
Offline
187
#3

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'fulltext = REPLACE (fulltext,'&lt;!-- google_ad_client = &quot;ca-pub-611111111111111111' at line 1

Мне удобно в пхпадмине сделать 1 запрос.

---------- Добавлено 17.11.2012 в 17:14 ----------

Вариант

UPDATE `bersek1_dkino`.`jos_content` SET `fulltext` = REPLACE (`fulltext`,'<script type="text\/javascript"><!--\n
google_ad_client = "pub-68150000000";\n
\/* 336x280, Квадрат мульты *\/\n
google_ad_slot = "710000";\n
google_ad_width = 336;\n
google_ad_height = 280;\n
\/\/-->\n
<\/script>\n
<script type="text\/javascript"\n
src="http:\/\/pagead2.googlesyndication.com\/pagead\/show_ads.js">\n
<\/script>','')

корректный но ничего не находит ....

balaboler
На сайте с 15.11.2012
Offline
24
#4

Единоразовая задача по идее требует того, чтобы максимально быстро быть решенной и забытой, но вам виднее конечно.

wwwwww
На сайте с 29.04.2011
Offline
195
#5

Сделайте дамп базы. Откройте в Notepad++, например, и регуляркой все почистите.

Только качайте 6 версию (если ниже, то регулярки не полностью совместимы с PCRE).

Потом заменяйте на пустышку, используя регулярное выражение, например


<script type="text\/javascript"><!--\ngoogle_ad_client(.*)[1,400]pagead\/show_ads.js">\n
<\/script>

Не забудьте поставить галочку (V новые строки).

Потом заливайте заново в базу дамп.

На живую править SQL базу не гуманно, и не безопасно.

Видишь? Свободная подпись.
SEO-MAN
На сайте с 25.06.2007
Offline
187
#6

Ну объявление от адсенс везде одинаковое, зачем мне регулярка? Просто замену в дампе.

"На живую править SQL базу не гуманно, и не безопасно." - почему же?

Наверно мне бы регулярку для пхпадмина ...

IL
На сайте с 20.04.2007
Offline
435
#7
SEO-MAN:
Наверно мне бы регулярку для пхпадмина ...

В mysql нет замены по регулярке. Проще сохранить дамп (таблицы?), заменить в блокноте и залить дамп обратно. про Бэкап не забыть.

Делов на 5 минут.. а тема уже не один день висит..

p.s. можно, конечно strpos + substr.. но ИМХО замена надёжнее.

... :) Облачные серверы от RegRu - промокод 3F85-3D10-806D-7224 ( http://levik.info/regru )

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий