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

Problem kod oblikovanja ispisa iz baze

[es] :: PHP :: Problem kod oblikovanja ispisa iz baze

Strane: 1 2

[ Pregleda: 4064 | Odgovora: 29 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Wizard4U
Wizard4U

Član broj: 178049
Poruke: 122
*.adsl.net.t-com.hr.



Profil

icon Problem kod oblikovanja ispisa iz baze26.06.2008. u 13:51 - pre 193 meseci
Ima jedna superkategorija, i onda se tu nalaze kategorije. trebam ispisati iz baze superkategoriju i onda ispod nje kategorije,i jesam ali se naravno ponavlja superkategorija iznad svake kategorije!, napravio na sljedeći naćin

Code:
<div class="spread">

<?php 
    $rs=db_query("SELECT id, category_id, category_name, category_safename, form_fields, type, related_categories, supercategory_id, super_name, super_safename  FROM category WHERE supercategory_id=1");
         
        
    while(list($id, $category_id, $category_name, $category_safename, $form_fields, $type, $related_categories, $supercategory_id, $super_name, $super_safename)=
    mysql_fetch_array($rs)){?>
    

   <div class="spread" id="heading">
 <?php echo $super_name;?>
   </div>
      <div class="spread" id="text">
 <?php echo $category_name;?>
      </div>    
    
     
    
     

         <?php
         }
         ?>    
</div>


kako da ispišem jednu (onu koju sam stavio kod naredbe za ispis) superkategoriju i onda ispod nje kategorije koje spadaju pod nju?

edit: Nemanja: Koristi [code] tagove za kodove.

[Ovu poruku je menjao Nemanja Avramović dana 26.06.2008. u 15:43 GMT+1]
 
Odgovor na temu

Man-Wolf
Mihailo Joksimovic
Beograd

Član broj: 17016
Poruke: 873
*.eunet.yu.



+13 Profil

icon Re: Problem kod oblikovanja ispisa iz baze26.06.2008. u 18:48 - pre 193 meseci
Cekaj, ako sam dobro razumeo, baza izgleda ovako:

CATEGORY:

Code:

-ID-|-category_id-|-category_name-|-category_safename-|-form_fields-|-type-|-related_categories-|-supercategory_id-|-super_name-|-super_safename-|


Category_*** - vezano je za obicne kategorije
supercategory_*** - super kategorije

E sad kategorije su vezane za superkategoriju. I ti treba da izvuces sve podatke o super kategoriji ( ime, id ) i podatke iz kategorija koje su vezane za super kategoriju.

Ja bi to ovako uradio (sa 2 upita):

1. Upitom vadim sve o super kategoriji:
Code:

$super = mysql_query("SELECT supercategory_id AS ID, super_name AS Name, super_safename AS SafeName FROM category WHERE supercategory_id=1");


2. Zatim pravim niz sa podacima o superkategoriji:

Code:

$supercat = mysql_fetch_array($super, MYSQL_ASSOC);

I dobijam sledece:

$supercat['ID'] -> ID
$supercat['Name'] -> Ime super kategorije
$supercat['SafeName'] -> SafeName sup. kategorije


I onda odstampam: super kategorija ta ta i ta, bla bla bla, odnosno kako si ti uradio:
Code:

 echo '<div class="spread" id="heading">.$supercat['Name'].'</div>';


Nakon toga, radimo drugi upit gde kupimo samo obicne kategorije vezane za super kategoriju:

Code:

$kategorije = mysql_query("SELECT id, category_id, category_name AS Ime, category_safename, form_fields, type, related_categorie FROM category WHERE supercategory_id=1");

Vadimo podatke i stampamo ih:

while($kategorija = mysql_fetch_array($kategorije))
{
  echo '<div class="spread" id="text">'.$kategorija['Ime'].'</div>';
}


To bi bilo to :-)


SELECT id, category_id, category_name, category_safename, form_fields, type, related_categories, supercategory_id, super_name, super_safename FROM category
 
Odgovor na temu

Wizard4U
Wizard4U

Član broj: 178049
Poruke: 122
*.adsl.net.t-com.hr.



Profil

icon Problem kod oblikovanja ispisa iz baze30.06.2008. u 08:51 - pre 193 meseci
Rješeno, ali sad opet ima drugi problem:
Code:

...
while ($row = mysql_fetch_array($rs, MYSQL_ASSOC))
   { 
 echo 'Regija:' ;
 
 echo $row[regija]."<br><br>";

echo'Korisnici';

echo $row[korisnik],"<br>"
   
}


Ali bi htio da mi se "Regija:" (naslov) ispiše samo jedanput, i onda se ispod izlista sadržaj!

[Ovu poruku je menjao flylord dana 30.06.2008. u 11:01 GMT+1]
 
Odgovor na temu

