Post параметры

Тема в разделе "PHP", создана пользователем unsiker, 15 окт 2008.

Статус темы:
Закрыта.
Модераторы: latteo
  1. unsiker

    unsiker

    Регистр.:
    6 июн 2008
    Сообщения:
    465
    Симпатии:
    172
    Есть один ресурс на котором много информации приблизительно 100000 записей и выводятся они по 10 записей на страницу. страница которая их генерирует имеет вид

    somesite.ru/somefile.php?a=10
    somesite.ru/somefile.php?a=20
    somesite.ru/somefile.php?a=30

    то есть выводит по 10 записей начиная с параметра "a" подскажите есть ли какая то возможность дернуть не 10 записей, а к примеру 100 или 1000 строк за раз?
     
  2. ewg777

    ewg777

    Регистр.:
    6 авг 2007
    Сообщения:
    763
    Симпатии:
    321
    Вы вообще понимаете, что написали?
    Кто?
    Поясните, если хотите получить ответ. И это никакой не POST. Это GET.
     
  3. megadude

    megadude

    Регистр.:
    6 сен 2006
    Сообщения:
    184
    Симпатии:
    65
    Нельзя вытянуть больше, так как параметр а только указывает MySQL запросу с какой записи начинать выборку. А по 10 он берет потому, что в нем есть ограничитель LIMIT 10. Изменить это ты никак не можешь(такое делается только SQL инъекцией)
     
  4. unsiker

    unsiker

    Регистр.:
    6 июн 2008
    Сообщения:
    465
    Симпатии:
    172
    на сранице выводися к примеру
    somesite.ru/somefile.php?a=10
    выведет
    11. запись 11
    12. запись 12
    13.запись 13
    ................
    21. запись 21

    А мне нужно как то передать туда параметр так что б мне вывело
    11. запись 11
    12. запись 12
    13.запись 13
    ................
    21. запись 21
    22. запись 22
    23. запись 23
    ................
    100. запись 100
    101. запись 101
    и т.д

    Сори может и ошибся. Но вопрос остается в силе
     
  5. vaad2

    vaad2 Постоялец

    Регистр.:
    18 дек 2006
    Сообщения:
    60
    Симпатии:
    9
    "а" в данном случае, как я понял, точка отсчета.
    при чем тут кол-во записей?
    хочется выдернуть больше - нужен парсер, но он тоже будет вытаскивать порциями по 10 записей (или сколько там зашито).
     
  6. megadude

    megadude

    Регистр.:
    6 сен 2006
    Сообщения:
    184
    Симпатии:
    65
    Повторяю :) Парамер а(как и ЛЮБОЙ другой, передаваемый ТОБОЙ) НИКАК не влияет на количество результатов на странице
     
  7. virtualbrest

    virtualbrest

    Регистр.:
    6 май 2007
    Сообщения:
    210
    Симпатии:
    18
    Так, а что нам мешает написать свой скрипт, который переберет все a от 10 до 100 и вываедет по очереди всю информацию? Помоему реально. А вот если надо 6 к примеру или там 8, уже не покатит, а 100 - просто:

    В цикле переменная 10 до 100 шаг 10
    Запрос к старичке?a=переменная
    вываодим результат
    конец цикла

    Это был алгоритм, немного грубо, но результат тот что просил.
     
  8. a_n_d_y

    a_n_d_y

    Регистр.:
    26 мар 2006
    Сообщения:
    465
    Симпатии:
    61
    Как это результат тот?
    Это нереально, причину тоже написали. LIMIT прописан в запросе!!!
     
  9. unsiker

    unsiker

    Регистр.:
    6 июн 2008
    Сообщения:
    465
    Симпатии:
    172
    хорошо, а как быть когда нужно вытащить 100000 записей, это 10000 запросов по 48 кб тескта на странице, итого 468 Мб. Трафа мне не жалко, но как то подход не програмистический.

    Тут один человек написал про sql инъекцию, возможно кто то может просветить меня по этой тематике. Так как сам читал, но не разу не делал, вот и щас гуглю на предмет документации.
     
  10. Liver

    Liver

    Регистр.:
    24 сен 2008
    Сообщения:
    316
    Симпатии:
    91
    Да. да. да. потому что есть возможность указать с какой позиции выбирать но если нет переменной для указания сколько выбирать (может быть в урле как в гугле, может быть в настройках профиля на сайте, если таковое есть), то никак не выбрать больше за раз, чем задумано
    SQL иньекция это когда при плохой проверке входных данных они сразу попадают в SQL запрос. И тогда можно передать свой запрос, который и выполнится. но это уже хак и вероятность удачи стремиться к нулю.

    К примеру у вас запрос somesite.ru/somefile.php?a=10
    И на сайте забыли проверить что $_GET['a'] это только число.
    А выбирается оно примерно так
    SELECT * FROM table LIMIT a, 10. И в теории можно передать somesite.ru/somefile.php?a=;DROP table и этот запрос попадет вместо а в запрос.
    Выполнится он или нет зависит от запроса и настроек на сервере.
    Но в вашем случае, похоже не стоит на это надеятся.
     
Статус темы:
Закрыта.