| Subiectul anterior :: Subiectul următor |
| Autor |
Mesaj |
PET
Data înscrierii: 20/Aug/2003
Mesaje: 323
Locație: Timisoara
|
| Trimis: Joi Mai 15, 2008 6:50 pm Titlul subiectului: Dynamic Form Update |
|
|
Am o lista in care in niste input forms populez informatia luata din baza de date.
Vreau ca atunci cand sterg ceva dintr-un input si scriu altceva, automat sa se faca update in baza de date cu ajax. Am cautat ceva tutoriale dar fara succes.
---------------
| 48888888 |
--------------
Ala e un input si am luat din baza de date informatia. Daca eu sterg si scriu altceva, frau sa faca imediat update in baza de date.
Sugestii? :roll:
Mersi |
|
| Sus |
|
MihaiC
Data înscrierii: 14/Mai/2006
Mesaje: 1037
Locație: Navodari
|
| Trimis: Joi Mai 15, 2008 7:00 pm Titlul subiectului: Re: Dynamic Form Update |
|
|
PET a scris:
Sugestii?
Da, descurca-te !
http://www.w3schools.com/Ajax/Default.Asp |
|
| Sus |
|
PET
Data înscrierii: 20/Aug/2003
Mesaje: 323
Locație: Timisoara
|
| Trimis: Joi Mai 15, 2008 7:58 pm Titlul subiectului: Re: Dynamic Form Update |
|
|
MihaiC a scris: PET a scris:
Sugestii?
Da, descurca-te !
http://www.w3schools.com/Ajax/Default.Asp
WoW... foarte interesant postul. Dupa cum am zis. Am citit, am incercat si nu stiu cum sa fac. |
|
| Sus |
|
catalinxpro
Data înscrierii: 12/Iul/2006
Mesaje: 145
|
| Trimis: Joi Mai 15, 2008 8:27 pm Titlul subiectului: |
|
|
salut...ai incercat :
Cod: onchange="this.form.submit();" |
|
| Sus |
|
PET
Data înscrierii: 20/Aug/2003
Mesaje: 323
Locație: Timisoara
|
| Trimis: Vin Mai 16, 2008 7:09 am Titlul subiectului: |
|
|
catalinxpro a scris: salut...ai incercat :
Cod: onchange="this.form.submit();"
adica onchange, sa faca acea functie?
Problema e ca nu stiu cum sa scriu functia de update in AJAX/Javascript. |
|
| Sus |
|
mihaitha
Data înscrierii: 04/Mai/2007
Mesaje: 1801
Locație: Sibiu
|
| Trimis: Vin Mai 16, 2008 10:02 am Titlul subiectului: |
|
|
| Si n-ai destule tutoriale pe net? |
|
| Sus |
|
Copyright
Data înscrierii: 17/Dec/2006
Mesaje: 860
Locație: Bucuresti
|
| Trimis: Vin Mai 16, 2008 10:10 am Titlul subiectului: |
|
|
PET a scris: ...am incercat...
Posteaza ce ai incercat sa vedem si noi.
Later. |
|
| Sus |
|
catalinxpro
Data înscrierii: 12/Iul/2006
Mesaje: 145
|
| Trimis: Vin Mai 16, 2008 11:01 am Titlul subiectului: |
|
|
incearca asta.....
Cod: <form method='post'>
<input type='text' onchange="this.form.submit();">
</form> |
|
| Sus |
|
MihaiC
Data înscrierii: 14/Mai/2006
Mesaje: 1037
Locație: Navodari
|
| Trimis: Vin Mai 16, 2008 11:10 am Titlul subiectului: |
|
|
catalinxpro a scris: incearca asta.....
Cod: <form method='post'>
<input type='text' onchange="this.form.submit();">
</form>
De fapt e:
Cod:
<form method='post'>
<input type='text' onkeyup="functie_AJAX_pe_care_o_face_PET_citind_pe_net();">
</form>
|
|
| Sus |
|
catalinxpro
Data înscrierii: 12/Iul/2006
Mesaje: 145
|
| Trimis: Vin Mai 16, 2008 11:12 am Titlul subiectului: |
|
|
MihaiC a scris: catalinxpro a scris: incearca asta.....
Cod: <form method='post'>
<input type='text' onchange="this.form.submit();">
</form>
De fapt e:
Cod:
<form method='post'>
<input type='text' onkeyup="functie_AJAX_pe_care_o_face_PET_citind_pe_net();">
</form>
intai incearca codu ala asa cum l-am pus eu si pe urma postezi :lol: |
|
| Sus |
|
Copyright
Data înscrierii: 17/Dec/2006
Mesaje: 860
Locație: Bucuresti
|
| Trimis: Vin Mai 16, 2008 11:34 am Titlul subiectului: |
|
|
@catalin
el a spus cclar ca vrea sa faca salvarea datalor asincron.
PET a scris: Vreau ca atunci cand sterg ceva dintr-un input si scriu altceva, automat sa se faca update in baza de date cu ajax. catalinxpro a scris: <input type='text' onchange="this.form.submit();">
@Mihai
Daca folosesti onkeyup o sa omori serverul pentru ca fiecare apasare de tasta(aici intra si tab, backspace, enter...) o sa declanseze un request Ajax. Corect este sa folosesti onchange care functioneaza asemanator cu evenimentul onblur dar se declanseaza doar daca valoarea campului sa schimbat de la evenimentul onfocus.
http://www.w3schools.com/jsref/jsref_onkeyup.asp
http://www.w3schools.com/jsref/jsref_onchange.asp
Later. |
|
| Sus |
|
PET
Data înscrierii: 20/Aug/2003
Mesaje: 323
Locație: Timisoara
|
| Trimis: Sâm Mai 17, 2008 7:04 am Titlul subiectului: |
|
|
a zis bine Copyright.
M-am uitat pe onchange si e fix asa cum trebe. Eu scriu, selectez altceva (sau mai bine zis deselectez input-ul) si atunci sa se faca update-ul.
Inainte sa scriu functia, ma gandesc ca fiecare input trebuie sa aiba ca nume ID-ul lui, altfel o sa stie unde sa faca update la tabel. Nu? |
|
| Sus |
|
Copyright
Data înscrierii: 17/Dec/2006
Mesaje: 860
Locație: Bucuresti
|
| Trimis: Dum Mai 18, 2008 9:15 am Titlul subiectului: |
|
|
Sau poti sa scri id-ul direct ca parametru al functiei de update:
while(fetch resursa_mysql){
echo '<input type="text" onchange="update_field(',$row->id,', this.value);">';
}
PET a scris: Problema e ca nu stiu cum sa scriu functia de update in AJAX/Javascript.
arunca un ochi aici: http://daniel.lorch.cc/docs/ajax_simple/
Later. |
|
| Sus |
|
PET
Data înscrierii: 20/Aug/2003
Mesaje: 323
Locație: Timisoara
|
| Trimis: Dum Mai 18, 2008 2:38 pm Titlul subiectului: |
|
|
Copyright a scris: Sau poti sa scri id-ul direct ca parametru al functiei de update:
while(fetch resursa_mysql){
echo '<input type="text" onchange="update_field(',$row->id,', this.value);">';
}
PET a scris: Problema e ca nu stiu cum sa scriu functia de update in AJAX/Javascript.
arunca un ochi aici: http://daniel.lorch.cc/docs/ajax_simple/
Later.
Ideea e ca folosesc Smarty si nu mi-ar fi greu sa ii dau ca name {$card.id} sau ceva de genu. Acum ma uit pe linkul dat.
Ideea e ca is asa multe tutoriale, scripturi incat multe trebuie sa le adaptezi, si e destul de greu sa le adaptezi. Poate are ceva de care eu nu am nevoie si numa ma incurca, samd. Deasta prefer sa intreb ceva si sa aflu direct ceea ce vreau. |
|
| Sus |
|
PET
Data înscrierii: 20/Aug/2003
Mesaje: 323
Locație: Timisoara
|
| Trimis: Lun Mai 19, 2008 10:12 pm Titlul subiectului: |
|
|
Cod: <script type="text/javascript">
var http = false;
if(navigator.appName == "Microsoft Internet Explorer") {
http = new ActiveXObject("Microsoft.XMLHTTP");
} else {
http = new XMLHttpRequest();
}
function validate(user) {
http.abort();
http.open("GET", "validate.php?name=" + user, true);
http.onreadystatechange=function() {
if(http.readyState == 4) {
document.getElementById('foo').innerHTML = http.responseText;
}
}
http.send(null);
}
</script>
<h1>Please choose your username:</h1>
<form>
<input type="text" onkeyup="validate(this.value)" />
<div id="foo"></div>
</form>
Asta e codul de pe linkul postat de Copyright si as vrea daca vreti sa pargurgem codul sa inteleg si eu totul si cine mai citeste acest topic.
----------
var http = false;
Asta n-am idee ce face.
if(navigator.appName == "Microsoft Internet Explorer") {
http = new ActiveXObject("Microsoft.XMLHTTP");
} else {
http = new XMLHttpRequest();
}
Hmm... aici stiu ca e parte acu AJAX. IE-ul floseste acel ActiveX, etc...
function validate(user) {
http.abort();
http.open("GET", "validate.php?name=" + user, true);
http.onreadystatechange=function() {
if(http.readyState == 4) {
document.getElementById('foo').innerHTML = http.responseText;
}
}
http.send(null);
}
Aceasta este functia apelata atunci cand: onkeyup="validate(this.value)"
this.value inseamna ca ia informatia din acel input. Eu pot sa folosesc this.value ca sa iau noua informatie, si apoi o trimit catre comanda SQL.
http.open("GET", "validate.php?name=" + user, true);
Asta trimite catre fisierul validate.php?name=this.value
Corect?
Eu as putea sa fac ceva de genu:
http.open("GET", "validate.php?name=" + user +"&id=" + id, true);
Nu stiu daca am scris corect deoarece nu cunosc exact punctuatia javascript. Ideea e ca vreau sa fac linkul ceva de genu:
validate.php?act=ceva&name=2&id=241
2 este noua valoare care trebuie updatata in baza de date iar 241 este ID-ul intrarii din baza de date.
Acum mai trebuie ca atunci cand "onkeyup" se face sa apara un mesaj de verificare cu OK - CANCEL. Nu vreau sa modific ceva din greseala si apoi sa nu stiu ce intrare avea. Apoi vreau sa limitez intrarile doar la numere. Daca scriu "F3" sa nu updateze deoarece "F" se gaseste in input.
Apoi trebuie sa vad cum sa obtin acel ID in functie. As putea sa dau ca name al acelui INPUT ... ID-ul din baza de date. Dar cum obtin eu in javascript id-ul acelui input?
EDIT: In loc de onkeyup o sa folosesc onchange.
Deocamdata atat. Sugestii?
mersi |
|
| Sus |
|
PHPRomania Bot
Bot Member
Data înscrierii: 27/Dec/2007
Mesaje: 1
Locaţie: Server Google |
| Trimis: Mie Dec 26, 2007 7:01 pm Titlul subiectului: Ad |
|
|
|
|
|
| Sus |
|
| |