vecitiKrivac
Kv

Član broj: 61914
Poruke: 44
93.86.68.*



Profil

icon Re: Problem kod oblikovanja ispisa iz baze30.06.2008. u 09:28 - pre 193 meseci
Mislim da bi trebao ispis Regije da stavis ispred petlje.
Trenutno sta si ti uridio jeste, da ti se regija ispisuje dok listas podatke iz baze. Odnosno da u niz $row uguras sve podatke iz baze. Nakon toga ispises $row['regija']
I while petlji stampas sve clanove niza osim $row['regija']
Eheeh ehhehe
 
Odgovor na temu

Wizard4U
Wizard4U

Član broj: 178049
Poruke: 122
*.adsl.net.t-com.hr.



Profil

icon Re: Problem kod oblikovanja ispisa iz baze30.06.2008. u 09:30 - pre 193 meseci
To znam, ali ima više naslova, taj naslov sam stavio samo kao primjer. Kužiš?
 
Odgovor na temu

vecitiKrivac
Kv

Član broj: 61914
Poruke: 44
93.86.68.*



Profil

icon Re: Problem kod oblikovanja ispisa iz baze30.06.2008. u 09:34 - pre 193 meseci
Ako sam te sada razumeo imas regije za koje vezujes korsinike.
To ces da uradis tako sto ispises prvu regiju i stavis je u neku promeljivu, zatim svako sledecu regiju proveravas da li se razlikuje od prethodne
Code:
if ($strPrethodnaRegija != $row['regija'])

Eheeh ehhehe
 
Odgovor na temu

Wizard4U
Wizard4U

Član broj: 178049
Poruke: 122
*.adsl.net.t-com.hr.



Profil

icon Re: Problem kod oblikovanja ispisa iz baze30.06.2008. u 11:51 - pre 193 meseci
Evo, pokušao na sljedeći naćin :

Code:

$rs=db_query("SELECT category_id, category_name, supercategory_id FROM category WHERE supercategory_id='$supercategory_id' || supercategory_id='$supercategory_id'");
$category='';
while ($row = mysql_fetch_array($rs, MYSQL_ASSOC)) 
{
if($category == $row[category_name]){
continue;

else{
echo '<b>Category:</b>';
$category=$row['category_name'];
echo $category.'<br><br>';

}
}    



?>


Ali mi i dalje ispisuje Category: $category_name i tako ih ponavlja!
 
Odgovor na temu

vecitiKrivac
Kv

Član broj: 61914
Poruke: 44
93.86.68.*



Profil

icon Re: Problem kod oblikovanja ispisa iz baze30.06.2008. u 14:22 - pre 193 meseci
Mislim da bi ovo trebalo da radi, ako je u pitanju ispisivanje prve kategorije po nazivu
Code:

$category = '';

while ($row = mysql_fetch_array($rs, MYSQL_ASSOC)) // samo kategorije treba da budu sortirane po nazivu odnosno po category_name
{
    if ($category != $row['category_name'])
    {
        // ukoliko je ovo prva kategorija
        $category = $row['category_name'];
        echo "<b>Category:</b> $category <br /><br />";
    }
    else 
    {
        // ispisujes sta zelis
    }
}


proveri da li si u sql query naveo sortiranje po category_name ili ti on po default-u sortira po id.

Ja sam ovako nesto koristio za ispisivanje zemalja. Znaci za svaku zemlju izvucem informaciju u kom se regionu nalazi (stim sto ih sortiram po nazivu regiona), pa tako da kad ih ispisujem na taj nacin sto proveravam prvu zemlju iz tog regiona
Pozdrav:)
Eheeh ehhehe
 
Odgovor na temu

Wizard4U
Wizard4U

Član broj: 178049
Poruke: 122
*.adsl.net.t-com.hr.



Profil

icon Re: Problem kod oblikovanja ispisa iz baze30.06.2008. u 15:55 - pre 193 meseci
Probao na savjet Man-Wolfa na drugi način...staviti više while-a, ali mi drugi while ne ispiše ništa, zašto?? Jer mislim da sam u redu napravio!
Code:

echo'<b>Place:</b><br>';
while ($row = mysql_fetch_array($rs, MYSQL_ASSOC))
   {  
echo "<a href='category.php?category_id=".$row['category_id']."&naselje_id=".$row['naselje_id']."'>".$row['naselje']."</a><br>";

}

echo'<br><b>Region:</b><br>';
while ($row = mysql_fetch_array($rs, MYSQL_ASSOC))
   { 
echo "<a href='category.php?category_id=".$row['category_id']."&regija_id=".$row['regija_id']."'>".$row['reg']."</a><br>";
}


[Ovu poruku je menjao Wizard4U dana 30.06.2008. u 20:57 GMT+1]
 
Odgovor na temu

Wizard4U
Wizard4U

