What is the proper way to use the Constant Contact PHP Wrapper in a CakePHP project
I am extending an existing CakePHP project to utilize the Constant Contact API and php wrapper file: ctctWrapper.php.
I have downloaded ctctWrapper and placed it in the app/vendors folder and saved it as 'ctctwrapper.php' in order for Cake to automagically find the file with the following implementation:
contacts_controller.php
<?php
App::import('Vendor', 'ctctwrapper');
class ContactsController extends AppController {
var $name = 'Contacts';
var $uses = array('Contact', 'Group', 'MarketingList');
//Set pagination defaults
var $paginate = array(
'limit' => 25,
'order' => array(
'Contact.lastname' => 'asc'
)
);
function send(){
//do stuff here
}
}
?>
views/contacts/send.ctp
Create a new folder on Constant Contact:
<?php
echo $this->Form->create('Contact', array('action' => 'send'));
echo $this->Form->input('foldername');
echo $this->Form->end('Submit');
?>
when i visit /project/contacts/send, the following warnings are issued, presumably because these array indicies are not defined. Is there something i'm missing to get this to work properly? (note: i also had to rename the CC 'Folder' class due to an issue with Cake's 'Folder' class).
Thanks for looking!
errors:
Notice (8): Undefined index: status [CORE/vendors/ctctwrapper.php, line 1235]
Notice (8): Undefined index: link [CORE/vendors/ctctwrapper.php, line 1239]
Notice (8): Undefined index: email_address [CORE/vendors/ctctwrapper.php, line 1241]
Notice (8): Undefined index: first_name [CORE/vendors/ctctwrapper.php, line 1242]
Notice (8): Undefined index: middle_name [CORE/vendors/ctctwrapper.php, line 1243]
Notice (8): Undefined index: last_name [CORE/vendors/ctctwrapper.php, line 1244]
Notice (8): Undefined index: company_name [CORE/vendors/ctctwrapper.php, line 1245]
Notice (8): Undefined index: job_title [CORE/vendors/ctctwrapper.php, line 1246]
Notice (8): Undefined index: home_number [CORE/vendors/ctctwrapper.php, line 1247]
Notice (8): Undefined index: work_number [CORE/vendors/ctctwrapper.php, line 1248]
Notice (8): Undefined index: address_line_1 [CORE/vendors/ctctwrapper.php, line 1249]
Notice (8): Undefined index: address_line_2 [CORE/vendors/ctctwrapper.php, line 1250]
Notice (8): Undefined index: address_line_3 [CORE/vendors/ctctwrapper.php, line 1251]
Notice (8): Undefined index: city_name [CORE/vendors/ctctwrapper.php, line 1252]
Notice (8): Undefined index: state_code [CORE/vendors/ctctwrapper.php, line 1253]
Notice (8): Undefined index: state_name [CORE/vendors/ctctwrapper.php, line 1254]
Notice (8): Undefined index: country_code [CORE/vendors/ctctwrapper.php, line 1255]
Notice (8): Undefined index: zip_code [CORE/vendors/ctctwrapper.php, line 1256]
Notice (8): Undefined index: sub_zip_code [CORE/vendors/ctctwrapper.php, line 1257]
Notice (8): Undefined index: notes [CORE/vendors/ctctwrapper.php, line 1258]
Notice (8): Undefined index: custom_field_1 [CORE/vendors/ctctwrapper.php, line 1259]
Notice (8): Undefined index: custom_field_2 [CORE/vendors/ctctwrapper.php, line 1260]
Notice (8): Undefined index: custom_field_3 [CORE/vendors/ctctwrapper.php, line 1261]
Notice (8): Undefined index: custom_field_4 [CORE/vendors/ctctwrappe开发者_Go百科r.php, line 1262]
Notice (8): Undefined index: custom_field_5 [CORE/vendors/ctctwrapper.php, line 1263]
Notice (8): Undefined index: custom_field_6 [CORE/vendors/ctctwrapper.php, line 1264]
Notice (8): Undefined index: custom_field_7 [CORE/vendors/ctctwrapper.php, line 1265]
Notice (8): Undefined index: custom_field_8 [CORE/vendors/ctctwrapper.php, line 1266]
Notice (8): Undefined index: custom_field_9 [CORE/vendors/ctctwrapper.php, line 1267]
Notice (8): Undefined index: custom_field_10 [CORE/vendors/ctctwrapper.php, line 1268]
Notice (8): Undefined index: custom_field_11 [CORE/vendors/ctctwrapper.php, line 1269]
Notice (8): Undefined index: custom_field_12 [CORE/vendors/ctctwrapper.php, line 1270]
Notice (8): Undefined index: custom_field_13 [CORE/vendors/ctctwrapper.php, line 1271]
Notice (8): Undefined index: custom_field_14 [CORE/vendors/ctctwrapper.php, line 1272]
Notice (8): Undefined index: custom_field_15 [CORE/vendors/ctctwrapper.php, line 1273]
Notice (8): Undefined index: mail_type [CORE/vendors/ctctwrapper.php, line 1274]
Notice (8): Undefined index: lists [CORE/vendors/ctctwrapper.php, line 1277]
Notice (8): Undefined index: id [CORE/vendors/ctctwrapper.php, line 1240]
Notice (8): Undefined property: Contact::$table [CORE/cake/libs/model/model.php, line 666]
Notice (8): Undefined property: Contact::$table [CORE/cake/libs/model/model.php, line 707]
Notice (8): Undefined property: Contact::$table [CORE/cake/libs/model/model.php, line 698]
Warning (2): Cannot modify header information - headers already sent by (output started at /opt/local/apache2/htdocs/outreach/cake/libs/debugger.php:673) [CORE/cake/libs/controller/controller.php, line 746]
It looks like most of the errors are just low-level warnings that params don't exist. These are relatively harmless. The exceptions are the following lines near the end.
Notice (8): Undefined property: Contact::$table [CORE/cake/libs/model/model.php, line 666]
Notice (8): Undefined property: Contact::$table [CORE/cake/libs/model/model.php, line 707]
Notice (8): Undefined property: Contact::$table [CORE/cake/libs/model/model.php, line 698]
I'd wager a guess that those errors are where your actual problem is taking place and doesn't have much to do with the Constant Contact API class.
Since we can't see what's going on in your send()
function, it's next to impossible to debug it any further.
精彩评论