我在https://labs.aweber.com/apps上创建了一个应用程序,并在他们的github https://github.com/aweber/AWeber-API-PHP-Library上下载php代码。我读了他们的文件,但不是很清楚。我不知道如何开始,也不知道该先做什么。我只是一个初学者,我从来没有做过一个应用程序。
我尝试首先在我的页面上创建PHP脚本,希望在提交表单时满足所需的功能,但没有发生任何事情。我联系了他们的支持,但他们建议做一个应用程序,使其正常工作。
web表单提交的流程是这样的。在主页上,用户可以输入姓名、电子邮件、电话,有两个单选选项可供选择,当你选择一个时,它会重定向到另一个页面,重新填写表格并提交。我为主页和第二页创建了一个web表单。当你提交第二页的形式,它应该得到在主页上的详细信息(姓名,电子邮件,电话和选项选择),我得到了它的工作。但是当我在我的Aweber账户的订阅者中查看它时,第二页的字段都是空白的。主页上的字段已经填好了,每当我填完第二页的表格并提交时,Aweber就说这个页面被封锁了。他们建议我为此开发一个应用程序。但是我不知道如何开始,因为他们的文档是令人难以置信的。
如果你能帮助我,我将非常感激。
谢谢!
听起来你需要为这个功能创建一个aweber应用。
我正在粘贴PHP代码,这有助于我很快得到设置。将其加载到浏览器中并按照说明进行操作。一旦您准备好进行实际的API调用,您可以在labs.aweber.com/snippets/subscribers上看到一些示例。
如果您遇到任何问题,您可以随时发送电子邮件到api@aweber.com aweber API支持。
你需要做的几件事(如果你还没有):
- 创建实验室帐户(http://labs.aweber.com)和aweber帐户(http://www.aweber.com)
- 创建一个应用程序,在实验室站点获取您的消费者密钥和秘密 从实验室网站下载AWeber php库,并确保在下面的require_once()中有正确的路径。
<?php require_once('aweber_api/aweber_api.php');
// Step 1: assign these values from https://labs.aweber.com/apps
$consumerKey = '';
$consumerSecret = '';
// Step 2: load this PHP file in a web browser, and follow the instructions to set
// the following variables:
$accessKey = '';
$accessSecret = '';
$list_id = '';
if (!$consumerKey || !$consumerSecret){
print "You need to assign '$consumerKey and '$consumerSecret at the top of this script and reload.<br><br>" .
"These are listed on <a href='https://labs.aweber.com/apps' target=_blank>https://labs.aweber.com/apps</a><br>'n";
exit;
}
$aweber = new AWeberAPI($consumerKey, $consumerSecret);
if (!$accessKey || !$accessSecret){
display_access_tokens($aweber);
}
try {
$account = $aweber->getAccount($accessKey, $accessSecret);
$account_id = $account->id;
if (!$list_id){
display_available_lists($account);
exit;
}
print "You script is configured properly! " .
"You can now start to develop your API calls, see the example in this script.<br><br>" .
"Be sure to set '$test_email if you are going to use the example<p>";
//example: create a subscriber
/*
$test_email = '';
if (!$test_email){
print "Assign a valid email address to '$test_email and retry";
exit;
}
$listURL = "/accounts/{$account_id}/lists/{$list_id}";
$list = $account->loadFromUrl($listURL);
$params = array(
'email' => $test_email,
'ip_address' => '127.0.0.1',
'ad_tracking' => 'client_lib_example',
'misc_notes' => 'my cool app',
'name' => 'John Doe'
);
$subscribers = $list->subscribers;
$new_subscriber = $subscribers->create($params);
print "{$test_email} was added to the {$list->name} list!";
*/
} catch(AWeberAPIException $exc) {
print "<h3>AWeberAPIException:</h3>";
print " <li> Type: $exc->type <br>";
print " <li> Msg : $exc->message <br>";
print " <li> Docs: $exc->documentation_url <br>";
print "<hr>";
exit(1);
}
function get_self(){
return 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
}
function display_available_lists($account){
print "Please add one for the lines of PHP Code below to the top of your script for the proper list<br>" .
"then click <a href='" . get_self() . "'>here</a> to continue<p>";
$listURL ="/accounts/{$account->id}/lists/";
$lists = $account->loadFromUrl($listURL);
foreach($lists->data['entries'] as $list ){
print "<pre>'$list_id = '{$list['id']}'; // list name:{$list['name']}'n</pre>";
}
}
function display_access_tokens($aweber){
if (isset($_GET['oauth_token']) && isset($_GET['oauth_verifier'])){
$aweber->user->requestToken = $_GET['oauth_token'];
$aweber->user->verifier = $_GET['oauth_verifier'];
$aweber->user->tokenSecret = $_COOKIE['secret'];
list($accessTokenKey, $accessTokenSecret) = $aweber->getAccessToken();
print "Please add these lines of code to the top of your script:<br>" .
"<pre>" .
"'$accessKey = '{$accessTokenKey}';'n" .
"'$accessSecret = '{$accessTokenSecret}';'n" .
"</pre>" . "<br><br>" .
"Then click <a href='" . get_self() . "'>here</a> to continue";
exit;
}
if(!isset($_SERVER['HTTP_USER_AGENT'])){
print "This request must be made from a web browser'n";
exit;
}
$callbackURL = get_self();
list($key, $secret) = $aweber->getRequestToken($callbackURL);
$authorizationURL = $aweber->getAuthorizeUrl();
setcookie('secret', $secret);
header("Location: $authorizationURL");
exit();
}
?>