mastura Posted May 8, 2019 Share Posted May 8, 2019 Hi.. I have been working on this for 4 days now and still not able to find a right solution. i have the get client data using api to display it in other platform but it displays in array form. Since i am new to coding,I need it to display in table form . How am i able to do it ? please help me here the code applied: // API Connection Details $whmcsUrl = "https://domain.com/"; // For WHMCS 7.2 and later, we recommend using an API Authentication Credential pair. // Learn more at http://docs.whmcs.com/API_Authentication_Credentials // Prior to WHMCS 7.2, an admin username and md5 hash of the admin password may be used. $username = "xxxxxxxxxxxxxxxxxxxxxxx"; $password = "yyyyyyyyyyyyyyyyyyyyyyyyy"; // Set post values $postfields = array( 'username' => $username, 'password' => $password, 'action' => 'GetClients', 'responsetype' => 'json', ); // Call the API $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $whmcsUrl . 'includes/api.php'); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_TIMEOUT, 30); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postfields)); $response = curl_exec($ch); if (curl_error($ch)) { die('Unable to connect: ' . curl_errno($ch) . ' - ' . curl_error($ch)); } curl_close($ch); // Decode response $jsonData = json_decode($response, true); // Dump array structure for inspection var_dump($jsonData);?> Here is the result: Please help me solve this..Thank you 0 Quote Link to comment Share on other sites More sharing options...
Kian Posted May 8, 2019 Share Posted May 8, 2019 <? // API Connection Details $whmcsUrl = "https://domain.com/"; // For WHMCS 7.2 and later, we recommend using an API Authentication Credential pair. // Learn more at http://docs.whmcs.com/API_Authentication_Credentials // Prior to WHMCS 7.2, an admin username and md5 hash of the admin password may be used. $username = "xxxxxxxxxxxxxxxxxxxxxxx"; $password = "yyyyyyyyyyyyyyyyyyyyyyyyy"; // Set post values $postfields = array( 'username' => $username, 'password' => $password, 'action' => 'GetClients', 'responsetype' => 'json', ); // Call the API $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $whmcsUrl . 'includes/api.php'); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_TIMEOUT, 30); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postfields)); $response = curl_exec($ch); if (curl_error($ch)) { die('Unable to connect: ' . curl_errno($ch) . ' - ' . curl_error($ch)); } curl_close($ch); // Decode response $jsonData = json_decode($response, true); // EDITED BELOW THIS LINE $table .= <<<HTML Showing <strong>{$jsonData['numreturned']}</strong> of <strong>{$jsonData['totalresults']}</strong> clients<hr> <table> <tr> <th>Client Name</th> <th>Email</th> <th>Status</th> </tr> HTML; foreach ($jsonData['clients']['client'] as $v) { $table .= <<<HTML <tr> <td>{$v['firstname']} {$v['firstname']} {$v['companyname']}</td> <td>{$v['email']}</td> <td>{$v['status']}</td> </tr> HTML; } $table .= <<<HTML </table> HTML; echo $table; This will produce the following: Anyway this is not how you should that. I gave you just an example. 0 Quote Link to comment Share on other sites More sharing options...
mastura Posted May 9, 2019 Author Share Posted May 9, 2019 55 minutes ago, Kian said: <? // API Connection Details $whmcsUrl = "https://domain.com/"; // For WHMCS 7.2 and later, we recommend using an API Authentication Credential pair. // Learn more at http://docs.whmcs.com/API_Authentication_Credentials // Prior to WHMCS 7.2, an admin username and md5 hash of the admin password may be used. $username = "xxxxxxxxxxxxxxxxxxxxxxx"; $password = "yyyyyyyyyyyyyyyyyyyyyyyyy"; // Set post values $postfields = array( 'username' => $username, 'password' => $password, 'action' => 'GetClients', 'responsetype' => 'json', ); // Call the API $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $whmcsUrl . 'includes/api.php'); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_TIMEOUT, 30); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postfields)); $response = curl_exec($ch); if (curl_error($ch)) { die('Unable to connect: ' . curl_errno($ch) . ' - ' . curl_error($ch)); } curl_close($ch); // Decode response $jsonData = json_decode($response, true); // EDITED BELOW THIS LINE $table .= <<<HTML Showing <strong>{$jsonData['numreturned']}</strong> of <strong>{$jsonData['totalresults']}</strong> clients<hr> <table> <tr> <th>Client Name</th> <th>Email</th> <th>Status</th> </tr> HTML; foreach ($jsonData['clients']['client'] as $v) { $table .= <<<HTML <tr> <td>{$v['firstname']} {$v['firstname']} {$v['companyname']}</td> <td>{$v['email']}</td> <td>{$v['status']}</td> </tr> HTML; } $table .= <<<HTML </table> HTML; echo $table; This will produce the following: Anyway this is not how you should that. I gave you just an example. heyy..thank you so much ..this works wonder.. but why there is an error/notices prompted at the top of the table? how do i assign the table variable? 0 Quote Link to comment Share on other sites More sharing options...
mastura Posted May 9, 2019 Author Share Posted May 9, 2019 2 20 minutes ago, mastura said: heyy..thank you so much ..this works wonder.. but why there is an error/notices prompted at the top of the table? how do i assign the table variable? 0 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.