我需要帮助才能像图片中显示的那样进行登录。 (www.hurl.it)
这应该在PHP中使用cURL完成。 这是我到目前为止所做的,但它对我不起作用:
Add-ADGroupMember -Identity "wk_test" -Members (Get-ADComputer -SearchBase "CN=computers,DC=ad,dc=org" -filter *)
答案 0 :(得分:1)
你的代码正常运行,并且当我在这里测试时,确实登录了。我投票决定关闭这个问题,因为你只是说'#34;它不适合我",而不解释它怎么不适合你。
但是,在调试时,请不要使用print_r
,请使用var_dump
。例如,如果curl
收到错误,则会返回 bool(false),当您将bool(false)提供给print_r
时,它会打印绝对没有任何内容,发现会发生什么。
但是,如果你将bool(false)赋予var_dump
,它实际上会打印bool(false)。
另外,在专门调试curl
代码时,启用CURLOPT_VERBOSE
,它会打印许多有用的调试信息。当curl_exec
返回 false 时,您应该使用curl_error()
来提取错误消息。
简而言之,将$result = curl_exec($c);
替换为:
curl_setopt($c,CURLOPT_VERBOSE,true);
$result = curl_exec($c);
if(false===$result){
throw new \RuntimeException('curl_exec failed! errno: '.curl_errno($c).'. error: '.curl_error($c));
}
var_dump($result);
另外,如果设置任何卷曲选项时出现问题,curl_setopt会返回bool(false),你也完全忽略了这一点,不要这样做!使用类似的东西:
function ecurl_setopt ( /*resource*/$ch , int $option , /*mixed*/ $value ):bool{
$ret=curl_setopt($ch,$option,$value);
if($ret!==true){
//option should be obvious by stack trace
throw new RuntimeException ( 'curl_setopt() failed. curl_errno: ' . curl_errno ($ch).'. curl_error: '.curl_error($ch) );
}
return true;
}
现在,如果应用您的设置时出现问题,则会抛出异常,而不是默默地忽略setopt错误。无论如何,应用CURLOPT_VERBOSE
,不要忽略setopt
返回值,并使用var_dump
代替print_r
,如果它仍然无效,请打印VERBOSE日志,以及CURLOPT_VERBOSE
和var_dump
以及curl_error
打印的内容,然后我将撤回我的近距离投票。