Autorius Tema: Klaida: Fatal error: Call to a member function set_method() on a non-object in  (Skaityta 862 kartus)

Neprisijungęs Tautvydas

  • Dalyvis
  • **
  • Įrašai: 427
  • Karma: +11/-0
    • Žiūrėti profilį
Fatal error: Call to a member function set_method() on a non-object in /home/wow/domains/hostas.eu/public_html/web/api_da.php on line 174

O toji 74 eilute:

<?php
function doNewAccount($username$domain$email$pass$package){

global $sock;
 
$sock->set_method('POST');  // CIA 74
 
$sock->query('/CMD_API_ACCOUNT_USER',
array(
'action' => 'create',
'add' => 'Submit',
'username' => $username,
'email' => $email,
'passwd' => $pass,
'passwd2' => $pass,
'domain' => $domain,
'package' => $package,
'ip' => '91.225.104.8',
'notify' => 'yes'
));

Jau kelinta diena ieskau klaidos, ir niekaip nerandu. Turiu tiesiog sistema viena ir noriu ja savo tinklapyje panaudoti, atrodo viskas gerai, bet vis meta ta klaida.. Turit ideju, kaip rasti klaida?
Dekui.

Neprisijungęs Modestas Vaitkevičius

  • Dalyvis
  • **
  • Įrašai: 2005
  • Karma: +56/-16
    • Žiūrėti profilį
    • Apie mane
O kaip ją iškvieti? :)

Neprisijungęs Tautvydas

  • Dalyvis
  • **
  • Įrašai: 427
  • Karma: +11/-0
    • Žiūrėti profilį
doNewAccount($username, $domain, $email, $password, $package);

Patikrinau, visi uzsetinti kintamieji. Beje, galima butu naudoti ir tarkim:
   doNewAccount($vardas, 'tekstas', $email, $password, $packageasasdasd);
ir vistiek turetu veikti? T.y. cia nebutinai turi buti tokie patys kintamieji, kaip funkcijos aprasyme?

Neprisijungęs justinas

  • Naujokas
  • *
  • Įrašai: 163
  • Karma: +16/-3
    • Žiūrėti profilį
Nematydami, kas yra $sock mes tau niekaip nepadėsim.

Manualai.lt Forumas


Neprisijungęs Tautvydas

  • Dalyvis
  • **
  • Įrašai: 427
  • Karma: +11/-0
    • Žiūrėti profilį
Na bandau visą įkopinti, gal turėsit minčių. Lygiai identiškas failas su kita sistema veikia, o su manąja šitą meta. Pagal veikimo principą turi viskas atitikti, bet neveikia.. O bėdos rasti nesugebu jau.

<?php

##############################
##  CONNECT TO DIRECTADMIN  ##
##############################

function DaConnect($loginname ''){

global $sock;

if($loginname == ''){

$sock = new HTTPSocket;
$sock->connect("91.225.104.8"2222);
$sock->set_login("login","slaptazodis");

} else {

$sock = new HTTPSocket;
$sock->connect("91.225.104.8"2222);
$sock->set_login("login""slaptazodis");

}

}

##############################
## CMD_API_SHOW_USER_CONFIG ##
##############################

function getUserConfig($user ''){

global $sock$userdata;

if($user == ''){ $user .= $userdata['username']; }

$sock->set_method('GET');
$sock->query('/CMD_API_SHOW_USER_CONFIG',
array(
'user' => $user
));

return $sock->fetch_parsed_body();

}

#############################
## CMD_API_SHOW_USER_USAGE ##
#############################

function getUserUsage(){

global $sock$userdata;

$sock->set_method('GET');
$sock->query('/CMD_API_SHOW_USER_USAGE',
array(
'user' => $userdata['username']
));

return $sock->fetch_parsed_body();

}

###############################
## CMD_API_SHOW_USER_DOMAINS ##
###############################

function getUserDomains(){

global $sock$userdata;

$sock->set_method('GET');
$sock->query('/CMD_API_SHOW_USER_DOMAINS',
array(
'user' => $userdata['username']
));

return $sock->fetch_parsed_body();

}

#################################
## CMD_API_MODIFY_USER PACKAGE ##
#################################

function modifyUserPackage($package){

global $sock$userdata;

$sock->set_method('POST');
$sock->query('/CMD_API_MODIFY_USER',
array(
'user' => $userdata['username'],
'action' => 'package',
'package' => $package
));

return $sock->fetch_parsed_body();

}

############################
## CMD_API_MODIFY_USER BW ##
############################

function modifyUserBw(){

global $sock$userDaInfo$userdata;

$newbw $userDaInfo['additional_bandwidth'] + "1000";

$sock->set_method('POST');
$sock->query('/CMD_API_MODIFY_USER',
array(
'additional_bandwidth' => $newbw,
'additional_bw' => 'submit',
'action' => 'single',
'user' => $userdata['username']
));

return $sock->fetch_parsed_body();

}

##################################
## CMD_API_SELECT_USERS SUSPEND ##
##################################

function modifyUserDoSuspend($user){

global $sock;

$sock->set_method('POST');
$sock->query('/CMD_API_SELECT_USERS',
array(
'location' => 'CMD_API_SELECT_USERS',
'select0' => $user,
'dosuspend' => '1'
));

return $sock->fetch_parsed_body();

}

#####################################
## CMD_API_SELECT_USERS UN_SUSPEND ##
#####################################

function modifyUserDoUnSuspend($user){

global $sock;

$sock->set_method('POST');
$sock->query('/CMD_API_SELECT_USERS',
array(
'location' => 'CMD_API_SELECT_USERS',
'select0' => $user,
'dounsuspend' => '1'
));

return $sock->fetch_parsed_body();

}

#################################
## CMD_API_ACCOUNT_USER CREATE ##
#################################

function doNewAccount($username$domain$email$pass$package){

global $sock;
 
$sock->set_method('POST');
 
$sock->query('/CMD_API_ACCOUNT_USER',
array(
'action' => 'create',
'add' => 'Submit',
'username' => $username,
'email' => $email,
'passwd' => $pass,
'passwd2' => $pass,
'domain' => $domain,
'package' => $package,
'ip' => '91.225.104.8',
'notify' => 'yes'
));

Neprisijungęs justinas

  • Naujokas
  • *
  • Įrašai: 163
  • Karma: +16/-3
    • Žiūrėti profilį
O. Kur. Funkciją. Iškvieti...

Neprisijungęs Tautvydas

  • Dalyvis
  • **
  • Įrašai: 427
  • Karma: +11/-0
    • Žiūrėti profilį
Rašiau jau:
      doNewAccount($username, $domain, $email, $password, $package);

Ten kas aukščiau įtakos neturi daryti, nes ten tik nustato tuos username ir t.t. kintamuosius. Dabar pabandžiau funkcijos iškvietimui išvis šitaip parašyti:
doNewAccount('username', 'domain', 'email', 'password', 'package');

Ir klaida lygiai ta pati.

Neprisijungęs justinas

  • Naujokas
  • *
  • Įrašai: 163
  • Karma: +16/-3
    • Žiūrėti profilį
Rašiau jau:
      doNewAccount($username, $domain, $email, $password, $package);

Ten kas aukščiau įtakos neturi daryti, nes ten tik nustato tuos username ir t.t. kintamuosius. Dabar pabandžiau funkcijos iškvietimui išvis šitaip parašyti:
doNewAccount('username', 'domain', 'email', 'password', 'package');

Ir klaida lygiai ta pati.
Esmė ta, kad funkcija naudoja $sock globalą. Jo tu turbūt išvis neturi, o jei turi – tai parodyk. Jis yra būtinas, error žinutė reiškia kad jo arba išvis nėra, arba jis nėra objektas (o funkcija tikisi objekto).

Neprisijungęs Tautvydas

  • Dalyvis
  • **
  • Įrašai: 427
  • Karma: +11/-0
    • Žiūrėti profilį
To sock globalo nera tame ilgame faile, ,kuri pridejau?

Toks dalykas turetu buti kituose failuose kazkur kaip suprantu tada?


EDIT:
Na mano supratimu tai cia jau ta $SOCK priskiria.
<?php

##############################
##  CONNECT TO DIRECTADMIN  ##
##############################

function DaConnect($loginname ''){

global $sock;

if($loginname == ''){

$sock = new HTTPSocket;
$sock->connect("91.225.104.8"2222);
$sock->set_login("login","slaptazodis");

} else {

$sock = new HTTPSocket;
$sock->connect("91.225.104.8"2222);
$sock->set_login("login""slaptazodis");

}

}
« Paskutinį kartą keitė: 2012-12-19 16:55:18 pm sukūrė Tautvydas »

Neprisijungęs justinas

  • Naujokas
  • *
  • Įrašai: 163
  • Karma: +16/-3
    • Žiūrėti profilį
To sock globalo nera tame ilgame faile, ,kuri pridejau?

Toks dalykas turetu buti kituose failuose kazkur kaip suprantu tada?


EDIT:
Na mano supratimu tai cia jau ta $SOCK priskiria.
<?php

##############################
##  CONNECT TO DIRECTADMIN  ##
##############################

function DaConnect($loginname ''){

global $sock;

if($loginname == ''){

$sock = new HTTPSocket;
$sock->connect("91.225.104.8"2222);
$sock->set_login("login","slaptazodis");

} else {

$sock = new HTTPSocket;
$sock->connect("91.225.104.8"2222);
$sock->set_login("login""slaptazodis");

}

}
Jo – funkcijoje. Jei DaConnect neiškvieti prieš doNewAccount – nieko ir nepriskirs.

Neprisijungęs Tautvydas

  • Dalyvis
  • **
  • Įrašai: 427
  • Karma: +11/-0
    • Žiūrėti profilį
Ats: Klaida: Fatal error: Call to a member function set_method() on a non-object in
« Atsakymas #10 Įrašytas: 2012-12-19 20:47:21 pm »
Taip, čia ir klaida. Ačiūū, skolingas alaus.

Manualai.lt Forumas

Ats: Klaida: Fatal error: Call to a member function set_method() on a non-object in
« Atsakymas #10 Įrašytas: 2012-12-19 20:47:21 pm »