Как добавить статью в wiki-движок программно

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

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

    Trezub Создатель

    Регистр.:
    27 дек 2007
    Сообщения:
    16
    Симпатии:
    0
    Установлен у себя на хосте mediawiki - родной движок wikipedia
    Задача - добавить статью программно, на php.

    Не получается эмулировать браузер, смотрю что передается при отправке формы и вижу

    Код:
     -----------------------------7d82bf2120590
    Content-Disposition: form-data; name="wpSection"
    
    
    -----------------------------7d82bf2120590
    Content-Disposition: form-data; name="wpStarttime"
    
    20080412102746
    -----------------------------7d82bf2120590
    Content-Disposition: form-data; name="wpEdittime"
    
    20080412102747
    -----------------------------7d82bf2120590
    Content-Disposition: form-data; name="wpScrolltop"
    
    0
    -----------------------------7d82bf2120590
    Content-Disposition: form-data; name="wpTextbox1"
    
    sdfsdfsdfsdf sdfsdf sdf sdf
    -----------------------------7d82bf2120590
    Content-Disposition: form-data; name="wpSummary"
    
    
    -----------------------------7d82bf2120590
    Content-Disposition: form-data; name="wpSave"
    
    Запи�ать �траницу
    -----------------------------7d82bf2120590
    Content-Disposition: form-data; name="wpEditToken"
    
    +\
    -----------------------------7d82bf2120590
    Content-Disposition: form-data; name="wpAutoSummary"
    
    d41d8cd98f00b204e9800998ecf8427e
    -----------------------------7d82bf2120590--
    \0
    
    Что за цифры мне не понятно, генерируются каждый раз разные. Пытаюсь передать в POST то, что взял из шоуформ, ничего не выходит. Медиавики говорит, мол, "это предварительный просмотр, текст еще не записан", словно я нажимаю на "предварительный просмотр", а не на "записать страницу"

    Повторюсь, что это я делаю не на википедии, а на установленном у себя вики-движке, на википедии задача не стоит такое делать. И возможно, можно что-то подкрутить у себя? Возможно прямо напрямую в sql пихать? Но там сложная структура....

    Что делать? Как быть?
    Может у кого-то был подобный опыт?

    Тема больше подходит, наверно, в раздел php pro, но туда я добавить топик не могу.
    Я просто в отчаянии, помогите.
     
  2. Trezub

    Trezub Создатель

    Регистр.:
    27 дек 2007
    Сообщения:
    16
    Симпатии:
    0
    Оказалось у mediawiki есть API.

    Но, опять возникли проблемы.

    читаю в мануале

    Код:
    Pages can be edited and created with action=edit 
    Код:
    Страницы могут быть изменены или созданы с помощью action=edit 
    посылаю на api.php методом POST action=edit, пишет

    Код:
    unknown_action: Unrecognised value for parameter 'action' 
     
  3. Trezub

    Trezub Создатель

    Регистр.:
    27 дек 2007
    Сообщения:
    16
    Симпатии:
    0
    Заработало.
    Поставил ночную сборку, и еще необходимо прописать $wgEnableWriteAPI = true; в LocalSettings.php
     
  4. -=ГрафТрахало=-

    -=ГрафТрахало=-

    Регистр.:
    10 апр 2008
    Сообщения:
    195
    Симпатии:
    51
    Сори если оффтоп...
    Как раз нуждаюсь в WiKi движке... поделитесь ссылочкой плиз!
     
  5. Trezub

    Trezub Создатель

    Регистр.:
    27 дек 2007
    Сообщения:
    16
    Симпатии:
    0
    http://www.mediawiki.org/wiki/MediaWiki - это родной движок, на котором работает сама википедия.

    У меня новый трабл с АПИ появился - авторизация, у них там заморочки с token'ом, пока не разобрался.
     
  6. tranzistor

    tranzistor Создатель

    Регистр.:
    16 дек 2006
    Сообщения:
    26
    Симпатии:
    3
    Спасибо за ссылочку) Тоже очень пригодился wiki движок
     
Статус темы:
Закрыта.