Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno dotaz do MySQL - poslední záznam

Ahoj,
mám tabulku s komentáři a jeden ze sloupečků se jmenuje "datum". Tam se mi ukládá datum ve formátu "22. 09. 2007 4:23". chtěl bych zobrazovat informaci o posledním komentáři.
Dotaz ve scriptu mám

$posledni = mysql_query( 
"SELECT datum FROM myty_komentare
ORDER BY datum DESC LIMIT 1"
); 

a potom

$neco=substr($sex[0],0,26);
echo $neco;

Ono se mi to načte, zobrazí, ale stále jen ono datum 22. 09. 2007 4:23 i když tam jsou dávno novější. Kde mám chybku?

loading...
Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
Napadlo mě, že bych to udělal takto: <?php $posledni = mysql_query ("SELECT * FROM myty_komentare W…
Kráťa 22.09.2007 20:54
Kráťa
Prečítaj si dokumentáciu k mysql_query a skús to spraviť podľa príkladu, ktorý tam je, pretože takto… nový
los 22.09.2007 21:09
los
Oprava $posledni = mysql_query(" SELECT datum, MAX(id) FROM myty_komentare; ?> <b>poslední komentář… nový
Kráťa 22.09.2007 23:13
Kráťa
Chybí uvozovky a závorka u SELECTu. nový
host 22.09.2007 23:26
host
Oprava opravy <?php $posledni = mysql_query(" SELECT datum, MAX(id) FROM myty_komentare"); ?> <b>po… nový
Kráťa 22.09.2007 23:32
Kráťa
Řekl bych, že to nelze takto zapsat. Podívej se na ten odkaz od losa. A když vybíráš více sloupců a… nový
host 23.09.2007 00:11
host
Tak trochu jsem to předělal na "zobraz poslední id ve sloupci id", podle příkladu SELECT kniha, MAX(… nový
Kráťa 23.09.2007 00:27
Kráťa
Si myslím, že nemůžeš kombibovat SELECT id a MAX(id). Já bych tam nechal jen to MAX(id). To už musí… nový
Rce 23.09.2007 00:33
Rce
Když jsem to udělal na: <?php $posledni = mysql_query (" SELECT MAX(id) FROM myty_komentare"); ?> <… nový
Kráťa 23.09.2007 00:55
Kráťa
PHP tak dobře neznám, to bych se musel zeptat synátora. Ale SQL znám velmi dobře, ten SELECT je teď… nový
Rce 23.09.2007 01:35
Rce
Ha! V phpMyAdmin mi tohle chodí dobře. Chybka bude jinde. nový
Kráťa 23.09.2007 01:42
Kráťa
Zjednodušil jsem to na $celkem = mysql_query ("SELECT MAX(id) FROM myty_komentare"); echo "<b>celke… nový
Kráťa 23.09.2007 01:59
Kráťa
Vypisuje ti to číslo poslední věty toho selectu. Máš nějak blbě předání sloupce (toho MAX(id)) do PH… nový
Rce 23.09.2007 02:04
Rce
Jestli se to nepere s jiným id z jiné tabulky, zkusím jiný sloupec nový
Kráťa 23.09.2007 03:05
Kráťa
obsah celého souboru: <?php include "pripojeni.php"; $celkem = mysql_query ("SELECT MAX(jmeno) FROM… nový
Kráťa 23.09.2007 03:12
Kráťa
Ako je v dokumentácii napísané, funkcia mysql_query vráti hodnotu typu resource, takže je logické, ž… nový
los 23.09.2007 10:28
los
Přijde los, řekne, napíše a je to tak. Dík 5234x. edit:// dík nejen za řešení, ale hlavně také za v… poslední
Kráťa 23.09.2007 12:36
Kráťa

Tak trochu jsem to předělal na "zobraz poslední id ve sloupci id", podle příkladu
SELECT kniha, MAX(stran) FROM knihovna;
z mm.gene.cz
takto:

<?php
$posledni = mysql_query("
SELECT id, MAX(id) FROM myty_komentare");
?>
<b>celkem komentářů:</b>
<?php
echo $posledni;
?>

a stejně se mi nic nezobrazí. Chjo...

Když jsem to udělal na:

<?php
$posledni = mysql_query ("
SELECT MAX(id) FROM myty_komentare");
?>
<b>celkem komentářů:</b>
<?php
echo $posledni;
?>

zobrazilo se Resource id #5, tak jsem přidal to [0] (echo $posledni[0]) a pro změnu se nezobrazuje nic. :-)
Úplně jednoduchý dotaz a já to snad nedám do kupy. Vyhodím to úplně a mám klid. :-)

Ako je v dokumentácii napísané, funkcia mysql_query vráti hodnotu typu resource, takže je logické, že keď ju vypíšeš, tak sa zjaví nezmysel typu "Resource id #5". Z tejto hodnoty musíš prečítať údaje pomocou jednej z funkcií mysql_fetch_assoc, mysql_fetch_array, mysql_fetch_row alebo mysql_fetch_object (prípadne mysql_result, ak ti stačí len jedna hodnota).

Tiež by si mal používať funkciu mysql_error, aby si zistil chybovú hlášku v prípade, že je v SQL príkaze nejaká chyba.

Napríklad:

$posledni = mysql_query ("SELECT MAX(id) FROM myty_komentare") or die(mysql_error());
echo "<b>celkem komentářů: </b>";
echo mysql_result($posledni, 0);

Zpět do poradny Odpovědět na původní otázku Nahoru

loading...