Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Koristenje array-a unutar klase

[es] :: PHP :: Koristenje array-a unutar klase

[ Pregleda: 2675 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

dsivic

Član broj: 188446
Poruke: 105



+2 Profil

icon Koristenje array-a unutar klase21.07.2008. u 12:07 - pre 191 meseci
Prilikom unosa u bazu podataka ovo mi nije radilo:
Code:

class clan
{
    private $nick;
    private $pass;
    private $email;
    private $data = array();
    private $err = array();


public function setData($data)
    {
        if(is_array($data))
        $this->data = $data;
             }
public function InsertData()
    {
        $sql = 
        "
            INSERT INTO clan SET 
            nick =  '$this->nick',      
            lozinka=  '$this->pass',   
            ime =  '$this->data[ime]',       
            prezime     =  '$this->data[prezime]' 
                          " ;
    }
}       


U tabelu se upisu podaci :
"
----------------------------------
ime | prezime
----------------------------------
Array[ime] | Array[prezime]
----------------------------------
" itd...

a kada uradim ovo sa promjenjivom $this->data onda radi :
$data = $this->data;

INSERT INTO clan SET
nick = '$this->nick',
lozinka = '$this->pass',
ime = '$data[ime]',
prezime = '$data[prezime]'

Moze li mi neko objasniti zasto.
 
Odgovor na temu

Miroslav Ćurčić
ex mVeliki
Novi Sad

Član broj: 19034
Poruke: 1118
*.adsl.beotel.net.



+19 Profil

icon Re: Koristenje array-a unutar klase21.07.2008. u 12:31 - pre 191 meseci
Code:

...
   ime  =  '".$this->data['ime']."',       
   prezime =  '".$this->data['prezime']."' 
...

Kad bi koristio neki editor s ispravnim PHP higlight-om video bi da parče "[ime]" nije ušlo kao deo promenljive kroz takvo direktno ubacivanje u "..." string.

To nema veze s klasom već sintaksom u radu s stringovima.
"The quieter you become, the more you are able to hear."
Blog | PowerCMS
 
Odgovor na temu

dsivic

Član broj: 188446
Poruke: 105



+2 Profil

icon Re: Koristenje array-a unutar klase21.07.2008. u 12:42 - pre 191 meseci
Tako radi, ali nije mi jasno zasto ne radi na prvi nacin. PHP ne izbacuje nikakvu gresku.

a i izvan klase u kodu rade oba nacina.
 
Odgovor na temu

Nemanja Avramović
Engineering Manager
MENU Technologies
Beograd, Srbija

Moderator
Član broj: 32202
Poruke: 4391
93.86.90.*

Sajt: https://avramovic.info


+46 Profil

icon Re: Koristenje array-a unutar klase21.07.2008. u 13:11 - pre 191 meseci
Izvan klase nemaš referenciranje na objekat ($this->) već samo promenljivu ($promenljiva) pa zato radi. U klasi bi trebalo da radi ovako:

"SELECT * FROM {$this->data['tabela']} WHERE blabla..."
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
 
Odgovor na temu

Miroslav Ćurčić
ex mVeliki
Novi Sad

Član broj: 19034
Poruke: 1118
*.adsl.beotel.net.



+19 Profil

icon Re: Koristenje array-a unutar klase21.07.2008. u 13:28 - pre 191 meseci
Takvo direktno ubacivanje u string ima neka ograničenja, i ti si upravo naleteo na jedno.

Zapamti da kod ovakvog ubacivanja promenljivoj možeš dodati samo jedan parametar, da ga tako nazovemo,
a ostali parametri se tretiraju kao deo glavnog stringa.

Dakle, promenljiva $this je prošla s parametrom data ali se nastavak ignoriše,
isto tako ne bi prošlo ubacivanje $Polje[0][0] gde bi ignorisao poslednje [0].

Možda jeste glupo ograničenje, ali šta je - tu je.

Još jedan bug koji sam primetio, ako u glavnom stringu imaš neki ne-printabilni karakter (prikazuje kao "kockica" jer ga nema u fontu) onda ćeš dobiti grešku ako iza njega bilo šta ubacuješ na ovaj način,
dok ubacivanje sa prekidom (npr: ...".$A."...) radi bez problema.
"The quieter you become, the more you are able to hear."
Blog | PowerCMS
 
Odgovor na temu

dsivic

Član broj: 188446
Poruke: 105



+2 Profil

icon Re: Koristenje array-a unutar klase21.07.2008. u 14:46 - pre 191 meseci
Hvala puno. Uvijek se ima sta nauciti.
 
Odgovor na temu

[es] :: PHP :: Koristenje array-a unutar klase

[ Pregleda: 2675 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.