Google Calendar API PHP安装

时间:2016-02-03 16:26:01

标签: php mysql calendar

我一直在努力让Google Calendar API与PHP一起使用,我甚至联系了我的主机(1和1)来解决问题,没有任何工作

我已经按照PHP Quickstart上的示例,尝试通过转到页面来运行它,它在命令行中运行它给了我一个错误。所以我登录了我的SSH,导航到该文件并运行命令php5.4 CRON-temp.php。现在,我得到了同样的错误:

<b>Fatal error</b>:  Uncaught exception 'Exception' with message 'This application must be
run on the command line.' in /homepages/41/d159654153/htdocs/mysite
/admin/php/CRON-temp.php:16
Stack trace:
#0 {main}
thrown in <b>/homepages/41/d159654153/htdocs/mysite/
admin/php/CRON-temp.php</b> on line <b>16</b><br />

所以,我在命令行中运行它,但它仍然告诉我在那里运行它。抛出错误的代码来自:

if (php_sapi_name() != 'cli') {
    throw new Exception('This application must be run on the command line.');
}

我被耽搁了......我已经将代码发送给朋友试用了,他得到了一个链接,可以返回我应该去授权的地方,但我和#39;我无法看到其中任何一个。

1和1的技术人员说

  

现在,如果您将查看错误,则错误会从&#34;解析错误&#34; to&#34; Uncaught exception&#39; Exception&#34;。看来这个应用程序将在服务器环境中运行,而不是在共享主机上运行。这是对您的包装的限制。您可能需要转到服务器包才能运行此API。

这是真的吗?我真的需要切换到服务器托管吗?有没有解决的办法?

我想要做的就是在Google日历和mySQL服务器之间实现双向同步。

2 个答案:

答案 0 :(得分:3)

根据Google代码和说明,https://developers.google.com/google-apps/calendar/quickstart/php 首先,您尝试使用cmd运行此操作。

转到start键入cmd,然后会出现黑屏,如下所示:
php yourfilename.php,然后它会为您提供一个网址并询问验证码,您只需访问所述网址并允许Google获取密钥并在cmd中输入所述密钥。

您的代码已准备就绪。现在评论限制cli的相同代码,即:

if (php_sapi_name() != 'cli') {
    throw new Exception('This application must be run on the command line.');
}

答案 1 :(得分:0)

我从我正在处理的项目中找到了您的帖子。您可以从命令行运行quickstart.php,然后为您提供一个粘贴到浏览器中以授权访问的链接。

获得授权访问权限后,您可以再次在命令行中运行该脚本,并显示即将发生的事件。

没有浏览器输出 - 这就是我要找的。

我希望这会有所帮助。