| Autor | Zpráva | ||
|---|---|---|---|
| Pávek Profil * |
#1 · Zasláno: 17. 1. 2013, 02:54:16
Ahoj, zase prosím o radu.
V novinkách mám nějaké události, pokud už je datumově po události, smaže se z databáze, ale problém je z fotkou, která se nahrává na server při přidání události. Jak mám smazat tuto fotku, jejíž název je zapsán v databázy? můj kód: $vysledek = MySQL_Query("SELECT FROM novinky WHERE datum < DATE_ADD(NOW(), Interval -1 Day)");
while ($radek2 = mysql_fetch_array($vysledek))
{ $foto = $radek2['foto'];
unlink("../images/akce/$foto"); }
$smazat_cas=MySQL_Query("DELETE FROM novinky WHERE datum < DATE_ADD(NOW(), Interval -1 Day)"); |
||
| Joker Profil |
#2 · Zasláno: 17. 1. 2013, 07:32:13
Pávek:
„Jak mám smazat tuto fotku, jejíž název je zapsán v databázy?“ Tak jak už je napsáno v té ukázce skriptu. Vypíše to nějaké chyby (případně zapněte chybová hlášení)? Zkontrolujte tu cestu, jestli je správně. Mimochodem, jelikož si v tom uvedeném kódu se hranice mazání počítá v každém dotazu znovu, může -možná spíš teoreticky- nastat situace, že druhý dotaz smaže víc záznamů než ten první (protože během toho mazání uplyne čas a do hranice spadnou další záznamy). Čistší by bylo si tu hranici vypočítat v PHP do proměnné a pak použít v obou dotazech stejnou. |
||
| Pávek Profil * |
#3 · Zasláno: 17. 1. 2013, 11:33:42
Joker:
„Vypíše to nějaké chyby (případně zapněte chybová hlášení)? Zkontrolujte tu cestu, jestli je správně.“ Vypíše to tuto chybu: Poslání SQL příkazu se nepodařilo, Popis chyby: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM novinky WHERE datum < DATE_ADD(NOW(), Interval -1 Day)' at line 1 Jinak DELETE FROM funguje bez problémů. „(protože během toho mazání uplyne čas a do hranice spadnou další záznamy).“ Zas tolik záznamů tam nebude, jde jen o vypsání akcí jedné firmy. |
||
| Jan Tvrdík Profil |
#4 · Zasláno: 17. 1. 2013, 14:17:21
Pávek:
$vysledek = MySQL_Query("SELECT `foto` FROM novinky WHERE datum < DATE_ADD(NOW(), Interval -1 Day)"); |
||
| Pávek Profil * |
#5 · Zasláno: 17. 1. 2013, 16:01:46
Jan Tvrdík:
Děkuji už to funguje.. |
||
|
Časová prodleva: 14 let
|
|||
0