Insert / Delete z DB bez refreshu stránky
- Andurit
- Člen | 131
Ahojte, z času na čas, potrebujem niečo insertnúť alebo deletnuť z DB bez refreshu stránky, aktuálne využívam niečo také:
<form name="form1" action="">
Enter Name <input type="text" name="t1" id="t1"></td> <br>
Enter City <input type="text" name="t2" id="t2"></td> <br>
<input type="button" name="button1" value="Insert to DB" onClick="aa()">
</form>
<div id="d1"></div>
<script type="text/javascript">
function aa()
{
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", "insert.php?name=" + document.getElementById("t1").value + "&city=" + document.getElementById("t2").value, false);
xmlhttp.send(null);
document.getElementById("d1").innerHTML=xmlhttp.responseText;;
}
</script>
V zásade čo to spravý je, že to zavolá nejaký iný .php file kde je
už SQL command. Pracuje to dobre (tak ako to potrebujem), rozmýšlam ale ako
by sa niečo podobné dalo spraviť v Nette, nakoľko s JQUERY či JS veľmi
nepracujem budem vám veľmi vďačný za každý „example“ code.
Vie mi niekto so skúsenostami poradiť?
Vopred vďaka všetkým
Editoval Andurit (10. 2. 2015 16:20)
- Marek Šneberger
- Člen | 130
Ajax plus jQuery extenze. Pokud forum prohledáš pro „nette.ajax.js“, najdeš asi trilión způsobů, jak na to.
- Marek Šneberger
- Člen | 130
V pravo nahoře je vyhledávání :-) První odkaz při zadání „nette.ajax.js example“ míří sem
- vvoody
- Člen | 910
Vieš, nette komunita odmieta vychovávať kopírovačov kódu. Nečakaj radu dokiaľ ľudia nevidia snahu z tvojej strany. Nevieš ako prejaviť snahu? Napríklad takto: „Na tomto linku som si našiel podobný problém, skúsil som jeho riešenie aplikovať na môj problém nasledovným spôsobom, ale skončilo to takouto chybou ktorej vôbec nechápem.“, dám ruku do ohňa za to, že po takejto otázke ta určite niekto rád usmerní v riešení tvojho problému.
- TheNEoo
- Člen | 75
Ahoj,
- Tam kam te odkazuje Marek Šneberger je to co potrebujes.
- Fungovat to ma nasledovne (cca):
- Je to z hlavy neručim za to, jiz jsem to dlouho nepouzival:)
- A pocitam ze js mas nalinkovano a init zavolan
{snippet mujSnippet}
{foreach $row as $item}
...
<!-- volas handle predas id a dulezite je class="ajax" -->
<a n:href="delete!, 'id'=>$item->id" class="ajax">Smazat</a>
...
{/foreach}
{/snippet}
public function handleDelete($id){
//nejaky ten pozadavek po DB update / insert / delete treba
$this->db->delete($id)
$this->flashMessage("Zaznam s '$id' byl odstranen");
if($this->isAjax()){ // jde o ajax pozadavek?
$this->redrawControl('mujSnippet'); // invalidujes dotycnej snippet
}else{
$this->redirect('this');
}
}
Doufam ze nekecam a neradim blbost :)