Autor | Zpráva | ||
---|---|---|---|
coinage Profil * |
#1 · Zasláno: 9. 6. 2006, 19:38:09
Čau lidi, mám problémek s PHP. Dokážu vypsat hodnoty z databáze, smazat zápis z tabulky za určitý časový interval, ale nemohu přijít na to, jak smazat soubor z adresáře za určitý časový interval. Taky mi nejde nastavit zobrazení správného data a času - pořád samý vteřiny ... Přikládám script
<?php $dbServer = "sql.server"; $dbDatabase = "database"; $dbUser = "user"; $dbPass = "heslo"; $db = mysql_connect($dbServer, $dbUser, $dbPass) or die("Není možné připojit databázový server."); mysql_select_db($dbDatabase, $db) or die("Není mmožné spojení s databází $dbDatabase"); $query = "SELECT cas, nazev, popis FROM tabulka ORDER BY cas ASC"; $result = mysql_query($query) or die("Není možné vytvořit seznam!"); ?> <table width="100%"> <tr> <td width="25%"> <b>Vloženo</b> </td> <td width="50%"> <b>Název</b> </td> <td width="15%"> <b>Popis</b> </td> <td width="10%"> <b>Download</b> </td></tr> <?php // smazání diskusních příspěvků starších než 14 dní mysql_query("DELETE FROM tabulka WHERE cas + 14*24*60*60 < UNIX_TIMESTAMP()"); // datum uložený v číselném sloupci ?> <?php while($row = mysql_fetch_array($result)) { ?> <tr> <td> <?php echo $row["cas"]; ?> ////////////////zobrazí se pouze ve vteřinách </td> <td> <?php echo $row["nazev"]; ?> </td> <td> <?php echo $row["popis"]; ?> </td><td> <a href="soubory/<?php echo $row["nazev"]; ?>">Prohlédnout</a> //umožní stažení souboru </td> </tr> <?php } echo "</table>"; ?> |
||
coinage Profil * |
#2 · Zasláno: 10. 6. 2006, 17:56:20
Kdyby aspon nekdo napsal ze neví, ale jen kouknout a nic neudelat se mi nelibi.
|
||
Leo Profil |
#3 · Zasláno: 10. 6. 2006, 18:02:17
"Kdyby aspon nekdo napsal ze neví, ale jen kouknout a nic neudelat se mi nelibi."
To je vas problem. V tom pripade si u nekoho zaplatte konzultaci. Leo |
||
prochazka.zde.cz Profil * |
#4 · Zasláno: 10. 6. 2006, 18:10:18
a co tak pouzit hlavicku. kdyz mam cas neustale v sekundach, tak co no to pouzit matematiku? kdyz to vydelim 60 tak mam cas v minutach, kdyz 3600 tak to vychazi v hodinach a kdyz 43200 tak mam pocet dnu. V cem je problem.
$nCasDen = ($row["cas"] / 43200); |
||
llook Profil |
#5 · Zasláno: 10. 6. 2006, 18:11:37
Kdyby každý, kdo neví, psal že neví, tak nevím, jak by to tu dopadlo...
Zřejmě to máš v databázi uložené ve vteřinách. Takže: echo date('d. m. Y H:i:s', $row['date']); |
||
mila Profil |
#6 · Zasláno: 10. 6. 2006, 18:15:47
Aby se nezobrazil ve vteřinách, když je tak uložen v databázi. Php si nemůže samo od sebe naformátovat číslo z databáze jako nějaké datum (leda že by bylo od microsoftu:) ).
fce strftime tuším. Ale i další... |
||
coinage Profil * |
#7 · Zasláno: 10. 6. 2006, 19:31:59
Zřejmě to máš v databázi uložené ve vteřinách. Takže:
echo date('d. m. Y H:i:s', $row['date']); Díky za tuto radu, teď by bylo dobré ještě vědět, jak odstranit z ze serveru soubor po uplynutí nějaké doby, jako např: v pondělí vložím soubor a v pátek chci, aby se sám smazal, jak se to dá udělat? |
||
prochazka.zde.cz Profil * |
#8 · Zasláno: 11. 6. 2006, 09:32:37
tak to se asi obavam ze to nejde tak jak Vy potrebujete. Ponevad pravdepodobne nejde naplanovat pravidelne spousteni scriptu...
Jedina moznost je: kdyz se script spusti podruhe, tak otestuje vsechny soubory zda jim nevyprsel timeout a pokud ano tak je smazat.... |
||
coinage Profil * |
#9 · Zasláno: 12. 6. 2006, 19:04:14
tak to se asi obavam ze to nejde tak jak Vy potrebujete. Ponevad pravdepodobne nejde naplanovat pravidelne spousteni scriptu...
Jedina moznost je: kdyz se script spusti podruhe, tak otestuje vsechny soubory zda jim nevyprsel timeout a pokud ano tak je smazat.... Presne tak to mam namyslene, protoze nejde o to, aby se to smazalo presne na vterinu, ale az po uplynuti presne danych dnu. tzn, ze se to vymaze az tomu uplyne doba platnosti - ve dnech, ato staci az se nekdo na ty stranky podiva, protoze prave ten den to tam uz neuvidi. - teda pokud se podiva ve spravnou dobu. |
||
coinage Profil * |
#10 · Zasláno: 13. 6. 2006, 20:00:30
Všem vám moooc děkuji za rady, nakonec se mi to povedlo vyřešit úplnou náhodou a na mazání souború jsem se vykaškal, stejně se top bude mazat z administračního přihlášení.
Takže ještě jodnou díky a mějte se. |
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0