首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WHMCS收到发票PDF

WHMCS收到发票PDF
EN

Stack Overflow用户
提问于 2016-05-12 15:58:38
回答 1查看 1.3K关注 0票数 0

我正在尝试使用API方法从WHMCS导入到c#应用程序的所有WHMCS发票。当我尝试下载PDF文档时,有一个问题。没有API方法可以这样做,而且我不能在没有登录的情况下调用dl.php页面。我不能以管理员身份登录WHMCS方法,也不能使用客户端登录,因为(显然)我不知道他们的密码,我只有他们的MD5密码。

有什么解决办法吗?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-20 17:45:12

根据此页的说法,这就是您可以下载发票而无需登录的方式。

创建一个php文件,比方说,gen_invoice_pdf.php,并将其放在根whmcs目录中。

将此代码添加到文件中:

代码语言:javascript
复制
<?php
include __DIR__ . '/init.php';
include __DIR__ . '/includes/invoicefunctions.php';

use WHMCS\Auth;

$user = filter_var($_GET['us'], FILTER_SANITIZE_STRING);
$pass = filter_var($_GET['pw'], FILTER_SANITIZE_STRING);
$id = filter_var($_GET['id'], FILTER_SANITIZE_NUMBER_INT);
$authAdmin = new Auth;

if ($authAdmin->getInfobyUsername($user) && $authAdmin->comparePassword($pass)) {
    $isValid = true;
} else {
    $isValid = false;
}

if (!$isValid) {
    die('Access Denied');
}


if ($id > 0) {
    $pdfdata = pdfInvoice($id);

    header("Content-type:application/pdf");
    header("Content-Disposition:attachment;filename=invoice_$id.pdf");

    echo $pdfdata;  

}

要下载发票id: 5,请访问网址:

pdf.php?id=5&us=myuser&pw=mypass

注意:这将是任何人都可以访问的网址,您可以设置页面接受连接从特定的IP地址,例如。

更新:

添加了WHMCS管理身份验证,只适用于WHMCS >= 5.3.9,检查:管理密码散列

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37192006

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档