Как правильно использовать PHP-оболочку Constant Contact в проекте CakePHP? - PullRequest
0 голосов
/ 20 мая 2011

Я расширяю существующий проект CakePHP для использования API-интерфейса Constant Contact и файла оболочки php: ctctWrapper.php .

Я скачал ctctWrapper и поместил его в папку app / vendors и сохранил его как «ctctwrapper.php», чтобы Cake автоматически нашел файл со следующей реализацией:

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
}

}

?>

Вид / контакты / 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');

?>

когда я посещаю / project / contacts / send, выдаются следующие предупреждения, предположительно потому, что эти индикаторы массива не определены. Есть что-то, что я пропускаю, чтобы заставить это работать должным образом? (примечание: мне также пришлось переименовать класс CC 'Folder' из-за проблемы с классом Cake 'Folder').

Спасибо за внимание!

ошибка:

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/ctctwrapper.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]

1 Ответ

0 голосов
/ 20 мая 2011

Похоже, что большинство ошибок - это просто низкоуровневые предупреждения о том, что параметры не существуют. Это относительно безвредно. Исключение составляют следующие строки в конце.

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]

Держу пари, что именно в этих ошибках и возникает ваша настоящая проблема, и они не имеют ничего общего с классом API Constant Contact.

Поскольку мы не видим, что происходит в вашей функции send(), отладить ее практически невозможно.

...