Afisare a continutului unui tabel MySQL

Ai o întrebare legată de PHP? Incercăm să îi găsim soluţie. Sau poate doar vrei să publici un cod interesant.

Moderatori: Zamolxe, Moderatori

Rovas
Average Member
Mesaje: 108
Membru din: Sâm Aug 12, 2006 10:54 am

Afisare a continutului unui tabel MySQL

Mesajde Rovas » Sâm Aug 12, 2006 11:15 am

Vreau sa afisez intr- o pagina PHP un tabel (mai degraba un view ) a unei baze de date. View contine 2 coloane: una fiind cu categorii iar celalalta cu subcategorii si vreau categoriile care au mai multe subcategorii sa apara o singura data. Lucrez in PHP 4.1.3 si MySQL 4.0.3 pe un server Apache 1.3. 34.

De exemplu:

automobile
-------------
diesel
cu GPL
benzina
--------------------
biciclete
-------------
mountain bike
cu 16 viteze
--------------------
motociclete
--------------
etc

Am scris o parte din cod dar cand verific daca valoarea coloanei dinainte si cea care urmeaza difera se blocheaza si numai afiseaza cum vreau eu.
Iata codul

// bamala conecatarea la bd

// trecerea tabelului in 2 vectori
while ($t = mysql_fetch_array($ssql))
{
$cat[]= $t["NumeCat"]; //vectorul pt categorii
$cat2[]=$t["NumeSub"]; //vectorul pt subcategorii
}
echo "<ul>";
//scrirea in tabel a datelor in formatul dorit
do
{
//verificare daca valoarea precedenta si urmatoare a cat[] corespund
if ($cat[$i] != $cat[$j]) // de aici nu mai afiseaza nimic
{
//se afiseaza categoria intr o celula
echo "<li>" .$cat[$i];
// daca exista subcategorie se afiseaza intr o celula alaturata
if ( $cat2[$i] != '')
{
echo "<ul><li>" .creare_url_sub($cat2[$i]) ."</li></ul>";
}
else
{
echo"</ul><li>";
if ( $cat2[$i] != '')
{
echo "<ul><li>";
echo .creare_url_sub($cat2[$i]) ."</td>";
echo "</ul></li>";
} */
}
// incrementarea valorilor pentru urmatorul rand din view
$j=$i;
$i=$i+1;
}
// si
while($i<$n && $j<$n-1 );
echo "</table>";



yorsol
Average Member
Mesaje: 50
Membru din: Mie Aug 09, 2006 4:23 am
Contact:

Re: Afisare a continutului unui tabel MySQL

Mesajde yorsol » Sâm Aug 12, 2006 11:33 pm

salut,
eu am facut ce vrei sa faci tu in feleul urmator:
un tabel mysql care contine ID,cat,si descrierea
atunci cand am o categorie mama il scriu
categoria mama
si o subcategoria o separ cu un caracter cum ar fi # sau _

atunci cand citesc categoria caut # si daca exista inseamna ca e o sub categorie
avantaje, pot sa fac subcategorii la infinit si codul e simplu:

<?
$r = mysql_query("SELECT `cat` FROM `categorii` WHERE 1 ORDER BY `cat`");
$index = "";
for($i=0;$i<mysql_num_rows($r);$i++){
$row = mysql_fetch_array($r);
if(sizeof(explode($row['cat']))>1)

echo "cat";
}else{
echo "subcat";
}
?>

codul l-am scris acum repede, dar asta e ideea

Bafta,
Khaled
DESIGN EFFECT

Rovas
Average Member
Mesaje: 108
Membru din: Sâm Aug 12, 2006 10:54 am

Mesajde Rovas » Dum Aug 13, 2006 5:47 pm


yorsol
Average Member
Mesaje: 50
Membru din: Mie Aug 09, 2006 4:23 am
Contact:

Mesajde yorsol » Dum Aug 13, 2006 6:01 pm

DESIGN EFFECT

Avatar utilizator
vectorialpx
Senior Member
Mesaje: 4832
Membru din: Mar Mar 01, 2005 9:48 am
Localitate: Bucuresti
Contact:

Mesajde vectorialpx » Lun Aug 14, 2006 11:47 am


cristic
Junior Member
Mesaje: 32
Membru din: Mar Noi 02, 2004 10:25 am
Localitate: BUCURESTI
Contact:

Mesajde cristic » Mar Aug 15, 2006 12:34 am

Cristian MARIN - Designers Division Developer
InterAKT Online (www.interaktonline.com)
Tel: +4021 312.53.12
Tel/Fax: +4021 312.51.91
cmarin@interaktonline.com

Rovas
Average Member
Mesaje: 108
Membru din: Sâm Aug 12, 2006 10:54 am

Mesajde Rovas » Vin Aug 18, 2006 2:59 pm

Sorry ca n- am mai postat a aparut ceva neasteptat care a durat o groaza de timp (crearea unui catalog de produse).
Ceea ce vreau eu este sa fac o listare a subcategoriilor dintr un tabel MySQL
(cu acelasi nume) ordonate si separate pe categorii (care se afla in alt tabel legat de acesta printr o cheie straina). Dar vreau sa fie mai speciala afisarea
adica categoria sa fie deasupra si subcategoriile sale sa fie sub ea (eventual la 10 px mai la dreapta) dupa ce se termina prima categorie urmeaza a doua categorie si subcategoriile sale imediat sub prima categorie. Mie era f usor sa le scot sub forma de tabel sau le pun intr un dropdown legat de cel cu subcategorii. Acest tip de afisare am vazut la mai multe siteuri de magazine si de producatori de echipamente electronice si mi se pare deosebit si mai usor de utilizat.
Octavian mai clar de atat nu pot fi.
Eu am incercat ceva asemanator cu ce ai pus tu cristic dar cu functiile
previous() si next(). Parser ul PHP imi spune ca nu recunoaste ca fiind array
argumentul dat pentru next sau previous.
Imi afiseaza doar subcategoriile codul pe care l- ai dat :(

cristic
Junior Member
Mesaje: 32
Membru din: Mar Noi 02, 2004 10:25 am
Localitate: BUCURESTI
Contact:

Mesajde cristic » Vin Aug 18, 2006 4:17 pm

Cristian MARIN - Designers Division Developer

InterAKT Online (www.interaktonline.com)

Tel: +4021 312.53.12

Tel/Fax: +4021 312.51.91

cmarin@interaktonline.com

bebeantics
New Member
Mesaje: 2
Membru din: Mie Ian 25, 2006 9:10 am

re

Mesajde bebeantics » Vin Aug 18, 2006 10:20 pm


Rovas
Average Member
Mesaje: 108
Membru din: Sâm Aug 12, 2006 10:54 am

Mesajde Rovas » Sâm Aug 19, 2006 9:54 am


cristic
Junior Member
Mesaje: 32
Membru din: Mar Noi 02, 2004 10:25 am
Localitate: BUCURESTI
Contact:

Mesajde cristic » Lun Aug 21, 2006 10:08 am

Cristian MARIN - Designers Division Developer

InterAKT Online (www.interaktonline.com)

Tel: +4021 312.53.12

Tel/Fax: +4021 312.51.91

cmarin@interaktonline.com

Rovas
Average Member
Mesaje: 108
Membru din: Sâm Aug 12, 2006 10:54 am

Mesajde Rovas » Mar Aug 22, 2006 11:43 am



Înapoi la “Cod PHP”

Cine este conectat

Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 12 vizitatori