Forumai | Naujienų archyvas | Straipsnių archyvas | Struktūra |
Paieška      

Naudotojas: Anonimas | Naudotojų sistemoje: 31464 | Dabar naršo: 92 (0)
Prisijungimas
Vardas:
Slaptažodis:
 prisiminti

Dar neužsiregistravai?
registruokis »

Pamiršai slaptažodį
Naujienų kategorijos
 PHP naujienos (187)
 php.lt naujienos (38)
 Įvairios naujienos (89)
 Naujos programos (66)
 Darbas (73)
Naujienos

Tradicinė WEB konferencija //2011.03.29

Startup Weekend, Vilnius/Kaunas ! //2010.03.26

PHP konferencija 2010 //2010.03.16

PHP conf'09 tiesioginė transliacija - internetu //2009.04.21

PHP conf '09 //2009.04.08

Ieškomi pranešėjai PHP konferencijai '09 //2009.03.19
Naudingos nuorodos

Kaip naudotis
BBcode tinklapyje?
Draugai

Undefined offset: 1

PHP pradedantiesiems

Undefined offset: 1
2016-02-07 12:11, parašė: Vaidas14041

Sveiki, nesenai pradėjau programuoti php, gaunu Notice: Undefined offset: 1 on line 40

public function oAuth($code)
{
$this->url = 'url';
$this->post_params['client_id'] = $this->client_id;
$this->post_params['client_secret'] = $this->client_secret;
$this->post_params['code'] = $code;

$response = $this->_send('POST', TRUE);

preg_match('/access_token=(\w+)&token_type/', $response, $match);
$this->access_token = $match[1]; //40
}

nerandu, kaip ištaisyti, gal kas žinote?

Re: Undefined offset: 1
2016-02-07 12:19, parašė: Dewilas

Masyve $match nera elemento su 1 indexu. Issidumpink pirmiausiai ir ziurek ka grazina

Re: Undefined offset: 1
2016-02-07 12:47, parašė: Vaidas14041

Išsidumpinus pasirodo masyvas tuščias. Bandau prisijungti prie api, naudoju wraperi iš https://github.com/gswalden/thingiverse, kuris padarytas pagal https://www.thingiverse.com/developers/getting-started, kode nieko nekeičiau ir viskas lyg ir gerai atrodo, nurodžiau client_id ir client_secret, kaip nurodyta api iš https://www.thingiverse.com/login/oauth/authorize?client_id=065d5641869bec398f5f gavau koda, kurį nusiunčiu į oAuth($code) funkciją, kad gaučiau access token, bet jokio atsako negaunu. Gal kas žino, kur gali būti problema?








<?echo "

<?php


class Thingiverse {
    
    const BASE_URL = 'https://api.thingiverse.com/';

    public $access_token;
    public $response_data;
    public $response_code;
    public $last_response_error;

    protected $client_id;
    protected $client_secret;
    protected $redirect_uri;

    protected $post_params = NULL;
    protected $url = NULL;

    protected $available_licenses = array('cc', 'cc-sa', 'cc-nd', 'cc-nc-sa', 'cc-nc-nd', 'pd0', 'gpl', 'lgpl', 'bsd');
    
    public function __construct($token = NULL)
    {
        $this->client_id = '065d5641869bec398f5f';
        $this->client_secret = '9d4ebbc6e1d1b517a43c7c49ab684f1d';

        $this->access_token = $token;
    }
    
    public function oAuth($code)
    {
        $this->url = 'https://www.thingiverse.com/login/oauth/access_token';
        $this->post_params['client_id']     = $this->client_id; 
        $this->post_params['client_secret'] = $this->client_secret;
        $this->post_params['code']          = $code;
        
        $response = $this->_send('POST', TRUE);
        
        preg_match('/access_token=(\w+)&token_type/', $response, $match);
        
        $this->access_token = $match[1];
    }
    
    
    
    
    protected function _reset()
    {
        $this->post_params = NULL;
        $this->url = NULL;
    }
    
    protected function _send($type = 'GET', $is_oauth = FALSE)
    {
        if (empty($this->access_token) && ! $is_oauth)
            exit('No access token.');
        if (empty($this->url))
            exit('No URL.');

        $curl = curl_init();
        
        curl_setopt($curl, CURLOPT_URL, $this->url);
        
        $type = strtoupper($type);
        
        switch ($type)
        {
            case 'POST'  :
            case 'PATCH' :
            case 'DELETE':
                if ( ! $is_oauth)
                    curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($this->post_para ms));
                else
                    curl_setopt($curl, CURLOPT_POSTFIELDS, $this->post_params);
                curl_setopt($curl, CURLOPT_CUSTOMREQUEST, $type);
            case 'GET':
                break;
            default:
                exit("
Invalid request type'$type'.");        
        }
        
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

        if ( ! $is_oauth)
        {
            curl_setopt($curl, CURLOPT_HTTPHEADER, array('Authorization: Bearer ' . $this->access_token,&nb sp;'Content-Type: application/json'));
        }
        
        curl_setopt($curl, CURLOPT_TIMEOUT, 10);
        curl_setopt($curl, CURLOPT_HEADER, 1);

        $response = curl_exec($curl);
        $this->response_code = curl_getinfo($curl, CURLINFO_HTTP_CODE);
        
        $header_size = curl_getinfo($curl, CURLINFO_HEADER_SIZE);
        $response_header = substr($response, 0, $header_size);
        $response_body = substr($response, $header_size);
        
        if ($this->response_code != 200)
        {
            if (preg_match('/x-error: (.+)/i', $response_header, $match))
                $this->last_response_error = $match[1];
            else
                $this->last_response_error = 'No error given in header. Check  ;response body.';
        }
        else
            $this->last_response_error = '';

        // Uncomment next four lines to see/debug full cURL response
        $curl_info = curl_getinfo($curl);
        var_dump($curl_info);
        var_dump($response_header);
        var_dump($response_body);

        curl_close($curl);
        
        $this->_reset();
        
        if ($is_oauth)
            return $response_body;

        $this->response_data = json_decode($response_body);

        return $this->response_code;
    }
    
    
}

$e=new Thingiverse();
$e->oAuth('f2090b34f9d6388811c2531189b6db7b');

?>



";[/php]

Re: Undefined offset: 1
2016-02-17 11:20, parašė: md5

baisiai parašyta klasė


Primename kad norint dalyvauti forume reikia prisijungti prie sistemos. Jei Jūs vis dar neprisiregistravę, prašom registruotis.
Easter spells out beauty, the rare beauty of new life | © php.lt komanda 2001-2015