2015-06-17 3 views
0

В настоящее время я изучаю компьютерную науку, и в своем опыте работы мой наставник предложил мне отправлять запросы на встречи через сайт в PHP (реализованный мной) в мой репетитор Microsoft EXCHANGE. К сожалению, я не знаю, как это сделать .... У меня хорошие знания в PHP, HTML и CSS, но я полностью потерял разговор с Microsoft Exchange, потому что пока мой наставник не спросит меня об этом проекте, я действительно не знал Microsoft Project.ссылка MS Exchange и PHP с ExchangeWebServices?

мой код (файл: test.php):

<?php 

function __autoload($ExchangeWebServices) 
{ 
// Start from the base path and determine the location from the class name, 
$base_path = 'C:/wamp/www/new-ews2/php-ews'; 
$include_file = $base_path . '/' . str_replace('_', '/',    $ExchangeWebServices) . '.php'; 

return (file_exists($include_file) ? require_once $include_file : false); 
} 

$server='test.fr'; 
$username='[email protected]'; 
$password='testtest'; 

$ews = new ExchangeWebServices($server, $username, $password); 

$request = new EWSType_FindItemType(); 
$request->Traversal = EWSType_ItemQueryTraversalType::SHALLOW; 

$request->ItemShape = new EWSType_ItemResponseShapeType(); 
$request->ItemShape->BaseShape = EWSType_DefaultShapeNamesType::DEFAULT_PROPERTIES; 

$request->CalendarView = new EWSType_CalendarViewType(); 
$request->CalendarView->StartDate = date('c', strtotime('2015-06-20 -00')); 
$request->CalendarView->EndDate = date('c', strtotime('2015-06-22 -00')); 

$request->ParentFolderIds = new EWSType_NonEmptyArrayOfBaseFolderIdsType(); 
$request->ParentFolderIds->DistinguishedFolderId = new EWSType_DistinguishedFolderIdType(); 
$request->ParentFolderIds->DistinguishedFolderId->Id = EWSType_DistinguishedFolderIdNameType::CALENDAR; 

var_dump($request); 

?> 

Когда я иду в моем Google Chrome и установить: localhost/new-ews/php-ews/test.php

результат страницы:

object(EWSType_FindItemType)[2] 
public 'CalendarView' => 
object(EWSType_CalendarViewType)[4] 
    public 'EndDate' => string '2015-06-22T02:00:00+02:00' (length=25) 
    public 'MaxEntriesReturned' => null 
    public 'StartDate' => string '2015-06-20T02:00:00+02:00' (length=25) 
public 'ContactsView' => null 
public 'DistinguishedGroupBy' => null 
public 'FractionalPageItemView' => null 
public 'GroupBy' => null 
public 'IndexedPageItemView' => null 
public 'ItemShape' => 
object(EWSType_ItemResponseShapeType)[3] 
    public 'AdditionalProperties' => null 
    public 'BaseShape' => string 'Default' (length=7) 
    public 'BodyType' => null 
    public 'ConvertHtmlCodePageToUTF8' => null 
    public 'FilterHtmlContent' => null 
    public 'IncludeMimeContent' => null 
public 'ParentFolderIds' => 
object(EWSType_NonEmptyArrayOfBaseFolderIdsType)[5] 
    public 'DistinguishedFolderId' => 
    object(EWSType_DistinguishedFolderIdType)[6] 
     public 'ChangeKey' => null 
     public 'Id' => string 'calendar' (length=8) 
     public 'Mailbox' => null 
    public 'FolderId' => null 
public 'QueryString' => null 
public 'Restriction' => null 
public 'SortOrder' => null 
public 'Traversal' => string 'Shallow' (length=7) 

Я не Не знаете, как проверить этот код сейчас? Теперь я спрашиваю у моего преподавателя сервер/имя пользователя/пароль? или мой код хорош? Я что-то меняю? спасибо

Редактировать 2: На какой строке я могу добавить этот код, пожалуйста? :/

+0

blimey какой уровень опыт работы это ?! – DevDonkey

+0

безумие. Вашему репетитору w/e нужен звонок для пробуждения. и с днем ​​рождения на завтра – DevDonkey

+0

почему? : x это слишком сложно для моего lvl? :/ Спасибо, братан! – kadox8

ответ

0

Есть много API-интерфейсы для доступа к EWS через PHP:

Они получат Вас.

редактировать:

После того, как код - вы должны 1. включить все необходимые файлы отдельно 2. добавить пользовательский автоматический загрузчик

Как описан в риом документе here. Для решения вышеуказанной ошибки вам необходимо будет указать файл ExchangeWebServices.php как минимум.

Редактировать 2: Вы действительно не запрашиваете EWS. Вы создаете запрос, но не выполняете код. Конечно, вам понадобятся данные учетной записи для запросов.

$response = $ews->FindItem($request); 
+0

Что значит «правильно ли это»? – dhh

+0

Измените свой вопрос и укажите более подробную информацию. Соответствующие части кода, которые у вас уже есть, и полученные сообщения о результатах/ошибках. – dhh

Смежные вопросы