Član broj: 178049
Poruke: 122
*.adsl.net.t-com.hr.



Profil

icon Re: Problem kod oblikovanja ispisa iz baze30.06.2008. u 19:59 - pre 193 meseci
Evo cijeli kod:
Code:

$rs=db_query("SELECT spread.regija_id, spread.id AS id, spread.naselje_id AS naselje_id, spread.category_id AS category_id, spread.regija_id AS regija_id, spread.grad AS grad, region.id, region.naselje, region.regija_id, region.id_word AS reg, region.* FROM spread INNER JOIN place AS region ON spread.naselje_id = region.id WHERE spread.category_id='$category_id'"); 

//Place
echo'<b>Place:</b><br>';
while ($row = mysql_fetch_array($rs, MYSQL_ASSOC))
   {  
echo "<a href='category.php?category_id=".$row['category_id']."&naselje_id=".$row['naselje_id']."'>".$row['naselje']."</a><br>";

}


//Regions
echo'<br><b>Region:</b><br>';
while ($row = mysql_fetch_array($rs, MYSQL_ASSOC))
   { 
echo "<a href='category.php?category_id=".$row['category_id']."&regija_id=".$row['regija_id']."'>".$row['reg']."</a><br>";
}


}

 
Odgovor na temu

vecitiKrivac
Kv

Član broj: 61914
Poruke: 44
93.86.68.*



Profil

icon Re: Problem kod oblikovanja ispisa iz baze01.07.2008. u 08:35 - pre 193 meseci
Probaj da uradis sa dva sql i dve while petlje kao:

Code:

$sql = "SELECT regija_id, id AS id, naselje_id AS naselje_id, category_id AS category_id, regija_id AS regija_id, grad AS grad
        FROM spread
        WHERE category_id=$category_id";

$rs = db_query ($sql);



while ($row = mysql_fetch_array ($rs, MYSQL_ASSOC))
{
    echo "<b>Place:<b><br />";
    echo "<a href='category.php?category_id=".$row['category_id']."&naselje_id=".$row['naselje_id']."'>".$row['naselje']."</a><br>";
    
    $sql1 = "SELECT *
            FROM region
            WHERE id = $row[naselje_id]";

    $rs1 = db_query ($sql);
    
    while ($row1 = mysql_fetch_array ($rs, MYSQL_ASSOC))
    {
        echo "<a href='category.php?category_id=".$row['category_id']."&regija_id=".$row['regija_id']."'>".$row['reg']."</a><br>";
    }    
}


Neznam da li ovo pomaze
Eheeh ehhehe
 
Odgovor na temu

Wizard4U
Wizard4U

Član broj: 178049
Poruke: 122
*.adsl.net.t-com.hr.



Profil

icon Re: Problem kod oblikovanja ispisa iz baze01.07.2008. u 10:00 - pre 193 meseci
Rješeno, napravio sam ispod ispis naselja drugi upit i rješio stvar bez kompliciranja!

Ima sad još jedan problemčić koji mislim da se može ugurat u ovu temu:

Problem:
na početku definiram :

$user=$_SESSION[user][id];

I u kodu trebam napraviti provjeru

Code:

if (.$row['user_id'].==$user)

//onda počni neku akciju


Neznam kako oblikovati ovu provjeru, probao sam stvarno na jako puno načina i ili mi ne funkcionira ili ispiše error!


[Ovu poruku je menjao Wizard4U dana 02.07.2008. u 11:56 GMT+1]
 
Odgovor na temu

Wizard4U
Wizard4U

Član broj: 178049
Poruke: 122
*.adsl.net.t-com.hr.



Profil

icon Re: Problem kod oblikovanja ispisa iz baze03.07.2008. u 13:13 - pre 193 meseci
Rješeno:

Nisam znao da se kod provjere a da je pomočni string u pitanju (ne znam kako nazvati kada pomoču zajedničkog stringa ispšisuješ podatke, ako netko zna neka napiše ovdje pa da i ja znam ubuduće) da se trebaju unutar uglate zagrade staviti dvostruki navodnici, evo provjere:
Code:

