DevProTalk

Forumi IT profesionalaca
web development, web design, e-business, SEO


Idite nazad   DevProTalk > Web development i web aplikacije > (X)HTML, JavaScript, DHTML, XML, CSS
Beach Wedding Dresses - Looking for the Wedding Dress? Here, 1dress.co.uk stunning collection of beach wedding dresses is just what you are looking for.
charles wang

(X)HTML, JavaScript, DHTML, XML, CSS Client scripting tehnologije, Dynamic HTML, Cascading Stylesheets, XML i standardi

 
 
Alati teme Način prikaza
Staro 03. 11. 2014.   #1
stanke
član
Certified
 
Datum učlanjenja: 06.09.2012
Poruke: 64
Hvala: 0
244 "Hvala" u 10 poruka
stanke is on a distinguished roadstanke is on a distinguished roadstanke is on a distinguished road
Default Ajax problem sa json-om

Pozdrav imam jedan problem ajax mi ne vraca neke podatke preko jsona
u PHP imam kod

public static function activeButton($sess_id) {
if(isset($_SESSION['basket'][$sess_id])) {
$id = 0;
$label = "Remove from basket";
} else {
$id = 1;
$label = "Add to basket";
}

$out = "<a href=\"#\" class=\"add_to_basket";
$out .= $id == 0 ? " red" : null;
$out .= "\" rel=\"";
$out .= $sess_id."_".$id;
$out .= "\">{$label}</a>";
return $out;
}

i on daje link <a class="add_to_basket" rel="3_1" href="#">Add to basket</a>
3 je id iz baze a 1 je vrednost koja sluzi za menjanje imena linka ako je 1 onda je Add to basket ako je 0 onda je Remove from basket.
$sess_id je id iz baze za odgovarajuci proizvod.
To sve radi perfektno. Problem je u Ajax preko json-a ne mogu da dobijem id proizvoda npr. 3_1 ne vraca mi 3 uopste kod je sledeci:

$(document).ready(function (){

function refreshSmallBasket(){
$.ajax({
url: "mod/basket_small_refresh.php",
dataType: 'json',
success: function (data) {
//foreach data arrayk is key v is value
$.each(data, function (k, v){
//in basket_left id for each classes for reffering index k and span filling with value v
$("#basket_left ." + k + " span").text(v);
});
},
error: function(xhr, status, errorThrown) {
//alert("An error has occurred");
console.log("Proble Load");
console.log("Error: " + errorThrown);
console.log("Status: " + status);
console.dir(xhr);
}
});
}

//check that class exist i our case add_to_basket class
if($(".add_to_basket").length > 0){
//on click in this class add_to_basket
$(".add_to_basket").click(function(){
//triiger is add_to_basket class
var trigger = $(this);
//parma is add_to_basket basket class on click and get attribut rel our rel is exapmple re=2_1
var param = trigger.attr("rel");
console.log("rel is " + param);
//this rel split with _ then we have 2 and 1
var item = param.split("_");
console.log("Split rel is " + item);


//add ajax
$.ajax({
type: 'POST',
url: 'mod/basketprod.php',
dataType: 'json',
data: ({ id: item[0], job: item[1] }),
success: function (data){
//create new rel example rel=2_0
var new_id = data.id + '_' + data.job;
console.log("Id is " + data.id);
console.log("rel is " +data.job);
console.log("new rel is " + new_id);
//if id different then job
if(data.job != item[1]){
//if job 0
if(data.job == 0){
//add to add_to_basket class new rel with new id
trigger.attr("rel", new_id);
//add new text
trigger.text("Remove From Basket");
//add class red
trigger.addClass("red");

}
else{
trigger.attr("rel", new_id);
trigger.text("Add to basket");
trigger.removeClass("red");
}
refreshSmallBasket();
}
},
error: function(xhr, status, errorThrown) {
//alert("An error has occurred");
console.log("Proble Load");
console.log("Error: " + errorThrown);
console.log("Status: " + status);
console.dir(xhr);
}
});
//not loading link
return false;
});
}
});

U drugom po redu ajax-u, json ne vraca id. iznad ovog ajaxa ima kod za umizanje rel
var param = trigger.attr("rel"); dobijem tacnu vrednos 3_1, u ajaxu razdvojim rel var new_id = data.id + '_' + data.job; i dobijem 3,1 a kad hocu da spojim rel ponovo var new_id = data.id + '_' + data.job; onda dobijem rel=undefined_0, id ne mogu nikako da vratim kako bi uzeo proizvod iz baze.
Molim za pomoc

Poslednja izmena od stanke : 03. 11. 2014. u 13:27.
stanke je offline   Odgovorite uz citat
 


Alati teme
Način prikaza

Pravila pisanja
Možete ne započinjati nove teme
Možete ne slati odgovore
Možete ne slati priloge
Možete ne izmeniti svoje poruke
vB kôd je Uključen
Smajliji su Uključen
[IMG] kod je Uključen
HTML kôd je Isključen
Pogledajte forum


Vreme je GMT +2. Trenutno vreme je 21:39.


Blogodak - Domaci blogovi na jednom mestu Caught in a web - web dev blog
Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.
Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.