![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| Sunvas |
|
|||
|
Соль и сахар ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3388 Регистрация: 12.3.2006 Где: Тосно Репутация: 8 Всего: 89 |
Есть код, который должен парсить странички сайта.
В результате выполнения функции getlink в переменную $m записывается двумерный массив (таблица) вида $m[N][n], где N - число от 1 до 5 (номер столбца); n - число от 0 до 24 - число от 0 до 24 (номер строки). После выполнения этого кода в базу записывается около 27000 строк. Почему? -------------------- Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их. |
|||
|
||||
| capitan |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 602 Регистрация: 27.2.2005 Где: Москва Репутация: 9 Всего: 13 |
Из этого кода ничего не понятно.
Весь код в студию. |
|||
|
||||
| Fally |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 265 Регистрация: 17.8.2006 Где: Dahla Репутация: 3 Всего: 4 |
Sunvas, здаётся мне что вся Ваша проблема здесь:
Если функция getlink() возвращает массив который перебирая нужно записать в БД, тогда зачем делать возвращаемое ф-цией значение в цикле? Если я прав, тогда сделайте вот так:
P.S. Согласен с автором предыдущего поста, побольше кода, пожалуйста... Это сообщение отредактировал(а) Fally - 24.4.2007, 17:40 |
||||
|
|||||
| Sunvas |
|
||||
|
Соль и сахар ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3388 Регистрация: 12.3.2006 Где: Тосно Репутация: 8 Всего: 89 |
Добавлено через 4 минуты и 7 секунд На сайте 10 страниц - они вида site.ru/doc1.html, site.ru/doc2.html и т.д. Вот и зациклил:
-------------------- Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их. |
||||
|
|||||
| Fally |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 265 Регистрация: 17.8.2006 Где: Dahla Репутация: 3 Всего: 4 |
В цикле сделайте помимо присваивания ещё и var_dump(m), и посмотрите на результат его вывода.. и сравните каждый вывод..
Это сообщение отредактировал(а) Fally - 24.4.2007, 17:46 |
|||
|
||||
| capitan |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 602 Регистрация: 27.2.2005 Где: Москва Репутация: 9 Всего: 13 |
а если так:
|
|||
|
||||
| Fally |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 265 Регистрация: 17.8.2006 Где: Dahla Репутация: 3 Всего: 4 |
Никакой разницы, если в теле цикла производится только одна операция, как у вас, то подойдёт и вариант без фигурных скобок, они (скобки) предназначены для создания блоков операция производящихся в цикле..
|
|||
|
||||
| capitan |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 602 Регистрация: 27.2.2005 Где: Москва Репутация: 9 Всего: 13 |
Fally,
Иногда код работает вроде как не по правилам. Сказывается мне что это не весь код. И где-то идёт пересечение счётчика $j или $i, где-то он обнуляется и цикл идёт заново. |
|||
|
||||
| Sunvas |
|
|||
|
Соль и сахар ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3388 Регистрация: 12.3.2006 Где: Тосно Репутация: 8 Всего: 89 |
Это весь код. Правда используется библитека MySql из SLAED CMS для работы с базой. Но не думаю, что именно она создает помехи. -------------------- Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их. |
|||
|
||||
| capitan |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 602 Регистрация: 27.2.2005 Где: Москва Репутация: 9 Всего: 13 |
Сделай так и увидешь сколько записей:
|
|||
|
||||
| Sunvas |
|
|||
|
Соль и сахар ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3388 Регистрация: 12.3.2006 Где: Тосно Репутация: 8 Всего: 89 |
Так тоже не помогло.. Да, значения добавляються медленно. Но если уже перевалило за 200, то уверен, что код не работает. -------------------- Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их. |
|||
|
||||
| capitan |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 602 Регистрация: 27.2.2005 Где: Москва Репутация: 9 Всего: 13 |
||||
|
||||
| Sunvas |
|
|||
|
Соль и сахар ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3388 Регистрация: 12.3.2006 Где: Тосно Репутация: 8 Всего: 89 |
Когда я писал - было 236, а сейчас проверил - 272. -------------------- Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их. |
|||
|
||||
| Fally |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 265 Регистрация: 17.8.2006 Где: Dahla Репутация: 3 Всего: 4 |
capitan, у меня насчёт пересечения параметров циклов тоже есть подозрение, но точно сказать не возможно... а насчёт фиг. скобок, никогда не встречался с неправильным выполнением инструкций записанных в них, но опять же всё возможно..
Sunvas, попробуйте без i-го цикла вот так:
так будет больше кода, НО: 1) избавитесь от лишнего цикла -> ускориться время работы скрипта 2) точно количество добавлений в БД 3) САМОЕ ВАЖНОЕ. Уменьшиться нагрузка на сервер БД, т.к. такие запросы, как у Вас идущие подряд, но почти идентичные выполняются медленнее, чем мой запрос который выполниться в моём примере. |
|||
|
||||
| capitan |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 602 Регистрация: 27.2.2005 Где: Москва Репутация: 9 Всего: 13 |
Теперь сделай так:
И увидишь где проблема: в твоём коде или в классе mysql. |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |