Как выполнить JS код в PHP скрипте

Discussion in 'PHP' started by Edward, 1 Jul 2012.

  1. Edward

    Edward Banned

    Joined:
    11 Feb 2010
    Messages:
    329
    Likes Received:
    21
    Reputations:
    -1
    Здравствуйте. Необходимо получить результат выполнения небольшого JS скрипта. Если спарсить curl`ом страницу, где он находится, то естественно парсится JS код, а мне нужно получить HTML код, с уже выполненным JS кодом. Как это можно сделать в PHP скрипте ?

    Или быть может есть онлайн сервисы, куда можно вбить JS код и получитьHTML код, полученный в результате выполнения ?

    Увидел сервис learn.javascript.ru/play но так все равно нужен браузер, т. к. именно он выполняет JS код.
     
  2. GRRRL Power

    GRRRL Power Elder - Старейшина

    Joined:
    13 Jul 2010
    Messages:
    823
    Likes Received:
    185
    Reputations:
    84
    Для PHP есть эмуляторы JavaScript, которые позволяют выполнить некий JS-код и получить его результат. Сейчас названий не назову, пользовался довольно давно такими. Однако, если в JS-коде серьезная привязка к объектной модели HTML-документа, то такое может и не сработать.


    UPD: http://include-once.org/p/phpjs/ вот, например.
     
  3. Edward

    Edward Banned

    Joined:
    11 Feb 2010
    Messages:
    329
    Likes Received:
    21
    Reputations:
    -1
    Да там есть DOM. Приведенный пример не срабатывает. Попробовал еще j4p5, тоже к сожалению не сработал.
     
  4. Edward

    Edward Banned

    Joined:
    11 Feb 2010
    Messages:
    329
    Likes Received:
    21
    Reputations:
    -1
    Видимо нужно копать в сторону Human Emulator. Спасибо.
     
  5. Ereee

    Ereee Elder - Старейшина

    Joined:
    1 Dec 2011
    Messages:
    560
    Likes Received:
    370
    Reputations:
    267
    xmlHttpRequest
     
  6. buktor

    buktor New Member

    Joined:
    24 Jun 2012
    Messages:
    14
    Likes Received:
    0
    Reputations:
    0
    Незнаю но JS код у меня в PHP без проблем запускаеться.
    PHP по сути это язык програмирования о котором браузер даже и незнает весь PHP код обрабатываеться сервером и сервер в свою очередь после обработки передаёт в броузер JS код которого сам же браузер хорошо воспринимает.
    А значить js код должен работать и из PHP.
    Главное условие чтобы работал язык програмирования нужно иметь к ниму движок (интерпретатор) который можно подключить к серверу
     
    #6 buktor, 4 Jul 2012
    Last edited: 4 Jul 2012
  7. mironich

    mironich Elder - Старейшина

    Joined:
    27 Feb 2011
    Messages:
    733
    Likes Received:
    73
    Reputations:
    19
    Что еще в PHP у тебя запускаеться :eek:
     
  8. buktor

    buktor New Member

    Joined:
    24 Jun 2012
    Messages:
    14
    Likes Received:
    0
    Reputations:
    0
    mironich, ну язык perl в PHP я эщё непробывал :D
     
  9. Apeckou

    Apeckou Elder - Старейшина

    Joined:
    23 Jan 2007
    Messages:
    143
    Likes Received:
    11
    Reputations:
    0
    код запуска JS под PHP в студию в качестве освежителя воздуха, ибо попахивает бредом оО
     
  10. Jakeroid

    Jakeroid Member

    Joined:
    9 May 2009
    Messages:
    199
    Likes Received:
    12
    Reputations:
    1
    JS запускается в браузере, а не у тебя в php коде.
     
  11. mironich

    mironich Elder - Старейшина

    Joined:
    27 Feb 2011
    Messages:
    733
    Likes Received:
    73
    Reputations:
    19
    Развод какойто, у buktor все работает же.
    Не надо сеить сонительные мысли.
     
  12. Melfis

    Melfis Elder - Старейшина

    Joined:
    25 Apr 2011
    Messages:
    505
    Likes Received:
    105
    Reputations:
    53
    Может будет проще просто распарсить страницу на сервере и сделать то, что делает скрипт на js, раз уж он так сильно завязан на дом, то наверное не сложные вещи делает?
     
  13. Jakeroid

    Jakeroid Member

    Joined:
    9 May 2009
    Messages:
    199
    Likes Received:
    12
    Reputations:
    1
    PHP:
    $js_script "alert('Haha');";
    exec_js($js_Script);
    Так?
     
  14. Edward

    Edward Banned

    Joined:
    11 Feb 2010
    Messages:
    329
    Likes Received:
    21
    Reputations:
    -1
    Может быть, но я JS к сожалению не знаю, и поэтому не могу понять, что именно делает JS код. Но вообще он генерирует несколько div блоков, внутри картинки и ссылки.
     
  15. Jakeroid

    Jakeroid Member

    Joined:
    9 May 2009
    Messages:
    199
    Likes Received:
    12
    Reputations:
    1
    Показывай код. Может поможем.
     
  16. Melfis

    Melfis Elder - Старейшина

    Joined:
    25 Apr 2011
    Messages:
    505
    Likes Received:
    105
    Reputations:
    53
    Ну в таком случае я вижу только два способами решения проблемы:
    1. постишь сюда страницу, с которой собираешься парсить данные, что нужно в итоге, и если скрипты небольшие, то кто-нить (я или ещё кто) тебе объяснит что парсить.
    2. ты платишь тому кто знает жс (и может пхп).
     
  17. barnaki

    barnaki Elder - Старейшина

    Joined:
    2 Nov 2008
    Messages:
    676
    Likes Received:
    140
    Reputations:
    4
    не слушай никого. что значит не знаю js. никто не знает ничего изначально. прокачай.
     
  18. buktor

    buktor New Member

    Joined:
    24 Jun 2012
    Messages:
    14
    Likes Received:
    0
    Reputations:
    0
    Ты почитай повнимательней что я сказал - а имено

    Code:
    PHP по сути это язык програмирования о котором браузер даже и незнает весь PHP код обрабатываеться сервером и сервер в свою очередь после обработки передаёт в броузер JS код которого сам же браузер хорошо воспринимает.
    Я говорю что язык PHP интерпритируеться в сервере и передаёться в броузер у виде js кода - а сам js код броузер хорошо воспринимает
     
  19. buktor

    buktor New Member

    Joined:
    24 Jun 2012
    Messages:
    14
    Likes Received:
    0
    Reputations:
    0
    короче зачем всем спорить прочтите статью об взаимодействии PHP и JS вот тут http://www.php.su/articles/?cat=examples&page=063
     
  20. Melfis

    Melfis Elder - Старейшина

    Joined:
    25 Apr 2011
    Messages:
    505
    Likes Received:
    105
    Reputations:
    53
    Д все почитали, что ты написал, очень внимательно и поняли, что у тя каша в голове или же ты не умеешь нормально изъяснять мысли.
     
    #20 Melfis, 6 Jul 2012
    Last edited: 6 Jul 2012