postavkin

Рейтинг
601
Регистрация
06.01.2009
Алексей Питерский:
Я пытался привязать, но запутался и сдался))) Нв мэйле за 2 минуты все получилось, т.к. там все просто и логично, для людей....

Там всего то действий. Входите в аккаунт, клик на адрес почты, в выпадающем меню --> "управление аккаунтом", и на странице указать номер телефона. Всё.

ps. Друзья. Один важный комментарий к первому посту!!! Конечно, проблема возникает в тех случаях когда вы указали данные при регистрации "от балды". Фамилию, имя, дату рождения, адрес и т.д. Если вы передаете абсолютно все достоверные данные, то проблем с возобновлением работы аккаунта не будет.

---------- Добавлено 25.03.2017 в 11:26 ----------

Jaf4:
знакомый, у которого 6 номеров телефонов не может быть хорошим.

У меня 3 тлф. И что? Я плохой человек? :) Это же не критерий.

Телефоны исключительно для бизнеса. У него тоже.

---------- Добавлено 25.03.2017 в 11:34 ----------

awasome:
Почаще проверяйте раздел безопасность на наличие левых ip.

И что? Если даже увидите левый ip, номер уже зарегистрируют. Опять же, сейчас в своем другом аккаунте посмотрел то, что Вы говорите. Там 100500 записей, а кнопки "показать левые ip" нету.

Zegeberg:
Это, действительно, сложно. Не каждый так на раз вспомнит номер своего телефона. Записывать на стенке надо.

Специально для Вас поправил пункт №2. У моего хорошего знакомого 6 номеров тлф.

Да и не это главное, главное в п.3.

Aisamiery, для меня это сложновато. Я сделал через ассоциативный массив. Далее в цикле берутся id и характеристики из таб2 и сверяются с данными в массиве. Что не верно - корректируется. Время выполнения 2сек. Много ли это я не знаю.

Sitealert:
Насколько я вижу, дальше [0] дело не идёт. Этот элемент только память жрёт. Правильнее было бы так:
$idtov = $row['pole1'];

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

$mass[$id] = array("A"=>"$A", "B"=>"$B", "C"=>"$C", и т.д. 30-ть характеристик

Хотя, по моему это тоже самое что и Вы написали...

Malcolm:
Правильнее будет вообще не проверять все 30 тысяч строк в массиве, а перестроить SQL запрос так, чтобы он сразу нужные строки возвращал. Т.е. в сам запрос добавлять условия проверки, соответствует характеристика нужной или нет.

Не представляю как это возможно. [ATTACH]160167[/ATTACH]

Ведь именно, что нужно проверить каждый id в таб2, все ли его характеристики сходятся с характеристиками из таб1.

jpg 160167.jpg
danforth:
Вам нужна пакетная обработка, или же расширять лимиты на память. Но вообще, конечно, лучше все таки пакетно обрабатывать.

Мне подсказали вариант, что просто нужно как то обойтись без этих массивов.

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

ps Нет, все таки в цикле не получается, слишком долго все выполняется, что в итоге не выполняется.

Потому что он с каждым новым id из таб1, ищет такой же в таб2 каждый раз теперь, ищет и проверяет правильность данных(идет сравнение характеристик товара с id таким-то в таб1 и таб2, более 30-ти характеристик)
А раньше было просто в массиве все из первой, он шел в таб2 и тупо все по порядку id проверял.


---------- Добавлено 09.02.2017 в 20:09 ----------

Aisamiery:
как вариант вы можете не создавать массивы вообще. Для чего вы их делаете?
Нет возможности сразу вернуть дескриптор запроса и уже там где вы выводите массивы, обработать циклом while сам дескриптор?

Отвечаю цитатой того, что я написал чуть выше. Как раз попробовал. Не получается.


ps Нет, все таки в цикле не получается, слишком долго все выполняется, что в итоге не выполняется.
Потому что он с каждым новым id из таб1, ищет такой же в таб2 каждый раз теперь, ищет и проверяет правильность данных (идет сравнение характеристик товара с id таким-то в таб1 и таб2, более 30-ти характеристик)
А раньше было просто в массиве все из первой, он шел в таб2 и тупо все по порядку id проверял.

ps сравниваю, а не просто перезаписываю данные, чтобы вывести на экран инфо, какие именно характеристики и у какого id не соответствуют верным.

---------- Добавлено 09.02.2017 в 20:15 ----------

Sitealert:
Лично я по строкам распилил бы - проще скрипт получится. Полей в таблице как-то многовато, кстати, но переделывать таблицы, я так понял, уже поздно.
И да, у Вас ещё много похожих двумерных массивов заложено - это тоже не есть гут. Это как бы впечатление, не вникая в цели и задачи.

Я правильно понимаю - распилить по строкам, т.е. 30 тыс товаров сверять пакетами по 5 тыс например.

Второе - похожие двумерные массивы? Нет. Я наверное правильно сделал.

Есть id товара. Есть 30 характеристик.

mass_nazvanie_harakteristiki[$id][0] = значение_характеристики.

Далее, получая просто поочередно все id из таб2 в цикле проверяем, у данного id сходство характеристик.

т.е. что то типа

if (id_характеристика_такая_то!=mass_nazvanie_harakteristiki[$id][0]) {...}

Sitealert:
А что подсказать-то надо? Что под массив резервируется хренова куча оперативной памяти? Или как запрос к БД по частям сделать?

Я понял. Так и думал что на куски разбивать. Просто показал тут кусок, что может быть мне бы сказали, что так то и так то можно ужать данные (ну типа того), что можно с массивами сделать так то и так то...Но если нет, то как я понимаю, только один вариант.

а именно, пилить запрос к бд на несколько...

а точнее, не все 30 тыс строк получать, а по 5 тыс строк, например, итого в 6 ть заходов.

или кстати вы про вариант, что получать данные не сразу по всем полям, а по 10-ть полей....

LEOnidUKG:
30 000 строк это вообще ни о чём. Большая это от 1 млн. записей. Вот тогда надо что-то думать.

У вас что-то тормозит или что?

Вообще не тормозит, просто подумал, может есть смысл сделать так, просто чтобы ускорить загрузку. Там в блок подгрузка товаров идет, а для того чтобы вывести идет сортировка 30000 строк по характеристикам из двух столбцов. Конечно, можно замерить, но я спросил, ответ услышал. Спасибо LEOnidUKG.

oleg3d:
кажись блин пора мне на пенсию

Все, ребята, отлично!

Блин, это мне пора очки одевать.

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

Проблему решил!!!Всем спасибо. Извините, что отвлек.

Sitealert:
Я на всех версиях PHP проверил. Везде нормальный результат получается.

Блин, прошу прощения, вот что показывает var_dump

float(1)

это что, надо в базе значение поля менять с числа, на строку? данные в массив берутся из колонки в базе.

oleg3d, а print(gettype() показывает

double

В базе в таблице назначено decimal(8,2)

Всего: 5509