Autor Zpráva
rasty159
Profil
mam script kterej mi vybira nahodny cislo a potrebuju vypsat to co pod tim nahodnym cilslem je proste jako na 1000her.cz je ten vtip


<?php
              $link = mysql_connect("localhost", "------", "-------") or die ("Připojení selhalo.");
              mysql_select_db("ozak");
              $query= "select * from prvky";
              mysql_query("SET NAMES 'utf8'");
              $result= mysql_query ($query, $link)or die ("nepovedlose to");
              echo "<h3 align=center>";


              $pocet=mysql_num_rows($result);
              echo "Celkový počet záznamů: " . $pocet . "\n";

              $nahodnecislo = Rand(1,$pocet);
              echo "<br>"."Bylo vybráno náhodné číslo:".$nahodnecislo;
              $query= "select * from prvky where id='$nahodnecislo'";
              mysql_query("SET NAMES 'utf8'");
              $result= mysql_query ($query, $link)or die ("nepovedlo seto");
              echo "<h4 align=center>";
              echo "<table border=1 cellpadding=10 align=center bgcolor=orange>";
              while ($row=mysql_fetch_array($result))
              echo "<tr><th bgcolor='red'>Id</th><th bgcolor='red'>Název prvku</th><th bgcolor='red'>Pořadí v tabulce</th><th bgcolor='red'>Značka</th></tr>";
              // tak a sem do tabulky potrebuju vypsat to co pod tim cislem je        
              mysql_close();
?>


Moderátor Davex: Tvůj projev je špatně srozumitelný, piš prosím s diakritikou a interpunkcí.
Moderátor Davex: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).
Tori
Profil
* Podívejte se do manuálu na syntaxi while, hlavně na rozdíl v použití / nepoužití složených závorek.

* K dotazu: Když si vypíšete proměnnou $row (var_dump($row);), hned uvidíte, že data z DB došla jako pole, kde jsou jednotlivé klíče pojmenované podle názvů sloupců v databázi.

Drobnosti:
* místo "SELECT * FROM tabulka" + mysql_num_rows stačí použít:
$pocet = mysql_result(mysql_query("SELECT COUNT(*) FROM tabulka"), 0);
- jde o tu funkci count(), která vrátí počet řádků. Čtení dat z celé tabulky je zbytečné, jestli s nimi dál nijak nepracujete.
* SET NAMES stačí použít jen jednou na začátku skriptu

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:

0