Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] unlink
Forum PHP.pl > Forum > PHP
shpaque
  1. <?
  2. $database = './../db/actuals.db';
  3.  
  4. if (!file_exists($database))
  5. {
  6. echo 'Baza danych nie odnaleziona!';
  7. }
  8.  
  9. $id = isset($_REQUEST['id']) ? $_REQUEST['id'] : '';
  10. $action = isset($_REQUEST['action']) ? $_REQUEST['action'] : '';
  11. $datas = array();
  12. $zdjecies = array();
  13. $tytuls = array();
  14. $artykuls = array();
  15. $count = 0;
  16. $kodindex = -1;
  17.  
  18. $items = file($database);
  19. foreach($items as $line)
  20. {
  21. list($data, $zdjecie, $tytul, $artykul) = explode('|', trim($line));
  22. $datas[$count] = $data;
  23. $zdjecies[$count] = $zdjecie;
  24. $tytuls[$count] = $tytul;
  25. $artykuls[$count] = $artykul;
  26. if ($id == $tytul)
  27. {
  28. $kodindex = $count;
  29. }
  30. $count++;
  31. }
  32.  
  33. if (!empty($action))
  34. {
  35. if ($action == 'delete')
  36. {
  37. if ($kodindex == -1)
  38. {
  39. echo 'Nie odnaleziono wpisu!';
  40. }
  41.  
  42. $file = fopen($database, 'w');
  43. for ($i=0; $i < $count; $i++)
  44. {
  45. if ($i != $kodindex)
  46. {
  47. fwrite($file, $datas[$i]);
  48. fwrite($file, '|');
  49. fwrite($file, $zdjecies[$i]);
  50. fwrite($file, '|');
  51. fwrite($file, $tytuls[$i]);
  52. fwrite($file, '|');
  53. fwrite($file, $artykuls[$i]);
  54. fwrite($file, "\r\n");
  55. }
  56. }
  57. fclose($file);
  58. unlink('./../db/aktualnosci/'.$zdjecies[$i].'');
  59. header('Location: '.basename(__FILE__));


i tak dalej - chodzi o to jak w temacie, ze zamiast usunac plik zmienia jesgo atr. z 644 na 600 ... o co kaman?
Turson
A to zapisywanie działa?
Są uprawnienia do usunięcia pliku?
shpaque
tak, zapisywanie dziala jak nalezy, a uprawnienia - jak sprawdzić?

generalnie po up;loadzie plik ma 644...
Turson
Usuwanie umieść w pętli for(), jeszcze przed klamrą zamykającą smile.gif
shpaque
dzięki ale musisz mi napisać po chłopsku smile.gif możesz mi dać ten wycinek jak i gdzie mam dać? W ten sposób?

  1. $file = fopen($database, 'w');
  2. for ($i=0; $i < $count; $i++)
  3. {
  4. if ($i != $kodindex)
  5. {
  6. fwrite($file, $datas[$i]);
  7. fwrite($file, '|');
  8. fwrite($file, $zdjecies[$i]);
  9. fwrite($file, '|');
  10. fwrite($file, $tytuls[$i]);
  11. fwrite($file, '|');
  12. fwrite($file, $artykuls[$i]);
  13. fwrite($file, "\r\n");
  14. }
  15. unlink('./../db/aktualnosci/'.$zdjecies[$i].'');
  16. }
  17. fclose($file);
Turson
Wydaje się dobrze. Sprawdź działanie
shpaque
jest super, tylko w
  1. unlink('./../db/aktualnosci/'.$zdjecies[$i].'');
musiałem zmienić apostrof na nawias - inaczej nie czytał zmiennej... DZIĘKUJĘ!


a gdybym chciał wcisnąć jeszcze gdzieś confirm przy usunięciu to gdzie i jak?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.