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

Upisivanje rezultata rekurzivne funkcije u niz

[es] :: PHP :: Upisivanje rezultata rekurzivne funkcije u niz

[ Pregleda: 4075 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Thugzsr
Milos Maric
student
Novi Sad

Član broj: 229631
Poruke: 103
*.static.sbb.rs.



+1 Profil

icon Upisivanje rezultata rekurzivne funkcije u niz26.07.2013. u 13:39 - pre 129 meseci
Pozdrav ljudi, kao sto naslov kaze imam problem sa rekurzivnom funkcijom, tj njen ispis mi se ne svidja. Ispisuje kao redovan niz, od prvog do poslednjeg clana, a meni treba od poslednjeg do prvog. I onda sam ja hteo da upisem funkciju u niz, pa da iz niza iscitam od poslednjeg do prvog. Probao sam
Code:
array_push($niz, display_children($row['parent_id'], $level+1)) ; 
na ovaj nacin, ali tako dobijem beskonacni niz i errore...Zna li neko bolji nacin?
 
Odgovor na temu

deZio
Inđija

Član broj: 150608
Poruke: 345
*.dynamic.isp.telekom.rs.



+38 Profil

icon Re: Upisivanje rezultata rekurzivne funkcije u niz26.07.2013. u 13:42 - pre 129 meseci
Jel bi ti pomoglo kad bi obrnuo niz uz pomoć f-je array_reverse ?
http://www.php.net/manual/en/function.array-reverse.php
 
Odgovor na temu

plus_minus

Član broj: 289459
Poruke: 2242
*.dynamic.isp.telekom.rs.

Sajt: https://hardcoder.xyz


+2247 Profil

icon Re: Upisivanje rezultata rekurzivne funkcije u niz26.07.2013. u 13:42 - pre 129 meseci
... array_reverse() ... ?

[edit] > @deZio .. preteče me za par sekundi.. D:

Al' pazi kad php čoveče iz 2 do 3 cuga bukvalno sve može sa nizovima.. gde šta je sa leve strane.. pa onda kombinacija.. samo treba da se pročita i isproba.
about:networking
 
Odgovor na temu

Thugzsr
Milos Maric
student
Novi Sad

Član broj: 229631
Poruke: 103
*.static.sbb.rs.



+1 Profil

icon Re: Upisivanje rezultata rekurzivne funkcije u niz29.07.2013. u 12:27 - pre 129 meseci
Problem je sto meni sada upisuje umesto 4 clana koja treba da upise u niz, upise 4 broja 1...evo funkcije
Code:
function display_children($category_id, $level) 
{
  global $database;
   
    $result = mysql_query("SELECT * FROM parents WHERE id_roditelja='$category_id'") or die(mysql_error());
    
   $broj = $database->num_rows($result);
    $niz = array();
  
    while ($row = mysql_fetch_array($result)) 
    {
       echo str_repeat('  ',$level) . $row['naziv'] . "-> ";
       $niz =  array_push($niz, display_children($row['parent_id'], $level+1)) ; 
       var_dump($niz);
    }
    
}

e sad meni upis u taj $niz ne radi, funckija funckionise savrseno, dobijem putanju kako treba, ali ja hocu da je upisem u niz i obrnem :) to cu verovatno uspeti sa array_reverse
ali kad dodjem do toga :)
var_dump($niz) daje ovako
Code:
int 1
int 1
int 1
int 1

i to mi je problem...
 
Odgovor na temu

pajaja
Beograd

Administrator
Član broj: 41598
Poruke: 3430
..f0b:1af2:1c9c:6fdd:a7b6:fe07

Jabber: pajaja@elitesecurity.org
ICQ: 253317269


+144 Profil

icon Re: Upisivanje rezultata rekurzivne funkcije u niz29.07.2013. u 18:57 - pre 129 meseci
array_push vraca integer a ne niz.
http://php.net/manual/en/function.array-push.php



xxx
mali mali mali kamičak...nebo plave boje.
In Memoriam: Madzone Zeka(15.09.2005-16.09.2005)
 
Odgovor na temu

Thugzsr
Milos Maric
student
Novi Sad

Član broj: 229631
Poruke: 103
*.static.sbb.rs.



+1 Profil

icon Re: Upisivanje rezultata rekurzivne funkcije u niz31.07.2013. u 11:28 - pre 129 meseci
Na koji nacin onda da upisem? Moze li neko pomoci?
 
