Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Czy na pewno chcesz usunąć?
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
kris29
Mam taki problem. Oto kod usuwający zdjęcie z bazy danych:

Kod
if($_GET['delete'])

{

             $delsql = "DELETE FROM zdjecia WHERE idfot = " . $validfot . " LIMIT 1;";
             mysql_query($delsql);
}



Chciałbym aby było jeszcze ostrzeżenie, jednak nie potrafię zjednać JS i PHP. Jak obudować powyższy kod, aby przed skasowaniem pojawił się jeszcze MsxBox OkCancel, z zapytaniem "Czy na pewno chcesz usunąc to zdjęcie?"
lord_t
Musisz to zrobić tam gdzie wysyłasz formularz. Do formularza dodać onsubmit a w nim skorzystać z prompt() confirm().


edit: @Shili ma rację, to ma być confirm(), a nie prompt(). Pomyliłem funkcje.
Berg
Na stronie poprzedzającej skasowanie dajesz linki mają mieć klasę ustawioną na delete:

  1. <a href="jakis_adres.pl?delete=yes" class="delete">Pierwszy link</a>
  2. <a href="jakis_adres.pl?delete=yes" class="delete">Drugi link</a>
  3. <a href="jakis_adres.pl?delete=yes" class="delete">Trzeci link</a>


Kod JS który będzie odpowiadał za kasowanie:

  1. var klasa = document.getElementsByTagName('a');
  2. for(var i=0;i<klasa.length;i++) {
  3. if(klasa[i].className == 'delete') {
  4. klasa[i].onclick = function() {
  5. var ask = confirm('Czy na pewno chcesz usunąc to zdjęcie?');
  6. if(ask) return true;
  7. else return false;
  8. }
  9. }
  10. }


Kod JS wyszukuje wszystkie linki z klasą delete, w przypadku kliknięcia na którykolwiek z nich wyskoczy komunikat z prośbą o potwierdzenie, jeśli operacja zostanie potwierdzona to następuje przekierowanie na stronę podaną w href.
Shili
Wystarczy
Kod
return confirm('Czy na pewno chcesz usunąc to zdjęcie?');


Zamiast przydługiego
Kod
var ask = confirm('Czy na pewno chcesz usunąc to zdjęcie?');
                if(ask) return true;
                                else return false;


Poza tym proponowałabym prostszą formę, jeśli chodzi o zwykłe js:
  1. <a href="jakis_adres.pl?delete=yes" onclick="return confirm('Czy na pewno chcesz usunąc to zdjęcie?');">Pierwszy link</a>
Nie trzeba się babrać z document ready ani niczym podobnym winksmiley.jpg
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.