Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/231.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SoapClient+;PHP+;Sharepoint+;从列表或GetItemsById获取图像_Php_Soap_Sharepoint 2010 - Fatal编程技术网

SoapClient+;PHP+;Sharepoint+;从列表或GetItemsById获取图像

SoapClient+;PHP+;Sharepoint+;从列表或GetItemsById获取图像,php,soap,sharepoint-2010,Php,Soap,Sharepoint 2010,我正在使用SoapClient从sharepoint列表中提取数据。如果它是一个正常的文本字段,它工作良好,并给我的图像。我甚至可以将图像附加到单独的列表元素,并将其链接到另一个字段中,从而获得图像。问题是,每当我访问该页面时,它都会要求我登录我的sharepoint帐户,这显然是我网站的普通用户无法做到的 首先,如果有办法解决这个问题,这将是一个足够的答案,因为这是我理想的解决方法 然而,如果更好的方法是制作一个图片库,然后从中提取图片,那么这不是问题 基本上我需要知道的是如何使用Imagin

我正在使用SoapClient从sharepoint列表中提取数据。如果它是一个正常的文本字段,它工作良好,并给我的图像。我甚至可以将图像附加到单独的列表元素,并将其链接到另一个字段中,从而获得图像。问题是,每当我访问该页面时,它都会要求我登录我的sharepoint帐户,这显然是我网站的普通用户无法做到的

首先,如果有办法解决这个问题,这将是一个足够的答案,因为这是我理想的解决方法

然而,如果更好的方法是制作一个图片库,然后从中提取图片,那么这不是问题

基本上我需要知道的是如何使用Imaging库,也许还有GetItemsByds方法?一般来说,我对soap和sharepoint非常陌生,所以我对一些可能很琐碎的问题表示歉意,但我真的需要知道如何做到这一点,而且我在internet上找不到任何资源来解释我需要知道的内容(如果有,请链接!)。请记住,我必须用PHP来实现这一点

下面是我用来提取列表数据的一些代码:

<?php
  $authParams = array(

  'login' => 'username',
  'password' => 'pass'
);

$listName = "{GUID}";
$rowLimit = '500';
$wsdl = "list.wsdl";
$soapClient = new SoapClient($wsdl, $authParams);

$params = array(
  'listName' => $listName,
  'rowLimit' => $rowLimit;
);

echo file_get_contents($wsdl, FILE_TEXT, stream_context_create(array('http' => array('timeout' => 1))), 0, 1);

$rawXMLresponse = null;
try{
    $rawXMLresponse = $soapClient->GetListItems($params)->GetListItemsResult->any;
}
catch(SoapFault $fault){
    echo 'Fault code: '.$fault->faultcode;
    echo 'Fault string: '.$fault->faultstring;
}
echo '<pre>' . $rawXMLresponse . '</pre>';

$dom = new DOMDocument();
$dom->loadXML($rawXMLresponse);
$results = $dom->getElementsByTagNameNS("#RowsetSchema", "*");
?>

//do the useful thing

<?php
unset($soapClient);
?>

//做有用的事

这是用户权限的问题。一旦我们有了一个具有正确权限的帐户,它就可以正常工作。

这是用户权限的问题。一旦我们拥有了一个具有正确权限的帐户,它就可以正常工作。

您是否在SharePoint网站上启用了对图片库的匿名访问?如果你启用了用户名和密码,你就不需要用户名和密码。嗯,这很有趣,但是这是一个需要登录的列表,我似乎根本不知道如何从pic库中提取东西。如果我可以在列表中这样做,我会怎么做?现在我想了想,只要我试图获取的图片在服务器上,它可能会要求我登录:/i我真的需要知道如何允许获取这些图片。您是否在SharePoint网站上启用了对图片库的匿名访问?如果你启用了用户名和密码,你就不需要用户名和密码。嗯,这很有趣,但是这是一个需要登录的列表,我似乎根本不知道如何从pic库中提取东西。如果我可以在列表中这样做,我该怎么做?现在我想了想,它可能会要求我登录,只要我试图获取的图片在服务器上:/i我真的需要知道如何允许如何获取这些图片。