Autor Zpráva
jirivo
Profil *
Zdravím, mám dvě textová pole s datumy od - do a potřeboval bych do databáze vepsat všechna data v tomto rozmezí tzn. že každý den se bude do databáze zapisovat zvlášť ve formátu yyyy-mm-dd, protože tyto dny se pak zobrazí v kalendáři obsazenosti vyznačené. Akorát nevím jak ty dny v rozmezí dvou dat vypsat, existuje nějaká funkce ?
Majkl578
Profil
$begin = strtotime('2011-01-25');
$end = strtotime('2011-02-05');

for ($actual = $begin; $actual <= $end; $actual += 86400) {
	echo date('Y-m-d', $actual) . "\n";
}
jirivo
Profil *
Díky moc, funguje to !! akorát ještě nevím jak vložit každý záznam zvlášť do databáze, musím asi vytvořit pole a to pak nějak dostat do té databáze, ale nevím jak
mattyZEM
Profil
jirivo:
nevím jak vložit každý záznam zvlášť do databáze
Stejně jako vypisuješ data, jen zrušíš echo a hodíš příkaz do sql ;)
jirivo
Profil *
Tak jsem sestavil dotaz
INSERT INTO rezervace (id_item, the_date, id_state, id_booking) VALUES ('$_POST[id]', 'date(Y-m-d, $actual)', '2', '0')


a v databázi se sice objeví třeba 5 záznamů, ale všechna data jsou jen s nulama 0000-00-00, nevím jestli to není tím, že ta buňka v tabulce je již nastavena na typ date, protože ty záznamy jsou tam vkládány ještě druhotně z administrace.
Alphard
Profil
Předpokládám, že sql dotaz jako celek je v mysql_query v uvozovkách. V takovém případě se nahradí proměnné za jejich hodnoty, ale už ne funkce. Musíte to zapsat nějak takhle:
mysql_query("INSERT INTO rezervace (id_item, the_date, id_state, id_booking) VALUES ('$_POST[id]', '".date('Y-m-d', $actual)."', '2', '0')");
AM_
Profil
jirivo:
Pokud máš jeden hotýlek o deseti pokojích, je to asi jedno, ale normálně by se do databáze mělo ukládat datum začátku a konce, ne dělat na každý den jeden záznam :)

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