if($row["user_id"]==$user){
 
Odgovor na temu

Man-Wolf
Mihailo Joksimovic
Beograd

Član broj: 17016
Poruke: 873
*.eunet.yu.



+13 Profil

icon Re: Problem kod oblikovanja ispisa iz baze03.07.2008. u 15:04 - pre 193 meseci
Pravo da ti kazem, nisam ni ja to znao, tj prvi put cujem da moraju dvostruki navodnici .... Pre mi se cini da je bila greska sto si stavljao tacke ----> .

Code:

if (--->.<----$row['user_id'].==$user)
 
Odgovor na temu

Wizard4U
Wizard4U

Član broj: 178049
Poruke: 122
*.adsl.net.t-com.hr.



Profil

icon Re: Problem kod oblikovanja ispisa iz baze03.07.2008. u 17:16 - pre 193 meseci
Nije, bila je stvar u tome kaj se treba stavit dvostruke navodnike u tom slučaju. Našao sam u jednoj od knjiga koje imam.
 
Odgovor na temu

Wizard4U
Wizard4U

Član broj: 178049
Poruke: 122
*.adsl.net.t-com.hr.



Profil

icon Re: Problem kod oblikovanja ispisa iz baze07.07.2008. u 12:07 - pre 193 meseci
Evo sljedeće stvari koja mislim spada tu:

Code:

$id=$_GET['id'];
$upit='SELECT id, category_id, supercategory_id, naselje_id, regija_id, jezik_id,
naslov, opis, adresa, grad, drzava, cijena, tip_oglasa FROM spread WHERE
id='$id'';
$rs = db_query($upit);    

    while ($row=mysql_fetch_array($rs)){   }
    

Pomoču tog upita ispišem onaj oglas koji ima $id (kojeg smo dohvatili). Kako da ja sad ispišem oglase koji ima sličan naslov ovome kojem smo dogvatili $id!?

Ja sam mislio da se taj upit izvrši i onda se napravi odmah ispod drugi upit u koji iz prvog prenesemo naslov pa onda ide ...LIKE %naslov%.
1. PITANJE: dal ima koje bolje rješenje?
2.PITANJE. kako da prenesem u drugi upit nešto iz prvog?
 
Odgovor na temu

Man-Wolf
Mihailo Joksimovic
Beograd

Član broj: 17016
Poruke: 873
*.eunet.yu.



+13 Profil

icon Re: Problem kod oblikovanja ispisa iz baze07.07.2008. u 16:22 - pre 193 meseci
Mislim da bi ovako trebalo da dobijes to sto oces:

Code:

"SELECT id, category_id, supercategory_id, naselje_id, regija_id, jezik_id,
naslov, opis, adresa, grad, drzava, cijena, tip_oglasa FROM spread WHERE naslov LIKE (SELECT naslov FROM spread WHERE ID = $id)"
 
Odgovor na temu

Wizard4U
Wizard4U

Član broj: 178049
Poruke: 122
*.adsl.net.t-com.hr.



Profil

icon Re: Problem kod oblikovanja ispisa iz baze07.07.2008. u 22:07 - pre 193 meseci
1. Radi ali ispiše samo one koji su potpuno isti, a trebalo bi mi da gleda CIJELI naslov, bilo prema početku , sredini ili kraju!?!
ima koje bolje rješenje ili drugačije (a efektivnije?)?

2. Reci mi kako da naslov iz ovog upita prenesem u drugi pa onda u drugom usporedim naslov?
Pitam radi tog primjera ali i inače mi treba a ne znam to!
Code:

$id=$_GET['id'];
$rs = db_query("SELECT id, naslov FROM spread WHERE  id = $id LIMIT 5");

    while ($red = mysql_fetch_array($rs, MYSQL_ASSOC))
   { 
   echo $red['naslov'];
   }




[Ovu poruku je menjao Wizard4U dana 07.07.2008. u 23:27 GMT+1]
 
Odgovor na temu

Man-Wolf
Mihailo Joksimovic
Beograd

Član broj: 17016
Poruke: 873
*.eunet.yu.



+13 Profil

icon Re: Problem kod oblikovanja ispisa iz baze07.07.2008. u 23:21 - pre 193 meseci
1. Primetio sam da neradi, moram da pogledam jos malo, pa ako nadjem resenje recicu ti ... Al bolje pitaj na MySQL forumu ....

2. Pa lako:

Code:

$rs = db_query("SELECT id, naslov FROM spread WHERE  id = $id LIMIT 5");

  $naslov = mysql_fetch_assoc($rs);
  $naslov = $naslov['naslov']; // I sad imas promenljivu $naslov, koja sadrzi naslov iz prethodnog upita, pa je upotrebis gde oces :)



Btw, pretpostavljam da ti prvi upit vraca samo jedan rezultat ?!? Ako ne, onda ti nece raditi lepo ovaj kod sto sam napisao ....
 
Odgovor na temu

Wizard4U
Wizard4U

Član broj: 178049
Poruke: 122
*.adsl.net.t-com.hr.



Profil

icon Re: Problem kod oblikovanja ispisa iz baze08.07.2008. u 07:49 - pre 193 meseci
Da, vraća samo jedan upit. vraća samo onaj koji ima isti naslov (ali baš isti)!
 
Odgovor na temu

[es] :: PHP :: Problem kod oblikovanja ispisa iz baze

Strane: 1 2

[ Pregleda: 4064 | Odgovora: 29 ] > FB > Twit

Postavi temu Odgovori

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