butoane cu refresh ajax
Moderator: Moderatori
butoane cu refresh ajax
salut tuturor ... ma chinui la ceva ce nu prea reusesc mai ales cu ajax .. am incercat si niste lectii de tutoriale dar nu imi da ceea ce vreau eu ... de exemplu este pe site-ul asta http://www.pretbomba.ro/Default.aspx?p=1&id=12710 cand da cineva click pe butonu ala ofera apare instant in lista aia de useri cel care a licitat sau ce e acolo si se aduna si la suma de mai sus ... eu tot ce am reusit sa fac e sa apas pe un buton ca sa se reactualizeze lista de useri fara un refresh dar singura nu se actualizeaza....
-
- Senior Member
- Mesaje: 261
- Membru din: Mar Iul 11, 2006 11:27 am
- Localitate: Bucuresti
- Contact:
Ceea ce au ei acolo, este foarte simplu. Iti recomand sa vezi cateva exemple jQuery. Si eu am un script facut cu jQuery in magazinul meu. Daca un produs beneficiaza de cel putin o optiune, si aceasta optiune are un plus in valoare, in momentul in care userul selecteaza acea optiune, ii afisez pretul instant. Mai pe scurt, cauta in documentatia jQuery, metoda $.get sau $.post. Succes
am un magazin online de baterii laptop www.baterii-laptop.com.ro si unul de gadgeturi, accesorii telefoane mobile, etc... www.abshop.ro
:)
pai eu am facut ceva de genu cu post .... si afisam cu dar daca se inregistreaza o noua inserare in db doar daca dau click se actualizeaza si nu singur.....
Cod: Selectaţi tot
<script type="text/javascript">
<!--
// Functia care verifica si creaza obiectul XMLHttpRequest in functie de browser
function get_XmlHttp() {
// Creaza variabila care va contine instanta la XMLHttpRequest, initial cu valoare nula
var xmlHttp = null;
if(window.XMLHttpRequest) { // Daca browser-ul e Forefox, Opera, Safari, ...
xmlHttp = new XMLHttpRequest();
}
else if(window.ActiveXObject) { // Daca browser-ul este Internet Explorer
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
return xmlHttp;
}
// Functia care trimite datele la un fisier PHP si returneaza raspunsul
function ajaxrequest(tagID) {
var cerere_http = get_XmlHttp(); // Apeleaza functia pt. crearea instantei la obiectul XMLHttpRequest
// Creaza datele care trebuie trimise prin POST la scriptul PHP (perechi nume=valoare)
var datele = 'test='+document.getElementById(tagID).innerHTML;
cerere_http.open("POST", 'test_post.php', true); // Creaza cererea
// Adauga un Header specific pentru ca datele sa fie recunoscute ca au fost trimise prin POST
cerere_http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
cerere_http.send(datele); // Efectueaza trimiterea cererii, impreuna cu valorile care trebuie transmise
// Verifica starea cererii
// Daca raspunsul e primit complet, il transfera in eticheta HTML cu id-ul din "tagID"
cerere_http.onreadystatechange = function() {
if (cerere_http.readyState == 4) {
document.getElementById(tagID).innerHTML = cerere_http.responseText;
}
}
}
//-->
</script>
Cod: Selectaţi tot
<h5 style="cursor:pointer;" onclick="ajaxrequest('context')">Click</h5>
:)
momentan am un form cu care inserez in db dar cred ca trebuie sa fac altfel ca sa nu imi dea refresh la pagina ... pana acu am pus si in js si ceva scapa...
Cod: Selectaţi tot
if(isset($_POST['B1'])) {
if ($credite > 0) {
$insertrez = mysql_query("INSERT INTO licitatori ( id_user, username, id_produs, suma ) VALUES ('{$id}','{$username}','{$id_prod}','{$sumanoua}')");
mysql_query("UPDATE users SET credite='$creditenoi' WHERE username='$username'");
Cod: Selectaţi tot
<body onload=setinterval("ajaxrequest('context')",100);>
Cod: Selectaţi tot
// Daca raspunsul e primit complet, il transfera in eticheta HTML cu id-ul din "tagID"
cerere_http.onreadystatechange = function() {
if (cerere_http.readyState == 4) {
document.getElementById(tagID).innerHTML = cerere_http.responseText;
}
setTimeout("ajaxrequest('content',1000);
}
:)
ok deci am body si js unde am pus timeout cat mai mic ... si avisarea o fac cu <div id="context"></div> imi apar userii da nusi face refresh cand se liciteaza ...
Cod: Selectaţi tot
<body onload="ajaxrequest('context')";>
Cod: Selectaţi tot
function ajaxrequest(tagID) {
var cerere_http = get_XmlHttp();
// Apeleaza functia pt. crearea instantei la obiectul XMLHttpRequest
// Creaza datele care trebuie trimise prin POST la scriptul PHP (perechi nume=valoare)
var datele = 'test='+document.getElementById(tagID).innerHTML;
cerere_http.open("POST", 'test_post.php', true); // Creaza cererea
// Adauga un Header specific pentru ca datele sa fie recunoscute ca au fost trimise prin POST
cerere_http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
cerere_http.send(datele); // Efectueaza trimiterea cererii, impreuna cu valorile care trebuie transmise
// Verifica starea cererii
// Daca raspunsul e primit complet, il transfera in eticheta HTML cu id-ul din "tagID"
cerere_http.onreadystatechange = function() {
if (cerere_http.readyState == 4) {
document.getElementById(tagID).innerHTML = cerere_http.responseText;
}
setTimeout(10);
}
}
:)
numi iese si nu imi iese ... am luat exemplul asta de pe net si la mine ar veni si refresh nu face ...
Cod: Selectaţi tot
moreSnow();
function moreSnow() {
// content of moreSnow function
setTimeout("moreSnow()", speed);
}
Cod: Selectaţi tot
<script type="text/javascript">
<!--
// Functia care verifica si creaza obiectul XMLHttpRequest in functie de browser
function get_XmlHttp() {
// Creaza variabila care va contine instanta la XMLHttpRequest, initial cu valoare nula
var xmlHttp = null;
if(window.XMLHttpRequest) { // Daca browser-ul e Forefox, Opera, Safari, ...
xmlHttp = new XMLHttpRequest();
}
else if(window.ActiveXObject) { // Daca browser-ul este Internet Explorer
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
return xmlHttp;
}
// Functia care trimite datele la un fisier PHP si returneaza raspunsul
function ajaxrequest(tagID) {
var cerere_http = get_XmlHttp();
// Apeleaza functia pt. crearea instantei la obiectul XMLHttpRequest
// Creaza datele care trebuie trimise prin POST la scriptul PHP (perechi nume=valoare)
var datele = 'test='+document.getElementById(tagID).innerHTML;
cerere_http.open("POST", 'test_post.php', true); // Creaza cererea
// Adauga un Header specific pentru ca datele sa fie recunoscute ca au fost trimise prin POST
cerere_http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
cerere_http.send(datele); // Efectueaza trimiterea cererii, impreuna cu valorile care trebuie transmise
// Verifica starea cererii
// Daca raspunsul e primit complet, il transfera in eticheta HTML cu id-ul din "tagID"
cerere_http.onreadystatechange = function() {
if (cerere_http.readyState == 4) {
document.getElementById(tagID).innerHTML = cerere_http.responseText;
}
setTimeout("ajaxrequest(tagID)", 1000);
}
}
//-->
</script>
:)
am pus un alert inloc de ajaxrequest si mil da deci interval merge dar nu da refresh la aia...
Cod: Selectaţi tot
setTimeout("ajaxrequest(tagID)", 1000);
---->>>
Cod: Selectaţi tot
setTimeout("ajaxrequest(" + tagID + ")", 1000);
Înapoi la “Librarii Javascript”
Cine este conectat
Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 15 vizitatori