Go Back   vb.org Archive > vBulletin 4 Discussion > vB4 Programming Discussions
FAQ Community Calendar Today's Posts Search

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #1  
Old 04-20-2012, 02:41 PM
gigagon gigagon is offline
 
Join Date: Apr 2012
Posts: 3
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default API login_login error: badlogin

Hi Community,

I have wrote a simple api-login-script but every time I get the error message: badlogin.
I have tested the login with some accounts and i'm sure that the username and password are correct.

You can very simple the script, if you have a vbulletin installation and a activated api function.
All what you need is to edit the variable $apiurl and $apikey and uplodad the script to your webspace.

I would be very appreciated if someone can help me. :-)

PHP Code:
<?php
        
//Parameters
        
$clientname "mysuperclient";
        
$clientversion ="0.1";
        
$platformname "example";
        
$platformversion ="2.5";
        
$uniqueid "1234";
        
$apiurl='http://www.my-domain.de/forum/api.php'// Edit here
        
$apikey 'myAPIKey'// Edit here

        
error_reporting(E_ALL);

        
///////////////////////////////////////// ACTION

        
if(isset($_POST['username']) && isset($_POST['password'])) {
            
$userName $_POST['username'];
            
$password $_POST['password'];
            
            if(
$userName != '' && $password != '') {
                
$jsarray initApiRequest($clientname$clientversion$platformname$platformversion$uniqueid$apiurl);
                
$jsarray doLogIn($jsarray$userName$password$apikey$apiurl);
                
            } else {
                echo 
"userName == '' || password == ''";
            }
        }
        
///////////////////////////////////////// FUNCTIONS

        
function initApiRequest($clientname$clientversion$platformname$platformversion$uniqueid$apiurl) {
            
$init_request =  $apiurl .'?api_m=api_init&clientname='$clientname .'&clientversion='.$clientversion .'&platformname='.$platformname .'&platformversion=' .$platformversion .'&uniqueid='.$uniqueid
            
$jsarray doRestRequest($init_request);
            return 
$jsarray;
        }

        function 
doLogIn($jsarray$userName$password$apikey$apiurl) {
            
$requestparams = array('api_m' => 'login_login''vb_login_username' => $userName'vb_login_md5password' => md5($password));
            
ksort($requestparams); 
            
$login_string http_build_query($requestparams'''&'); 

            
$apiaccesstoken $jsarray->{'apiaccesstoken'};
            
$apiclientid $jsarray->{'apiclientid'};
            
$secret $jsarray->{'secret'};

            
$apiversion $jsarray->{'apiversion'};

            
$api_sig md5($login_string $apiaccesstoken $apiclientid $secret $apikey);
            
$api_registration_information 'api_c='$apiclientid .'&api_s='$apiaccesstoken .'&api_sig='$api_sig .'&api_v='$apiversion;
            
$login_request =  $apiurl .'?'$api_registration_information .'&'$login_string;

            
$jsarray doRestRequest($login_request);
            return 
$jsarray;
        }

        function 
doRestRequest($restRequest) {
            echo 
"<br>DO REST REQUEST["$restRequest ."]<br>";

            
$content '';
            
//Open and read the content
            
$fp fopen($restRequest'r');

            
// keep reading until there's nothing left
            
while ($line fread($fp1024)) {
                
$content .= $line;
            }
            
fclose($fp);            
                  
            echo 
"<hr>";
            
var_dump(json_decode($contenttrue));
            echo 
"<hr>";

            
//decode the content
            
$jsarray json_decode($content);
            return 
$jsarray;
        }
 
?>
        <html>
            <head>
            </head>
            <body>
                <form action="myresttest.php" method="post">
                 <p>Username: <input type="text" name="username" /></p>
                 <p>Password: <input type="password" name="password" /></p>
                 <p><input type="submit" /></p>
                </form>
            </body>
        </html>
Reply With Quote
 


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 01:26 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.14520 seconds
  • Memory Usage 2,646KB
  • Queries Executed 12 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)bbcode_code
  • (3)bbcode_php
  • (2)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (8)post_thanks_box
  • (1)post_thanks_box_bit
  • (8)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit
  • (8)post_thanks_postbit_info
  • (8)postbit
  • (8)postbit_onlinestatus
  • (8)postbit_wrapper
  • (1)showthread_list
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_threadedmode.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids_threaded
  • showthread_threaded_construct_link
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • fetch_musername
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • post_thanks_function_fetch_thanks_bit_start
  • post_thanks_function_show_thanks_date_start
  • post_thanks_function_show_thanks_date_end
  • post_thanks_function_fetch_thanks_bit_end
  • post_thanks_function_fetch_post_thanks_template_start
  • post_thanks_function_fetch_post_thanks_template_end
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete