Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][AJAX] Zmiana stanu bazy + reload div'a
tmgryf
post
Post #1





Grupa: Zarejestrowani
Postów: 79
Pomógł: 1
Dołączył: 14.02.2009

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


Potrzebuje idei jak zrobić takie coś:

Mam listę logów - w niej wpis np:

ktostam sie zalogowal z uprawnieniami administracyjnymi [usun wpis]

co powinienem zrobić aby po wciśnięciu [usuń wpis] wpis się usunął plus div przeladował z np. logi.php

moglbym dodac akcje np. logi.php?action=delete&id=xx, to połowicznie by mi załatwiło sprawe bo jeśli będę miał wpis np:

ktostam usunal artykul "bla bla" [zatwierdz akcje (usuń naprawde bo teraz jest tylko niewyswietlany, usun ten wpis i przeladuj diva)] [cofnij usuniecie czyli zrob display=1 i usun ten wpis i przeladuj diva]

Ma ktoś pomysł jak zrobić takie coś, bo na artykach to sie nie konczy - sa jeszcze zdjecia, opisy zdjec, informacje czlonkowie itp..
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
Fishu
post
Post #2





Grupa: Zarejestrowani
Postów: 192
Pomógł: 13
Dołączył: 16.11.2007
Skąd: Żory

Ostrzeżenie: (10%)
X----


Po prostu zrób coś takiego:
Administrator zalogował się do panelu [<div id='del' onClick='delLog()'>Usuń wpis</div>]
I w js zrób funkcję, która będzie otwierała plik, który będzie usuwał wpis (wynik przypisuj do div'a o id = 'del')
Go to the top of the page
+Quote Post
tmgryf
post
Post #3





Grupa: Zarejestrowani
Postów: 79
Pomógł: 1
Dołączył: 14.02.2009

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


no to bedzie to rozwiazanie polowiczne.... bo nie problem jest usunac tylko wpis z bazy i z wyswietlania, ale jak ma sie wiele opcji do zatwoerdzenia ktore sa pozapisywane w rozny sposob np. artykuly w jednej tabeli informacje w innej itd

szukam jakiegos sprytnego rozwiazania calosciowego - zalemi np na tym aby wszelkie edycje np wiazalyby sie z zachowaniem poprzedniej w bazie...

chyba mam goraczke i za duzo majacze.... cos wykombinuje.....
Go to the top of the page
+Quote Post
erix
post
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
wpis się usunął plus div przeladował z np. logi.php

Właściwe usuwanie przez AJAX, a usuwanie div - removeChild z DOM: https://developer.mozilla.org/En/DOM/Node.removeChild

Cytat
Ma ktoś pomysł jak zrobić takie coś, bo na artykach to sie nie konczy - sa jeszcze zdjecia, opisy zdjec, informacje czlonkowie itp..

Jeśli chodzi Ci o coś w stylu "cofnij", to można inaczej: w JS robisz sobie tablicę czynności. I sobie user przestawia, co chce, potem klika na "zapisz", a wtedy JS wysyła po kolei żądania do serwera.

Uściślij troszkę. (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
tmgryf
post
Post #5





Grupa: Zarejestrowani
Postów: 79
Pomógł: 1
Dołączył: 14.02.2009

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


logi sa ostatnia linia oporu walki ze szkodami jakie moze wyrzadzic user jak bedzie mial wieksze uprawnienia np, zlosliwie usunac artykul, przeedytowac,zjecia pousuwac, pozmieniac komentarze itp - w sumie w tym momencie tylko ja moge wyrzadzic takie szkody, ale kiedys to pewnie sie zmieni i bede potrzebowal narzedzia cofania zmian - na wszelki wypadek. najszesciej dokonuje czegokolwiek w tkim stylu np. albumy.php?action=delete lub edit i tak sobie teraz pomyslalem ze skoro muzse przerobis czesc kodu istniejacego z zapytania sql delete/update na odpowiednio update set display=0 / insert nowe cokolwiek a stare set display=0 to moze stara komende sql bede sobie zapisywal w bazie (i w razie czego bede ja wykonywal) tylko teraz pytanie jak bezpiecznie to zrobic? - cos na ksztalt myphpadmin, a skoro chce by byl to ajax to jak przepchac "bezpiecznie" komende sql ajaxem?

Moze macie podobne rozwiazania w lepszej formie?
Go to the top of the page
+Quote Post
erix
post
Post #6





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
najszesciej dokonuje czegokolwiek w tkim stylu np. albumy.php?action=delete lub edit i tak sobie teraz pomyslalem ze skoro muzse przerobis czesc kodu istniejacego z zapytania sql delete/update na odpowiednio update

Poszukaj sobie o CSRF

Cytat
cos na ksztalt myphpadmin, a skoro chce by byl to ajax to jak przepchac "bezpiecznie" komende sql ajaxem?

Sory, ale nie rozumiem problemu.
Go to the top of the page
+Quote Post
esiek
post
Post #7





Grupa: Zarejestrowani
Postów: 65
Pomógł: 0
Dołączył: 6.11.2008
Skąd: Warszawa

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


AJAX.JS
  1. //////Funkcja gerData
  2. var ObiektXMLHttp = false;
  3. if (window.XMLHttpRequest)
  4. {
  5. ObiektXMLHttp = new XMLHttpRequest(); }
  6. else if (window.ActiveXObject)
  7. {
  8. ObiektXMLHttp = new ActiveXObject("Microsoft.XMLHTTP"); }
  9. function getData(zrodlo, cel) {
  10. if(ObiektXMLHttp)
  11. {
  12. var cel = document.getElementById(cel);
  13. ObiektXMLHttp.open("GET", zrodlo);
  14. ObiektXMLHttp.onreadystatechange = function()
  15. {
  16.  
  17. if (ObiektXMLHttp.readyState == 4){cel.innerHTML = ObiektXMLHttp.responseText;}
  18.  
  19. }
  20. ObiektXMLHttp.send(null); } }




wysołujesz scrypt tak

  1. <a HREF="java script:onclick=getData('folder/plik.php?zmienna=wartosc', 'div')">Usuń</A>



gdzie

przykladowy wpis wyswietlasz w divie

  1. <div id=$id_wpisu>wpis bla bla bla</div>


i wyołując

  1. <a HREF="java script:onclick=getData('folder/plik.php?zmienna=$id_wpisu', '$id_wpisu')">Usuń</A>



jezeli w pliku nie bedzie zadnego tekstu tylko funkcja usuwająca rekord z bazy danych to div poprostu zniknie a calosc sie przesunie w góre (IMG:style_emoticons/default/winksmiley.jpg) ja sam tego uzywam (IMG:style_emoticons/default/winksmiley.jpg) pozdrawiam (IMG:style_emoticons/default/winksmiley.jpg)

Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.08.2025 - 01:40