0

我正在尝试编写一个简单的恒定联系脚本来添加和更新电子邮件。脚本很简单,应该可以顺利运行。但是当我开始包含 'src/Ctct/autoload.php' 时,页面只是返回空白。我尝试在另一台服务器上运行它并且它可以工作。但在我的工作服务器上,它返回空白。它使用来自 CTCT 的 OAuth 身份验证。我认为这是服务器中的设置,但我无法控制服务器,任何更改都需要转发给管理员,我只是不知道我需要更改什么。

这是代码:

require "Scripts/ConstantContact/src/Ctct/autoload.php";
use Ctct\ConstantContact;
use Ctct\Components\Contacts\Contact;
use Ctct\Components\Contacts\ContactList;
use Ctct\Components\Contacts\EmailAddress;
use Ctct\Exceptions\CtctException;

define("APIKEY", "*** Censored Media (18+ only) ***");
define("ACCESS_TOKEN", "*** Censored Media (18+ only) ***");

$cc = new ConstantContact(APIKEY);

// attempt to fetch lists in the account, catching any exceptions and printing the errors to screen
    $lists = $cc->getLists(ACCESS_TOKEN);

    $action = "Getting Contact By Email Address";
    $Email = "asdf@asdf.com";
    $FirstName = "Asdf";
    $LastName = "Ghjk";
        // check to see if a contact with the email addess already exists in the account
        $response = $cc->getContactByEmail(ACCESS_TOKEN, $Email);

        // create a new contact if one does not exist
        if (empty($response->results)) {
            $action = "Creating Contact";

            $contact = new Contact();
            $contact->addEmail($Email);
            $contact->addList('1');
            $contact->first_name = $FirstName;
            $contact->last_name = $LastName;
            $returnContact = $cc->addContact(ACCESS_TOKEN, $contact); 

        // update the existing contact if address already existed
        } else {            
            $action = "Updating Contact";

            $contact = $response->results[0];
            $contact->addList('1');
            $contact->first_name = $FirstName;
            $contact->last_name = $LastName;
            $returnContact = $cc->updateContact(ACCESS_TOKEN, $contact);  
        }

    // catch any exceptions thrown during the process and print the errors to screen


    if (isset($returnContact)) {
        echo '<div class="container alert-success"><pre class="success-pre">';
        print_r($returnContact); 
        echo '</pre></div>';
    }
print '<p>'.$action.'</p>';

同样,这适用于我尝试过的另一台服务器,但不适用于我的工作服务器。

任何帮助,将不胜感激。

谢谢!

4

1 回答 1

1

您是否在另一台服务器上运行 PHP 5.3 或更高版本?域是否也发生了变化,如果是这样,可能会引发异常,导致空白页面,因为您的 API 密钥是特定于域的。随时给我发一封电子邮件,我很乐意帮助你解决这个问题 - mstowe [at] constantcontact.com

-麦克风

于 2014-04-08T18:00:02.590 回答