Autor Zpráva
Adam16
Profil
Zdravím, potreboval by som poradit. Mam taký problém pri vypise z databázy. V jednom skripte sa mi do DB zapíše dátum a čas. Často sa mi stane že mám v DB pod jedným datumom zapisanychch viac časov. Napr. 1.1.2017 a časy su 7:00, 10:00, 15:00 adt. Ja potrebujem vypisat podla dátumu všetky časy. Mne stále vypiše iba ten posledný. Skúšal som to týmito spôsobmi ale nefuguje mi ani jeden. Aj som googlil a nič som nenašiel. Neviete mi niekto poradit?

$datum = $_POST['datum'];
$vysledok = mysql_query("SET NAMES 'utf8'"); 
$vysledok = mysql_query("SELECT * FROM db WHERE datum='$datum'");
$info = mysql_fetch_array($vysledok);
$cas = $info['cas'];
echo $cas;
alebo
$datum = $_POST['datum'];
$vysledok = mysql_query("SET NAMES 'utf8'"); 
$vysledok = mysql_query("SELECT * FROM db WHERE datum='$datum'");
while ($info = mysql_fetch_array($vysledok))
{
$cas = $info['cas'];
}
echo $cas;
juriad_
Profil *
$datum = $_POST['datum'];
$vysledok = mysql_query("SET NAMES 'utf8'"); 
$vysledok = mysql_query("SELECT * FROM db WHERE datum='$datum'");
while ($info = mysql_fetch_array($vysledok))
{
$cas = $info['cas'];
echo $cas; // přesunut do smyčky, aby se vypsal pokaždé
}
mckay
Profil
Adam16:
Já jen dodám, že za předpokladu, že uvádíte celý kód, tak vzhledem k tomu, že ono $datum berete z $_POST, doporučil bych navíc zvážit nějakou lehkou ochranu/kontrolu toho, že přijatá data v POST jsou opravdu taková, jaká očekáváte a že se je někdo nepokusil upravit.

Možností jak se tomu bránit je více: například použití tzv. prepared statements, popřípadě kontrola, že obsah $_POST['datum'] je přesně v takovém formátu v jakém chcete (tzn. žádné extra znaky navíc, nebo v neočekávaných místech atp.). Více na toto téma v angličtině.

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: