postavkin

Рейтинг
601
Регистрация
06.01.2009
LEOnidUKG:
Можно я скажу мнение?

Структуру БД меняйте. То что у вас, это уныние. Структура БД не справляется со своей задачей. Разбивайте эти размеры на каждый столбец и потом поиск будет точный, быстрый и не напрягающий БД.

Полностью согласен.

Т.е. нужно сделать так?

Таблица БД содержит 10 полей для вариантов размеров, в которых будут перечисленны размеры (т.е. одно поле раскидать в 1-10 ячеек, смортя сколько вариантов размеров для данной коллекции). Да?

Потом при поиске делать отбор типа такого

WHERE pole1='10*10' OR pole2='10*10' OR pole3='10*10' ...OR pole10='10*10'

так будет проще базе?

---------- Добавлено 08.11.2013 в 16:03 ----------

freezebreeze:
Довольно сложная регулярка получается. Неповоротливая в дальнейшем использовании.
Лучше структуру поменять.

Согласен, поэтому на текущий момент сделал так.

1. вынимаю все id из таблицы и их варианты размеров

2. строку с размерами редактирую средствами php

3. строку с размерами проверяю на присутствие "10*", "*10," и т.д.

4. если присутствует - заношу id в новый массив

5. вынимаю из бд нужные данные по отобранным id

freezebreeze:
используйте RLIKE вместо LIKE.
Регулярку сами составите?

Регулярки не умею. Да у меня тут бред получается.

Думаю, может брать все строки, а потом разбирать средствами php и проверять размеры.

А то вот что получается


$result = mysql_query("SELECT id FROM table WHERE razmery LIKE '10*%' OR razmery LIKE '%*10'
OR razmery LIKE '10,%' OR razmery LIKE '%*10,%' OR razmery LIKE ', 10*%' OR razmery LIKE ', 10,*%'");

LIKE по порядку

1-й 10* в начале строки

2-й *10 в конце строки

3-й 10, в начале строки

4-й содержит *10,

5-й в строке есть , 10*

6-й в строке есть , 10,

Средствами php так думаю. Как считаете - может так лучше?

Берем всю строку - в начало добавляем пробел, в конец запятую.

Дальше смотрим содержит ли строка [ 10*] [ 10,] [*10,]

Обработать нужно примерно 5000 строк.

3-й вариант. поправить записи в БД, т.е. сделать в БД в начало добавляем пробел, в конец запятую.

foran:
Капча вообще с катушек съехала. На каждый запрос вылезает уже.

А регион у Яндекса не съехал с катушек?

У меня не правильно регион определяет.

TF-Studio:
Вот совершенно не стоит так делать!

Прошу прощения, как именно не стоит делать? Спасибо

Не стоит выполнять код содержащийся в таблице БД, на случай если инъекцией загонят дрянь какую-нибудь?

nezabor:
зачем вы в кавычки переменную то взяли

Как здесь /ru/forum/comment/12307943

хотя я может не правильно понял замысел.

Собственно, если

eval ($kontent);

то тоже не выводит.

bukachuk:
eval('?>На этой странице Вы можете ознакомиться с последними новинками производителя <? echo "$name_proizvoditel"; ?> и заказать любой из перечисленных ниже товаров у нас.<?');

Сделал тестовую страницу.

Поле таблицы БД такое


Всем привет.
<?
$stroka = "Желаем успехов.";
echo $stroka;
?>
Всем пока.

Получили поле в переменную $kontent.

Теперь в коде страницы делаем

<?

//echo $kontent;

eval ('$kontent');

?>

не выводит ничего.

я ещё буду пробовать разные комбинации, но пока не получается

спасибо

Спасибо большущее. Я поискал, но не знал что именно искать. СПасибо ещё раз.

---------- Добавлено 05.11.2013 в 16:22 ----------

Хелпзонович:
eval ($kontent);

Блин, нет, не получается, если в поле (а в итоге в переменной) скомбинированы просто текст и код, то eval не выводит ничего.

ChernovGM:
Ну хотя бы вот такой ;)

Это же надо их столько шлепать. Ужас. Но в любом случае, The WishMaster молодца.

Он знает, что делает. Лично я с ГС тоже как то не умею работать. Правда и бабла не рублю, но что умею - то умею.

Evgeny Smirnoff:

Если привязать все эти города, в других регионах будет ранжироваться точно так же как и до привязки.

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

---------- Добавлено 05.11.2013 в 01:22 ----------

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

Без уникального контента на субдомене вообще никак не обойтись? Я имею ввиду - карточки товаров обязательно нужно наполнять уником для каждого региона?

rieltor:
Почему он должен их склеить? Почитайте у ПС, что такое зеркало и в каких случаях сайты склеиваются.

ИМХО, как раз таки все на лицо, для того, чтобы сайты ПС склеила (имеется ввиду по стуку в том числе).

Одинаковые товары, продавец товаров один и тот же.

Поэтому и спрашиваю.

Хотелось бы услышать от вас - какие есть причины на то, чтобы не клеить сайты?

Всего: 5509