Odgovor na temu

pajaja
Beograd

Administrator
Član broj: 41598
Poruke: 3430
2001:470:1f0b:1af2:7880:4f14..

Jabber: pajaja@elitesecurity.org
ICQ: 253317269


+144 Profil

icon Re: Upisivanje rezultata rekurzivne funkcije u niz09.08.2013. u 16:44 - pre 129 meseci
Ti sa
Code (php):

$niz =  array_push($niz, display_children($row['parent_id'], $level+1)) ;
 

nizu dodeljujes novi broj elemenata u tom nizu, tako da on nije vise array vec obican broj.
Probaj da umesto toga stavis samo:
Code (php):

array_push($niz, display_children($row['parent_id'], $level+1)) ;
 


[Ovu poruku je menjao pajaja dana 10.08.2013. u 14:03 GMT+1]
xxx
mali mali mali kamičak...nebo plave boje.
In Memoriam: Madzone Zeka(15.09.2005-16.09.2005)
 
Odgovor na temu

Thugzsr
Milos Maric
student
Novi Sad

Član broj: 229631
Poruke: 103
*.static.sbb.rs.



+1 Profil

icon Re: Upisivanje rezultata rekurzivne funkcije u niz27.08.2013. u 09:52 - pre 128 meseci
Kada uradim tako, var_dump $niza je
Code:
array
  0 => null
array
  0 => null
array
  0 => null
array
  0 => null

4 ponavljanja treba da bude, ali nikako ne bi trebalo biti null...
 
Odgovor na temu

miloskec
freelancer
internet
zrenjanin

Član broj: 309432
Poruke: 26
*.dynamic.isp.telekom.rs.



+6 Profil

icon Re: Upisivanje rezultata rekurzivne funkcije u niz27.08.2013. u 14:18 - pre 128 meseci
Kad negde zapne, a sve ti deluje ok onda je verovatno problem u logici razmišljanja ili u "aksiomama" tj. u onome za šta veruješ da znaš kako radi.

1. Odradi kod van funkcije.

2. Dampuj sve što možeš:
a- $result
b- $row = mysql_fetch_array($result)
c- $row['parent_id']
d- display_children($row['parent_id'], $level+1)
...da vidiš šta vraća upit i da li su možda prazna polja za koja očekuješ da imaju rezultat.
 
Odgovor na temu

Thugzsr
Milos Maric
student
Novi Sad

Član broj: 229631
Poruke: 103
*.static.sbb.rs.



+1 Profil

icon Re: Upisivanje rezultata rekurzivne funkcije u niz29.08.2013. u 10:14 - pre 128 meseci
Sve uradio, i ok je sve, osim $niza, koji je prazan niz...ne znam u cemu je problem.
 
Odgovor na temu

Burgos
Nemanja Borić
Amazon Web Services
Berlin

Član broj: 12484
Poruke: 1947
212.178.228.*

Sajt: stackoverflow.com/users/1..


+480 Profil

icon Re: Upisivanje rezultata rekurzivne funkcije u niz29.08.2013. u 15:52 - pre 128 meseci
Code:
array_push($niz, display_children($row['parent_id'], $level+1)) ; 


Šta tebi vraća funkcija display_children, pa stavljaš u niz? Koliko vidim, ništa.

(Verovatno neće raditi, vidi ispod)

Code:
function display_children($category_id, $level) 
{
  global $database;
   
    $result = mysql_query("SELECT * FROM parents WHERE id_roditelja='$category_id'") or die(mysql_error());
    
   $broj = $database->num_rows($result);
    $niz = array();
    $str = '';
    while ($row = mysql_fetch_array($result)) 
    {
       $str = str_repeat('  ',$level) . $row['naziv'] . "-> ";
       array_push($niz, display_children($row['parent_id'], $level+1)) ; 
       var_dump($niz);
    }
    return $str;
}


A na drugi pogled, nemaš ni uslov završetka rekurzije, već ulaziš beskonačno unutra (SQL naredba ne zavisi od $level promenljive, ako jednom vrati red, uvek će). Ne znam ni zašto stalno praviš novi niz, i šta bi u njemu trebalo da bude. Razmisli malo bolje o rešenju, ovde imaš mnogo problema.
 
Odgovor na temu

[es] :: PHP :: Upisivanje rezultata rekurzivne funkcije u niz

[ Pregleda: 4075 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

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