» »

[ajax] Kako refreshati stran

[ajax] Kako refreshati stran

amaze646 ::

Pozdrav


Torej izdelujem spletno aplikacijo (php), ki vsebuje seznam uporabnikov. Na seznamu imam poleg vsakega uporabnika na desni strani se gumb s katerim lahko uporabnika izbrisem. Torej, ob kliku na gumb se mi izvrsi skripta brisi.php in tudi deluje tako, da me ne preusmerja na drugo stran. Sedaj bi pa rad dosegel samo se to, da bi se seznam samodejno osvezil. Se pravi, ce izbrisem uporabnika bi se na seznamu takoj ta uporabnik odstranil. Kako lahko to dosezem?

Hvala

Gandalfar ::

uporabis jquery in si preberes osnovni tutorial :)

schtr4jh ::

pred selectom iz baze preveri, če dobiš zahtevo za brisanje in jo izvedi =)

amaze646 ::

Ok sem uporabil jquery in mi zadeva brise vnose ampak vseeno moram rocno osveziti stran, da iz seznama izginejo izbrisani uporabniki.

js skripta:
$(document).ready(function() {
   $(".brisi").click(function() {
     $.post("brisi.php",{ id: $(this).val()});
      $(".brisi").click(function() {
      
    });
   });
 });



PHP skripta za brisanje:
require_once($_SERVER['DOCUMENT_ROOT'].'main/classes/DBConnector.php');
$id = $_POST['id'];
$povezava = new DbConnector();
$q = $povezava->query("DELETE FROM tabela WHERE ID_Polje=".$id);

Zgodovina sprememb…

Gandalfar ::

Glede na to da si ze na elementu, ga potem samo se odstrani z .empty() ali pa .remove() - kar ti bolj sede:

http://docs.jquery.com/Manipulation/emp...
http://docs.jquery.com/Manipulation/rem...

preem ::

ja kako pa izpišeš seznam uporabnikov? ga bo treba še enkrat pognat pa osvežit container, kjer jih izpišeš.

lahko pa ga enostavno zbrišeš iz seznama, s pomočjo jquerija celo precen enostavno, samo izbereš taprav element in daš destroy() ( al remove() al kaj je že) . poglej v dokumentacijo)

edit: oops, evo, sej gandalfar isto pravi.

Zgodovina sprememb…

  • spremenilo: preem ()

Gandalfar ::

tm k mas $(this) dodas zraven kej v stilu

$(this).parent().emtpy()

to predvideva, da imas podatke v
<tr>
in ti $(this) vsebuje
<td>
celico in stopis en korak visje in zbrises celo vrstico. Tezko vedt brez tocne html strukture.

amaze646 ::

Hvala lepa za odgovore in vas cas. Zadeva mi zdaj deluje. Ko kliknem gumb klicem tudi metodo load, ki nato osvezi vsebino containerja. V naslednje bom res najprej podrobneje prebrati dokumentacijo :)

$(document).ready(function() {
$(".brisi").click(function() {
$.post("brisi.php",{ id: $(this).val()}, function(){
$("#list_content").load("#list_content");
});
});
});

root987 ::

Samo ena opomba - daj ti preverji v brisi.php, da imaš dejansko pravico brisat - ker to kar imaš zdaj prav kliče po mal SQL injection-a za zajtrk :> (razen če ti un DbConnector preverja te stvari že by default or something v PHP sem že zarjavel)
"Myths which are believed in tend to become true."
--- George Orwell


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[jQuery] Zamenjava sličic pri različnih stanjih miške

Oddelek: Programiranje
111450 (1097) kornilov
»

Jquery

Oddelek: Izdelava spletišč
151804 (1528) mk818764
»

jquery in div-i (strani: 1 2 )

Oddelek: Izdelava spletišč
8711272 (10010) lisjak
»

jQuery load

Oddelek: Izdelava spletišč
61587 (1504) MrBrdo
»

JavaScript in menjanje div-ov

Oddelek: Programiranje
61533 (1417) Gandalfar

Več podobnih tem