【问题标题】:using php and curl to update mediawiki使用 php 和 curl 更新 mediawiki
【发布时间】:2009-06-01 23:48:03
【问题描述】:

我一直在编写一个 php 脚本来更新 mediawiki 条目,但是每当我运行它时,它似乎根本没有更新 wiki,只是返回未经编辑的文章页面。

我已经包含了一个首先登录 wiki 的部分,并且我已经成功地从 wiki 读取了信息,但我无法更新它。

我有什么遗漏或更好的东西吗?是否有一个现有的 php 包可用于更新 mediawiki。

提前致谢,

示例代码如下:

function curl_post_page($site, $post ) {
$headers = array();
$headers[] = 'Accept: image/gif, image/x-bitmap, image/jpeg, image/pjpeg';
$headers[] = 'Connection: Keep-Alive';
$headers[] = 'Content-type: application/x-www-form-urlencoded;charset=UTF-8'; 

//var_dump($post);
$cl = curl_init($site);
curl_setopt($process, CURLOPT_HTTPHEADER, $headers); 
curl_setopt($cl, CURLOPT_HEADER, true);
curl_setopt($cl, CURLOPT_VERBOSE, true);
curl_setopt($cl, CURLOPT_FAILONERROR, true); 
curl_setopt($cl, CURLOPT_POST, TRUE);
curl_setopt($cl, CURLOPT_POSTFIELDS, $post);
curl_setopt($cl, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($cl, CURLOPT_USERAGENT,"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT)");
curl_setopt($cl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($cl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($cl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($cl, CURLOPT_COOKIEFILE, "cookie.txt");

【问题讨论】:

    标签: php post curl mediawiki


    【解决方案1】:

    是否启用了 api 写入? ($wgEnableWriteAPI = false;) 1.14以下版本默认禁用。

    您是否收到任何errors 回复?

    【讨论】:

      【解决方案2】:

      【讨论】:

      • 虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接的答案可能会失效。
      • 添加了页面的 wikipedia 和 archive.org 档案——我相信 wikipedia 和 archive.org 比我的帖子所希望的更能成为这个内容的档案/镜像。十多年来,archive.org 上的互联网档案馆一直在提供这种性质的镜像。
      猜你喜欢
      • 2012-12-15
      • 1970-01-01
      • 2017-02-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多