Парсинг в Mysql разбивка по строкам

Тема в разделе "Инъекции в MySQL", создана пользователем inarkcorp, 2 фев 2018.

  1. inarkcorp

    inarkcorp New Member Пользователи

    Регистрация:
    11 сен 2014
    Сообщения:
    15
    Добрый день,
    подскажите, может кто уже сталкивался,
    есть страница, с нее выдираю повторяющейся границей парсинга 40 обычных ссылок и php скриптом вставляю в базу. Все 40 ссылок вставляются в одну ячейку с разделителем "," .

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

    Пробовал скрипт php вставлять в настройку повторяющейся границы и [VALUE] вставлять на место значения для ячейки в базе. Но вставляется собственной персоной "[VALUE]".
    Направьте в нужное направление, куда смотреть для решения этого
     
  2. napserious

    napserious Well-Known Member Пользователи Активирован

    Регистрация:
    16 окт 2015
    Сообщения:
    324
    Приложи скрипт текстом.
     
    inarkcorp нравится это.
  3. inarkcorp

    inarkcorp New Member Пользователи

    Регистрация:
    11 сен 2014
    Сообщения:
    15
    в CD
    Код:
    <PHP_SCRIPT=http://xxxxxxx.com/xxx/xxxxx/xxxxx.php>
    ID=
    date=[CD_DATE_YYYY]-[CD_DATE_MM]-[CD_DATE_DD] [CD_DATE_HH]:[CD_DATE_NN]:[CD_DATE_SS]
    urls=[DATAENCODE]<CD_CYCLE_GRAN_ALL!>[/DATAENCODE]
    </PHP_SCRIPT>
    сам php
    Код:
    $db = mysqli_connect("dbhost", "login", "pass", "dbname");
    mysqli_query($db, "SET NAMES utf8");
    $query = mysqli_query($db, "INSERT INTO dbname (ID, post_date, post_urls) VALUES ('$_POST[ID]', '$_POST[date]', '$_POST[urls]')");
    if(!$query){die('error query');}
    mysqli_close($db);
    при вставке на форум режется слово URL, изменил на URLS
     
    Последнее редактирование: 2 фев 2018
  4. napserious

    napserious Well-Known Member Пользователи Активирован

    Регистрация:
    16 окт 2015
    Сообщения:
    324
    Почему не задан ID?

    Вы передаете все как одну строку, строка: <CD_CYCLE_GRAN_ALL!> в которой все ссылки.
    Вам нужно разбить данную строку на массив.

    $urls= $_POST["urls"];
    $url = explode(",", $urls);

    "," - в данном случае запятая это разделитель ссылок.
    Теперь каждая ссылка имеет свою позицию в массиве: $url[0], $url[1], etc.

    Теперь через foreach закидываешь в базу по 1 элементу :)â

    Ссылки недоступны для гостей
     
    Последнее редактирование: 2 фев 2018
    Xpite, xLime и inarkcorp нравится это.
  5. inarkcorp

    inarkcorp New Member Пользователи

    Регистрация:
    11 сен 2014
    Сообщения:
    15
    ID - auto_increment.
    понял, очень сильно благодарю,
    вопрос решен
     
    Root и napserious нравится это.
  6. Xpite

    Xpite Member Пользователи

    Регистрация:
    13 мар 2017
    Сообщения:
    103
    Подскажите пожалуйста тем, кто не силен в php на простом примере
    Есть массив из цифр категорий: 4, 13, 21
    Нужно записать его в базу данных WordPress в таблицу wp_term_relationships
    Я использую такую форму
    mysql_query("INSERT INTO wp_term_relationships (object_id, term_taxonomy_id, term_order) VALUES ('$_POST[ID]', '$_POST[category]', '0')");
    Естественно у меня все цифры запихивает в "term_taxonomy_id"
    А как все таки сделать три (по кол-ву цифр категорий) вставки с одним POST[ID] и тремя разными POST[category] по 1 цифре?

    Заранее большое спасибо
     
  7. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Здравствуйте.

    Я тоже не знаю язык MySQL-запросов.

    Попробуйте почитать про команду INSERT в соответствующих документациях, например, в Ссылки недоступны для гостей
     
    Xpite нравится это.
  8. Xpite

    Xpite Member Пользователи

    Регистрация:
    13 мар 2017
    Сообщения:
    103
    Вот в этом посте писали вроде как то что нужно, но даже изучив документацию так и не понял как сделать insert этого массива... Учитывая что в одном случае массив будет состоять из 2-х цифр, а в другом из 5...
     
  9. Xpite

    Xpite Member Пользователи

    Регистрация:
    13 мар 2017
    Сообщения:
    103
    А все, чуть проявил настойчивости, разобрался, погуглил, спасибо большое за наводку!

    Если кому нужно будет например те же категории в WordPress по цифрам раскладывать, то вот такой код для работы с массивом:

    $cats= $_POST["category"];
    $cat = explode(",", $cats);
    foreach($cat as $value)
    {
    mysql_query("INSERT INTO wp_term_relationships (object_id, term_taxonomy_id, term_order) VALUES ('$_POST[ID]', '$value', '0')");

    }
     
    SEO_Tesla, napserious, xLime и ещё 1-му нравится это.
Similar Threads
  1. boodooboo
    Ответов:
    6
    Просмотров:
    2.887
  2. statu
    Ответов:
    2
    Просмотров:
    1.595
  3. koleso62
    Ответов:
    0
    Просмотров:
    1.114
  4. Lana
    Ответов:
    6
    Просмотров:
    1.489
  5. DginyVolshebnik
    Ответов:
    0
    Просмотров:
    1.102
Загрузка...

Поделиться этой страницей