Autor Zpráva
Tronicken
Profil *
Ahoj, jakým jiným způsobem se dají data z databáze vytáhnout do pole, kromě while?
Mám tabulku ( <table> ), kde první sloupec je datum a druhý obsah. V databázi to mám taky tak. Podmínka datum je dále rozšířená ještě o další data, takže tabulka (<table>) má nějakých 30 řádků automaticky generovaných (jsou tam další data jak nahoru tak dolů - v proměnné datum). Když mám v databázi k určitému datu přiřazený obsah, jak mám potom vypsat zbylé řádky tabulky? Protože tento způsob mi vypíše pouze jeden řádek který sedí datu..

<table>
?><?
 $q = "SELECT * FROM tabulka WHERE datum = '$datum'";
$r = mysql_query($q) or die("Dotaz nelze provést: " . mysql_error());
while ($p = mysql_fetch_array($r))
 {
   echo "<tr><td width='150'><b>$datum</b></td><td width='75'>".$p['obsah']."</td>";
     } ?></table>

Názorně jak to má vypadat -

datum I obsah
-----------------------
1.1.2012 I----------
2.1.2012 I----------
3.1.2012 I----------
4.1.2012 I----------
5.1.2012 I Ahoj
6.1.2012 I----------
7.1.2012 I Další obsah
8.1.2012 I----------


A jak to vypadá po výpisu z databáze-

datum I obsah
-----------------------
5.1.2012 I Ahoj
7.1.2012 I Další obsah

Jinak bez databáze to vypadá -

datum I obsah
-----------------------
1.1.2012 I----------
2.1.2012 I----------
3.1.2012 I----------
4.1.2012 I----------
5.1.2012 I----------
6.1.2012 I----------
7.1.2012 I----------
8.1.2012 I----------

Takže jak to vyřešit?
Děkuji


Odpovím si sám (nějak mi to nemyslí dneska..)

 $q = mysql_query("SELECT * FROM tabulka WHERE datum = '$datum'") OR die(mysql_error());
  $p = mysql_fetch_array($q);
YoSarin
Profil
Nevidím rozdíl mezi otázkou a odpovědí - opravdu to dělá to, co chcete?
Tronicken
Profil *
Rozdíl tam je.. Když dotaz obsahuje while, tak se vypíšou pouze pole které mají nějakou hodnotu v databázi.. Bez while to už běhá jak má (jinak poskládaný sql dotaz)

$q = "SELECT * FROM tabulka WHERE datum = '$datum'";
$r = mysql_query($q) or die("Dotaz nelze provést: " . mysql_error());
while ($p = mysql_fetch_array($r))
 {
 $p['sloupecek']
 }

!=

 $q = mysql_query("SELECT * FROM tabulka WHERE datum = '$datum'") OR die(mysql_error());
  $p = mysql_fetch_array($q);
   $p['sloupecek']

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: