Autor Zpráva
Petrnson
Profil
Jsem začátečník, co se týká php a zasekl jsem se na hodnocení článku. Inspiroval jsem se z Pcsvětu .

Mám takovýto výpis z databáze
<?
include ("config.php");
$link = mysql_connect(SQL_HOST, SQL_USERNAME, SQL_PASSWORD) or die("Nelze se připojit k MySQL: " . mysql_error());
$db = mysql_select_db(SQL_DBNAME) or die("Nelze vybrat databázi: ". mysql_error());
$query = "SELECT * FROM jazykolamy ORDER BY id";
$result = mysql_query($query, $link) or die("SQL dotaz nešlo provést");
echo "<table>";
while ($row=mysql_fetch_array($result))
	echo "<tr><td>".$row["id"]."</td>
  <td>".$row["pismeno"]."</td>
  <td>".$row["datum"]."</td>
  <td>".$row["text"]."</td>

Zde by asi mněl být kod hodnocení.

  </tr>";
echo "</table>";
mysql_free_result($result);
mysql_close;  
?> 



A potřebuji do toho nějak zakomponovat toto:
<A HREF="hodnot.php?ID=<? echo "$id"; ?>&znamka=1">1</A> | 
<A HREF="hodnot.php?ID=<? echo "$id"; ?>&znamka=2">2</A> | 
<A HREF="hodnot.php?ID=<? echo "$id"; ?>&znamka=3">3</A> | 
<A HREF="hodnot.php?ID=<? echo "$id"; ?>&znamka=4">4</A> | 
<A HREF="hodnot.php?ID=<? echo "$id"; ?>&znamka=5">5</A>


aby se mi to samo vypisovalo, ke každému řádku a automaticky získalo jeho id. Peru se stim už pěkně dlouho a pořád mi to nejde.

Prosím poraďtě
zooner
Profil
Jestli sem dobre pochopil tak by to melo bejt nejak takhle

$x = 0;
while ($x < 6){
$x++;
echo "<a href=index.php?id=$x>Znamka $x</a><br>";
}
nightfish
Profil
Petrnson
for ($x = 1; $x < 5; x++) {
  echo "<a href='hodnot.php?ID=".$row["id"]."&znamka=$x'>$x</a> |";
}
echo "<a href='hodnot.php?ID=".$row["id"]."&znamka=5'>5</a>";


(ten řádek mimo cyklus je tam kvůli nezapsání znaku | za poslední známkou)
Petrnson
Profil
Po dalším snažení se mi to povedlo, ale vaše zjednodušené části se mi tam nepovedli zapasovat a rozchodit. Ted řeším jiný problém jak vydělit dvě položky a vypsat jejich výsledek. (Jsou to položky celek a počet)


Část kodu:
echo "<tr><td>".$row["id"]."</td>
  <td>".$row["pismeno"]."</td>
  <td>".$row["datum"]."</td>
  <td>".$row["text"]."</td>
  <td>Celek: ".$row["celek"]."</td>
  <td>Počet: ".$row["pocet"]."</td>
nightfish
Profil
echo "....<td>Podíl: ".($row["celek"] / $row["pocet"])."</td>...";
Petrnson
Profil
Moc dík, já to sem se to snažil udělat podobně ale nešlo mi to
...<td>Podíl: (".$row["celek"].")/(".$row["pocet"].")</td>...


hold v jednoduchosti je síla :-)
Nadan
Profil
Petrnson
A jak teda vypadá konečný kód? Mě to zajímá :)
Petrnson
Profil
Trošku upravený (a pras**ký):
<?
include ("config.php");
$link = mysql_connect(SQL_HOST, SQL_USERNAME, SQL_PASSWORD) or die("Nelze se připojit k MySQL: " . mysql_error());
$db = mysql_select_db(SQL_DBNAME) or die("Nelze vybrat databázi: ". mysql_error());
$query = "SELECT * FROM jazykolamy ORDER BY id";
$result = mysql_query($query, $link) or die("SQL dotaz nešlo provést");
echo "<table>";
while ($row=mysql_fetch_array($result))
	echo "<tr><td>".$row["id"]."</td>
  <td>".$row["pismeno"]."</td>
  <td>".$row["datum"]."</td>
  <td>".$row["text"]."</td>
  <td>Celek: ".$row["celek"]."</td>
  <td>Počet: ".$row["pocet"]."</td>
  <td>Podíl:<b> ".@round(($row["celek"] / $row["pocet"]), 1 )."</b></td>
  <td><a href='hodnot.php?ID=".$row["id"]."&znamka=1'>1</a> |
  <a href='hodnot.php?ID=".$row["id"]."&znamka=2'>2</a> |
  <a href='hodnot.php?ID=".$row["id"]."&znamka=3'>3</a> |
  <a href='hodnot.php?ID=".$row["id"]."&znamka=4'>4</a> |
  <a href='hodnot.php?ID=".$row["id"]."&znamka=5'>5</a></td>";
echo "</tr></table>";
mysql_free_result($result);
mysql_close;  
?> 


teď se snažím vyřešit zobrazení určitého html podle průměru pomocí switche
Petrnson
Profil
Je to hrozné, ale zase mi toto nejde udělat , samostatně vše funguje, ale jakmile vše dám do hromady tak to nejde. Prosím poraďte

  ....<td>Smile: ".Switch(round(($row["celek"] / $row["pocet"]), 1 )){
case 0:
echo "Nula";
break;

case $a>1 AND $a<2:
echo "a je rovna od jedne do 2 ";
break;

case $a>2 AND $a<3:
echo "a je rovna od dvou do 3 ";
break;

case $a>3 AND $a<4:
echo "a je rovna od trech do 4 ";
break;

case $a>4 AND $a<5:
echo "a je rovna od ctyr do 5 ";
break;

default:
echo "Promenna a neni rovna nicemu co bychom potrebovali !";
}."</td>....
nightfish
Profil
while ($row=mysql_fetch_array($result))
	echo "<tr><td>".$row["id"]."</td>
  <td>".$row["pismeno"]."</td>
  <td>".$row["datum"]."</td>
  <td>".$row["text"]."</td>
  <td>Celek: ".$row["celek"]."</td>
  <td>Počet: ".$row["pocet"]."</td>
  <td>Podíl:<b> ";

$podil = @round(($row["celek"] / $row["pocet"]), 1 );
if (abs($podil) < 0.001) echo "nula";
else if (($podil >= 1) && ($podil < 2)) echo "a je rovna od jedne do 2";
else if (($podil >= 2) && ($podil < 3)) echo "a je rovno od dvou do 3";
...
else "promenna a neni rovna nicemu co bychom potrebovali";

echo "</b></td>
  <td><a href='hodnot.php?ID=".$row["id"]."&znamka=1'>1</a> |
  <a href='hodnot.php?ID=".$row["id"]."&znamka=2'>2</a> |
  <a href='hodnot.php?ID=".$row["id"]."&znamka=3'>3</a> |
  <a href='hodnot.php?ID=".$row["id"]."&znamka=4'>4</a> |
  <a href='hodnot.php?ID=".$row["id"]."&znamka=5'>5</a></td>";
echo "</tr></table>";
Petrnson
Profil
Dík, takhle to jde...

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: