Есть такая вот системка http://osticket.ru/ .
Но никак не интегрирована с АД. У меня стоит задача, связать. Но я не програмист, на форумах есть манипуляции с подменой функций, выполнив все как написано видимых изменений нет, прошу помощи разобратся. Для начала мне нужно понять могу ли я получить хоть какие нибудь данные из АД Либо мне что-то нужно еще делать. (в логах ошибок нет, скрипт ошибку подключения к АД не выводит).
При попытке запустить ниже следующий скрипт в test.php получаю в браузере белый лист, хотелось бы получить данные о ползьзователе запустившем браузер (для начала хотя бы 1 параметр почта).
Более того, при попытке вывести через echo что либо на экран в браузере, Opera пытается результат вывода почему то сохранять в файл...
<?php
// START MOD06 AD lookup of Name and Email
// Jpastin http://osticket.com/forums/showthread.php?p=13780#post13780
// START EDIT
// Replace this with your AD Domain Controller
$ds=ldap_connect('ldap://servername.domain.local:389/') or die("Couldn't connect to AD!");
//Replace this with a username that has read permissions on your AD
$connect_u = "DOMAIN\AdminUser";
//Replace this with the password of the user
$conect_p="PPAASSWWOORRDD";
//Replace this with the DN of the base OU you want to search
$search_user_dn = "OU=Users,DC=domain,DC=local";
// STOP EDIT
$inforequired = array("displayName","mail");
if (!ldap_bind( $ds, $connect_u, $conect_p) ) {
$error_msg[] = "Could not bind AD connection<br>";
}
else
{
if (!empty($_REQUEST['mail'])) {
$curMail=$_REQUEST['mail'];
$curMail = strtolower($curMail);
$curMail.='*';
$filter="(&(mail=$curMail)(objectCategory=person))";
}
elseif (!empty($_REQUEST['name'])) {
$curName=$_REQUEST['name'];
$curName = strtolower($curName);
$curName.='*';
$filter="(&(displayName=$curName)(objectCategory=person))";
}
$user_result = ldap_search($ds,$search_user_dn,$filter,$inforequired);
$user_info = ldap_get_entries($ds,$user_result);
header("Content-Type: application/json");
echo"{\"results\": [";
$arr=Array();
if (count($user_info) > $_REQUEST['maxEntries'])
{
$max=$_REQUEST['maxEntries'];
}
else
{
$max=count($user_info);
}
for ( $i=1; $i<$max; $i+=1)
{
if (!empty($_REQUEST['mail'])) {
$arr[]= "{\"id\": \"".$i."\", \"value\": \"".$user_info[$i-1]['mail'][0]."\", \"info\": \"".$user_info[$i-1]['displayname'][0]."\"}";
}
elseif (!empty($_REQUEST['name'])) {
$arr[]= "{\"id\": \"".$i."\", \"value\": \"".$user_info[$i-1]['displayname'][0]."\", \"info\": \"".$user_info[$i-1]['mail'][0]."\"}";
}
}
echo implode (", ", $arr);
echo "]}";
}
//END MOD06
?>