Autor Zpráva
slovakCZ
Profil
Dobry den,
nejak se mi nedari vypsat z DB data. Mam 2 tabulky, jedna:
"cenik_nadpis" se sloupcy - id - nadpis
(ukazkovy obsah: 5 - Drevene podlahy)
a druha:
"cenik" se sloupcy - id - id_nadpis - popis_sluzby - cena_sluzby.
pro vysvetleni id je jedinecne ID kazde polozky (tedy radku)
id_nadpis to je cislo, ktere odpovida ID z tabulky cenik_nadpis
dlasi veci uz je jen text, takze vysvetlovat nemusim
(ukazkovy obsah: 1 - 5 - bukova podlaha - 1500)
(ukazkovy obsah: 2 - 5 - btizova podlaha - 2500)

A ja potrebuju do tabulky (jako nadpis tabulky) vypsat nejdrive z CENIK_NADPIS ten nadpis a pote tradicne do tabulky uz hodnoty "popis_sluzby" a "cena_sluzby" z "cenik".
ja mam myslenku jak to udelat, ale nedari se mi to.. potrebuju zacit s vypisem, kde bude ID jedna a po kazdem jednom cyklu se mi toto ID zvetsi o jedna... nejak se mi ale nedari to zprovoznit... pomuzete mi prosim nekdo? verim ze to bude jen otazka par radku kdyz uz to vpodstate skoro mam hotove. Predem dekuji za rady.

a zde kod:
<?php 
       $vysledeknadpis = mysql_query("SELECT * FROM cenik_nadpis ORDER BY id", $spojeni);
      
        
        while ($zaznam2 = mysql_fetch_array($vysledeknadpis) ){
        echo "
            <table width=\"400\" cellspacing=\"0\" summary=\"pece o ruce\" class=\"tabulka1\">
	       <caption class=\"tabulka_nadpis\">
       	        ".$zaznam2['nadpis']."
                </caption>";
        
                   $vysledek = mysql_query("SELECT * FROM cenik ORDER BY id", $spojeni);
                    

                    while ($zaznam = mysql_fetch_array($vysledek) ){
                    echo "<tr>";
                    
                    echo "<td class='cenik1'>";
                    echo $zaznam["popis_sluzby"];
                    echo "</td>"; 
                    echo "<td>";
                    echo $zaznam["cena_sluzby"];
                    echo " Kč";
                    echo "</td>"; 
                    echo "</tr>";
                    }
        }
        ?>



ps. je to aspon trochu srozumitelne? jsem uz nejaky unaveny :(
slovakCZ
Profil
aha, tak uz vim... jen drobnost stacila... ve vysledku to bude takto:
<?php 
       $vysledeknadpis = mysql_query("SELECT * FROM cenik_nadpis ORDER BY id", $spojeni);
      
        
        $m = 1;
        while ($zaznam2 = mysql_fetch_array($vysledeknadpis) ){
        echo "<table width=\"400\" cellspacing=\"0\" summary=\"pece o ruce\" class=\"tabulka1\">
			  <caption class=\"tabulka_nadpis\">
        ".$zaznam2['nadpis']."
        </caption>";
        
                   $vysledek = mysql_query("SELECT * FROM cenik WHERE id_nadpis=".$zaznam2["id"]." ORDER BY id", $spojeni);
                    
                    while ($zaznam = mysql_fetch_array($vysledek) ){
                    echo "<tr>";
                    
                    echo "<td class='cenik1'>";
                    echo $zaznam["popis_sluzby"];
                    echo "</td>"; 
                    echo "<td>";
                    echo $zaznam["cena_sluzby"];
                    echo " Kč";
                    echo "</td>"; 
                    echo "</tr>";
                    }
        }
        ?>
tiso
Profil
slovakCZ: tvoje riešenie je neefektívne, na výpis cenníka potrebuješ 1+n dotazov kde n je počet riadkov v tabuľke s nadpismi. Ide to jedným dotazom, inšpiruj sa v téme: Spojení více tabulek (v tom mojom kóde chýba $ pred row na riadku 3)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: