Pereiti prie turinio

JS elementų siuntimas į php failą


Rekomenduojami pranešimai

Labas, pirmą kartą tenka daryti elementų siuntimą Į , o ne IŠ PHP failo. Ir skaičiau, ir vienaip ir kitaip dariau, bet trūksta patirties šitame reikale. Dabar galvoju ar išvis eina taip daryti, galbūt reikia kurti atskirą kintamąjį išvis? anyway, gal kas mokės.

 

  var geocoder = new google.maps.Geocoder();  

    $(function() {
        $("#searchbox").autocomplete({

          source: function(request, response) {

         if (geocoder == null){
          geocoder = new google.maps.Geocoder();
         }
            geocoder.geocode( {'address': request.term }, function(results, status) {
              if (status == google.maps.GeocoderStatus.OK) {

                 var searchLoc = results[0].geometry.location;
              var lat = results[0].geometry.location.lat();
                 var lng = results[0].geometry.location.lng();
                 var latlng = new google.maps.LatLng(lat, lng);
                 var bounds = results[0].geometry.bounds;

                 geocoder.geocode({'latLng': latlng}, function(results1, status1) {
                     if (status1 == google.maps.GeocoderStatus.OK) {
                       if (results1[1]) {
                        response($.map(results1, function(loc) {
                       return {
                           label  : loc.formatted_address,
                           value  : loc.formatted_address,
                           bounds   : loc.geometry.bounds
                         }
                       }));
                       }
                     }
                   });
           }
             });
          },
          select: function(event,ui){
     var pos = ui.item.position;
     var lct = ui.item.locType;
     var bounds = ui.item.bounds;

     if (bounds){
      map.fitBounds(bounds);
     }
          }
        });
    });

 

virš šio kodo yra paprastas inputas, o čia paprasta auto fill fja. Pasirinkus rezultatą, į inputą įrašo pavadinimą. Bet man neužtenka per formą siųsti vien pavadinimo, man reikia ir koordinačių (latitude ir lontitude). Tai dabar galvoju, kaip įterpti:

 

$.ajax({
url: "post_search.php",
type: 'POST', 
       dataType: 'json',
       cache: false,
data: form_data,
success: function(data) {

 

kad man siųstų į tą failą reikalingus elementus, kadangi ten aš atliksiu visą veiksmą o čia parodysiu tiesiog nukreipimą. Manau supratot kas kaip

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Taip?

 

var send_value = {
form_data: values,
other_data: other_values
}

jQuery.post('post_search.php', {input_data: send_value}, function(result){ }, 'JSON');

 

O serveryje tesiog:

 

$input = $_POST['input_data'];
var_dump($input['form_data']);
var_dump($input['other_data']);

Redagavo apieviska
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Taip?

 

var send_value = {
form_data: values,
other_data: other_values
}

jQuery('post_search.php', {input_data: send_value}, function(result){ });

 

O serveryje tesiog:

 

$input = $_POST['input_data'];
var_dump($input['form_data']);
var_dump($input['other_data']);

taip, manau taip, bet kaip serveryje paskui išgauti lat ir langt nes, js kode net nemokėjau išskirti jų.. geriausia būtų pritaikyti tokį metodą:

 

var form_data = {
latitude:  $(latitude kintamasis).val(), 
       ajax: '1'
};

 

tik aš nežinau kaip išgauti tuos kintamuosius.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

taip, manau taip, bet kaip serveryje paskui išgauti lat ir langt nes, js kode net nemokėjau išskirti jų.. geriausia būtų pritaikyti tokį metodą:

 

var form_data = {
latitude:  $(latitude kintamasis).val(), 
       ajax: '1'
};

 

tik aš nežinau kaip išgauti tuos kintamuosius.

AJAX yra Asynchronous Javascript and XML, o tai reiskia kad viskas veikia asinchroniskas, paprasciau tarius atskirai, todel reikia naudoti callbackus. Kitaip tarent ajaxa reikia siusti tos funkcijos viduje, o ne atskirai.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

×
×
  • Pasirinkite naujai kuriamo turinio tipą...