Autor Zpráva
vazo
Profil
Zdravím, mám problém, potřeboval bych zprovoznit toto:
for ($i=1;$i<=13;$i++) {
                     $tymp="tym".$i."p";
                     $tymb="tym".$i."b";
                     
                     $query=mysql_query("select ".$tymp." from ".$MySQL_okrsek." where rok='2010' ORDER BY id, rok and vlozeno DESC");                      
                     $query="select SUM(".$tymb.") from ".$MySQL_okrsek." WHERE `rok` = '2010'";
                     $result = mysql_query($query) or die(mysql_error());
                     $row = mysql_fetch_array($result);
                     $vysledek=$row['SUM($tymb)'];
           }
...ale nedaří se mi rozchodit "tahle proměnná v proměnný:"
$vysledek=$row['SUM($tymb)'];

Můžete pls někdo poradit?
Předem moc díky.
Someone
Profil
$query="select SUM(".$tymb.") AS soucet from ".$MySQL_okrsek." WHERE `rok` = '2010'";
$vysledek=$row['soucet'];
Majkl578
Profil
Návrh takové databáze je samozřejmě zcela špatný a taktéž i výše uvedený script.
Doporučuji si přečíst o vztazích v relačních databázích (1:1, 1:N, M:N).

Aby script v [#1] fungoval, mělo by stačit změnit čádek 9 takto:
$vysledek=$row["SUM($tymb)"];
resp. lépe takto:
$vysledek=$row['SUM(' . $tymb . ')'];
vazo
Profil
Díky Someone! Jsem se do toho nějak zamotal (jak už do toho civím dlouho) a tahle možnost mě vůbec nenapadla. :-)
To Majkl578: Díky za upozornění, vím že databáze není navržena optimálně, ale v současné době již není tak jednoduché změnit její strukturu. Příště budu při návrhu databáze určitě postupovat jinak. ;-)
Díky.

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: