Autor | Zpráva | ||
---|---|---|---|
Peter45 Profil |
#1 · Zasláno: 29. 12. 2009, 13:27:45
Prosim vas o radu: v db mam tabulku s poliami: id,nazov,vyrobca,active.
obsah sa mi na stranke zobrazuje ak je active 1,ak je active 0 tak sa obsah nezobrazi... Obsah sa sice nezobrazi ak je 0 coz je ok,ale stale sa zobrazuje tabulka v ktorej sa obsah nachadza,cize nejaku podmienku dat pred tabulku ked je active 0 tak zmizne cela tabulka aj s obsahom... |
||
Taps Profil |
#2 · Zasláno: 29. 12. 2009, 13:37:13
Peter45:
bylo by dobré kdyby jsi sem vložil kod |
||
panther Profil |
#3 · Zasláno: 29. 12. 2009, 13:42:49
Peter45:
if ($data['active'] != 0) { echo "<table>"; ... } Případně v podmínce může být mysql_num_rows, možností je více. Jako základ by ti to mohlo stačit. |
||
Peter45 Profil |
#4 · Zasláno: 29. 12. 2009, 13:43:40
Tak priklad:toto je tabulka kde sa citaju kategorie vyrobcov,ked su vsak neaktivne tak sa ziadne nezobrazuju ale tabulka ostava coz ne dobre...
<table style="text-align: left; width: 533px; height: 32px;" border="1" cellpadding="2" cellspacing="2"> <tbody> <tr> <td> <?include "vyrobcovia.php";?> </td> </tr> </tbody> </table> |
||
panther Profil |
#5 · Zasláno: 29. 12. 2009, 13:48:12
Peter45:
chtělo to spíše PHP, než HTML. Ale myšlenku jsem ti napsal v [#3]. |
||
Peter45 Profil |
#6 · Zasláno: 29. 12. 2009, 13:52:47
toto je kod v sobore vyrobcovia:
<? function processCategories2($level, $path, $sel) { $out = array(); $cnt = 0; $q = mysql_query("select id, kategoria from vyrobca where parent=$path[$level] AND kategoria<>'' AND active<>'' ORDER BY poradie, kategoria ") or die (mysql_error()); while ($row = mysql_fetch_row($q)) { $out[$cnt][0] = $row[0]; $out[$cnt][1] = $row[1]; $out[$cnt][2] = $level; $cnt++; //process subcategories? if ($level+1<count($path) && $row[0] == $path[$level+1]) { $sub_out = processCategories2($level+1,$path,$sel); //add $sub_out to the end of $out for ($j=0; $j<count($sub_out); $j++) { $out[] = $sub_out[$j]; $cnt++; } } } return $out; } //calculate a path to the category $path = array($vyrobcaid); $curr = $vyrobcaid; do { $q = mysql_query("SELECT parent FROM vyrobca WHERE id='$curr' AND kategoria<>'' AND active<>'' ORDER BY poradie, kategoria ") or die (mysql_error()); $row = mysql_fetch_row($q); $curr = $row ? $row[0] : 0; //get parent ID $path[] = $curr; } while ($curr); //now reverse $path $path = array_reverse($path); $cats = processCategories2(0,$path,$vyrobcaid); for ($i=0; $i<count($cats); $i++) { $space=""; $znazov=$cats[$i][1]; $zid=$cats[$i][0]; $zlevel=$cats[$i][2]; for ($j=0;$j<$zlevel;$j++) $space.=" "; if ($vyrobcaid==$zid) $class="menu0selected"; else $class="menu0"; // echo "<a class=$class href='?shopid=$zid'>$space $znazov</a> \n"; echo "<a class=$class href='?vyrobcaid=$zid'>$space $znazov</a> \n"; } ?> |
||
panther Profil |
#7 · Zasláno: 29. 12. 2009, 14:05:30
Peter45:
podívej se, co tvoříš: V HTML vypisuješ tabulku a do ní includuješ obsah. Máš několik možností: - tabulku includovat do includovaných souborů - předem si zjistit, zda includovaný soubor existuje (fce file_exists) a na základě jednoduché podmínky začátek a konec tabulky vypisovat. |
||
Peter45 Profil |
#8 · Zasláno: 29. 12. 2009, 15:25:18 · Upravil/a: Peter45
Neviem ci dobre chapem co pisete,a tak som skusil toto:
A vsak sice funguje ale jakmile pridam viac kategorii tak mi to hodi i viac tabuliek,predpokladam cyklus for je spatne,vedel by mi to dakto usporiadat? <? function processCategories2($level, $path, $sel) { $out = array(); $cnt = 0; $q = mysql_query("select id, kategoria from vyrobca where parent=$path[$level] AND kategoria<>'' AND active<>'' ORDER BY poradie, kategoria ") or die (mysql_error()); while ($row = mysql_fetch_row($q)) { $out[$cnt][0] = $row[0]; $out[$cnt][1] = $row[1]; $out[$cnt][2] = $level; $cnt++; //process subcategories? if ($level+1<count($path) && $row[0] == $path[$level+1]) { $sub_out = processCategories2($level+1,$path,$sel); //add $sub_out to the end of $out for ($j=0; $j<count($sub_out); $j++) { $out[] = $sub_out[$j]; $cnt++; } } } return $out; } //calculate a path to the category $path = array($vyrobcaid); $curr = $vyrobcaid; do { $q = mysql_query("SELECT parent FROM vyrobca WHERE id='$curr' AND kategoria<>'' AND active<>'' ORDER BY poradie, kategoria ") or die (mysql_error()); $row = mysql_fetch_row($q); $curr = $row ? $row[0] : 0; //get parent ID $path[] = $curr; } while ($curr); //now reverse $path $path = array_reverse($path); $cats = processCategories2(0,$path,$vyrobcaid); for ($i=0; $i<count($cats); $i++) { $space=""; $znazov=$cats[$i][1]; $zid=$cats[$i][0]; $zlevel=$cats[$i][2]; for ($j=0;$j<$zlevel;$j++) $space.=" "; if ($vyrobcaid==$zid) $class="menu0selected"; else $class="menu0"; echo " <table border=\"0\" cellpadding=\"0\" cellspacing=\"0\"> <tbody> <tr> <td><img src=\"obrazy/v1.jpg\" width=\"284\" height=\"60\" alt=\"pic\"> </td> </tr> <tr> <td style=\"background-image: url(obrazy/index_13.jpg); background-repeat: repeat-y;\" valign=\"top\"> <div style=\"margin-left:25px; margin-right: 20px;\" class=\"text1\"> <a class=$class href='?vyrobcaid=$zid'>$space $znazov</a> </div> </td> </tr> <tr> <td><img src=\"obrazy/v3.jpg\" width=\"284\" height=\"45\" alt=\"pic\"></td> </tr> </tbody> </table> "; // echo "<a class=$class href='?vyrobcaid=$zid'>$space $znazov</a> \n"; } ?> |
||
Časová prodleva: 14 let
|
0