Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][PHP]usuwanie zdjęć za pomocą php z katalogu, proszę o pomoc
Festi
post 27.02.2010, 12:20:31
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 27.02.2010

Ostrzeżenie: (0%)
-----


Witam. Mam taki problem. Nie zajmuję się php na co dzień. Posklecałem coś takiego. Tzn. zrobiłem galerię zdjęć ze skryptu z internetu

http://www.olele.cal.pl/realizacje.php

zdjęcia odczytuje z katalogu GALERIA na serwerze
Do tego zrobiłem stronę admin.php http://www.olele.cal.pl/admin.php
login:admin
hasło:admin
Mogę tu dodawać zdjęcia do katalogu GALERIA.

Problem w tym, że nie potrafię napisać skryptu, który by pozwalał mi je kasować (oczywiście wybrane przeze mnie a nie wszystkie). Potrzebuję coś takiego, żeby pod każdym zdjęciem była opcja usuń albo coś podobnego. Czy mógłby mi ktoś pomóc? napisać jak to zrobić albo dopisać fragment kodu? Będę bardzo wdzięczny

kod:

<?php
include('ustawienia.php');
if($id == 'login')
{
if($_POST['login']==$admin && md5($_POST['haslo'])==$haslo)
{
setcookie('ladmin', $admin, time()+3600*24*7);
setcookie('lhaslo', $haslo, time()+3600*24*7);
echo 'Zalogowany<br /><br /><a href="admin.php">Kliknij</a><br /><br />';
} else
{
echo 'Zły nick lub hasło<br /><br />';
}
}
if($_COOKIE['ladmin']==$admin && $_COOKIE['lhaslo']==$haslo)
{
echo '<a href="admin.php?id=dodaj_p">Dodaj zdjęcie </a><br /><br />(tylko gif lub jpg max 100kb)<br />';
echo '<a href="admin.php?id=dodaj_pole1">Dodaj pole 1 </a>';

}
else
{
echo '<form name="admin" action="admin.php?id=login" method="POST">';
echo '<input type="text" name="login" style="width: 263px;" value="login" onclick="this.value=\'\'"><br />';
echo '<input type="password" name="haslo" style="width: 263px;" value="haslo" onclick="this.value=\'\'"><br />';
echo '<input type="submit" value="Login">';
echo '</form>';
}

if($_COOKIE['ladmin']==$admin && $_COOKIE['lhaslo']==$haslo)
{
if($id == 'dodaj_p')
{
echo '
<br>
<form enctype="multipart/form-data" action="admin.php?id=dodaj_p" method="POST">

<input type="hidden" name="MAX_FILE_SIZE" value="100000" />
<input name="plik" type="file" />
<input type="submit" value="Wyślij plik" />
</form>

';
$plik_tmp = $_FILES['plik']['tmp_name'];
$plik_nazwa = $_FILES['plik']['name'];
$plik_rozmiar = $_FILES['plik']['size'];

$plik_nazwa = strtolower($plik_nazwa);
$plik_nazwa = str_replace("ż","z",$plik_nazwa);
$plik_nazwa = str_replace("ą","a",$plik_nazwa);
$plik_nazwa = str_replace(" ","",$plik_nazwa);
$plik_nazwa = str_replace("_","",$plik_nazwa);
$plik_nazwa = str_replace("ś","s",$plik_nazwa);
$plik_nazwa = str_replace("ć","c",$plik_nazwa);
$plik_nazwa = str_replace("ź","z",$plik_nazwa);
$plik_nazwa = str_replace("ó","o",$plik_nazwa);
$plik_nazwa = str_replace("ł","l",$plik_nazwa);
$plik_nazwa = str_replace("ń","n",$plik_nazwa);

$sp = explode(".",$plik_nazwa);
$count_sp = count($sp) - 1;

// sprawdzamy rozszerzenie
if($sp[$count_sp] == "gif" or $sp[$count_sp] == "jpg") {
echo "Plik poprawny";
// zamiast tego napisu wstaw kod,
// ktory zapisuje plik na serwer
}
else {
echo "Plik niepoprawny. Tylko pliki <strong>gif i jpg</strong> ";
exit;
}

if(is_uploaded_file($plik_tmp)) {
move_uploaded_file($plik_tmp, "galeria/$plik_nazwa");
echo "Plik: <strong>$plik_nazwa</strong> o rozmiarze
<strong>$plik_rozmiar bajtów</strong> został przesłany na serwer!";
}
else
echo "Nie udało się wysłać zdjęcia <strong>$plik_nazwa</strong> na serwer.Pamiętaj, że zdjęcie nie może byś większe niż <strong>100kb</strong>";
}
}
?>

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
athei
post 27.02.2010, 13:12:03
Post #2





Grupa: Zarejestrowani
Postów: 389
Pomógł: 141
Dołączył: 11.04.2009

Ostrzeżenie: (0%)
-----


Do wyświetlenia listy zdjęć możesz użyć
  1. <?php
  2. if ($handle = opendir('./galeria'))
  3. {
  4. while (($file = readdir($handle))!=false)
  5. {
  6. if ($file != '.' && $file != '..') {
  7. echo'<img src="galeria/'.$file.'" />';
  8. echo '<a href="usun.php?zdjecie='.$file.'">Usun</a>';
  9. }
  10. }
  11. }
  12. closedir($handle);
  13. ?>

Usun.php
  1. <?php
  2. $file= $_GET['zdjecie'];
  3. $katalog = ".\galeria\\";
  4. if (file_exists($katalog.$file))
  5. unlink($katalog.$file);
  6. ?>

Pozabezpieczaj sobie odpowiednio, np w usun.php sprawdzaj czy zalogowany user itd.
Go to the top of the page
+Quote Post
Festi
post 27.02.2010, 15:44:24
Post #3





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 27.02.2010

Ostrzeżenie: (0%)
-----


Dzięki. Ale nie usuwa coś. Co jest nie tak?

http://www.olele.cal.pl/fotki.php

http://www.olele.cal.pl/realizacje.php

Czy nie ma jakiegoś prostego błędu w tym skrypcie? czemu nie usuwa fotek? proszę o pomoc
Go to the top of the page
+Quote Post
athei
post 27.02.2010, 15:59:42
Post #4





Grupa: Zarejestrowani
Postów: 389
Pomógł: 141
Dołączył: 11.04.2009

Ostrzeżenie: (0%)
-----


Pomyliłem się z ukośnikami w usun.php
Źle $katalog = ".\galeria\\";
Dobrze $katalog = "./galeria/";
Go to the top of the page
+Quote Post
Festi
post 27.02.2010, 16:03:01
Post #5





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 27.02.2010

Ostrzeżenie: (0%)
-----


Już działa :-)))) SUPER WIELKIE DZIĘKI :-)
Go to the top of the page
+Quote Post
solange90
post 22.01.2013, 19:55:34
Post #6





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 22.01.2013

Ostrzeżenie: (0%)
-----


Miałam podobny problem, odpowiedź bardzo mi pomogła, tylko w moim przypadku obok każdego zdjęcia mają być checkboxy i na podstawie ich zaznaczenia zdjęcia mają być usuwane. Modyfikowałam wiele razy powyższy kod, ale nic nie pasuje.
Go to the top of the page
+Quote Post
athei
post 22.01.2013, 20:38:01
Post #7





Grupa: Zarejestrowani
Postów: 389
Pomógł: 141
Dołączył: 11.04.2009

Ostrzeżenie: (0%)
-----


  1. <form action="usun.php" method="post">
  2. <?php
  3. if ($handle = opendir('./galeria')) {
  4. while (($file = readdir($handle)) != false) {
  5. if ($file != '.' && $file != '..') {
  6. echo'<img src="galeria/'.$file.'" />';
  7. echo '<input type="checkbox" name="zdjecie[]" value="' . $file . '" />';
  8. }
  9. }
  10. }
  11. closedir($handle);
  12. ?>
  13. <input type="submit" name="submit" value="usun wybrane" />
  14. </form>


usun.php
  1. <?php
  2. $katalog = ".\galeria\\";
  3. if (isset($_POST['zdjecie'])) {
  4. foreach ($_POST['zdjecie'] as $file) {
  5. if (file_exists($katalog . $file)) {
  6. unlink($katalog . $file);
  7. echo 'Plik ' . $file . ' usuniety.<br />';
  8. }
  9. }
  10. }
  11.  
  12. ?>
Go to the top of the page
+Quote Post
solange90
post 22.01.2013, 20:56:43
Post #8





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 22.01.2013

Ostrzeżenie: (0%)
-----


Krążyłam wokół tego, bardzo dziękuję za pomoc!!
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 08:37