• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Połączenie JavaScript i PHP

VPS Starter Arubacloud
0 głosów
9,044 wizyt
pytanie zadane 25 sierpnia 2015 w JavaScript przez michal Mądrala (5,560 p.)
Mam pytanie, jak mozna wartość przechowywana w zmiennej JavaScript przekazac do zmiennej pliku php, zeby mozna bylo zapisac ją w bazie. Przypuszczam ze tutaj cos trzeba pokombinowac z ajax, tylko nie bardzo wiem jak. Czy to jest jakas skomplikowana operacja, czy masz szanse sie z tym uporać jesli nie mialem z tami czyms do czynienia ?

6 odpowiedzi

+3 głosów
odpowiedź 25 sierpnia 2015 przez Magicone Nałogowiec (45,100 p.)

prosty przykład z użyciem jQ, przyzwyczajaj się do używania JSON'a w transportowaniu danych. :-)

php:

<?php
	header('Content-Type: application/json;charset=utf-8');

	echo json_encode([
		'text' => 'wygenerowany przez serwer tekst'
	]);
?>

js:

$.getJSON('plik.php').done(function(e){
	console.log(e.text);
});

 

+1 głos
odpowiedź 25 sierpnia 2015 przez magdalenka120 Obywatel (1,520 p.)
Tutaj najlepiej zrobić to za pomocą Ajaxa, poczytaj sobie o łączeniu js i PHP w google, jest bardzo dużo przydatnych przykładów także spokojnie znajdziesz coś dla siebie :) I czy działasz na bazie, czy to może jakaś prosta aplikacja? Jeśli na bazie to znalazłam coś takiego:

http://www.w3schools.com/php/php_ajax_database.asp

Chodzi o coś takiego?
komentarz 25 sierpnia 2015 przez efiku Szeryf (75,160 p.)
Ajax, tak. Transportowanie danych JSONem tak, w3schools nie ;-)
Tu chodzi o :

Js (coś tam robi ze zmienną)  -> Request do  skryptu PHP  przez ajaxa -> Response z skryptu PHP.
komentarz 25 sierpnia 2015 przez magdalenka120 Obywatel (1,520 p.)
Cholercia, mój błąd :)
komentarz 25 sierpnia 2015 przez efiku Szeryf (75,160 p.)

Dobrze znalazłaś. Tylko my nie lubimy w3schools :D

komentarz 26 sierpnia 2015 przez magdalenka120 Obywatel (1,520 p.)
Ooo proszę, kurczę przyznam że nie korzystałam z tej strony jeszcze, ale widzę że nie jest godna uwagi, tak? :)
komentarz 26 sierpnia 2015 przez magdalenka120 Obywatel (1,520 p.)
Dziękuję Ci bardzo!! :D Teraz będę bardziej uważać na to, co polecam na forum i z czego mogłabym w przyszłości korzystać :D
0 głosów
odpowiedź 25 sierpnia 2015 przez michal Mądrala (5,560 p.)
Hmm widze ze to nie takie hop siup, bede musial jeszcze nieco sie doksztalcic.  Mam strone z javascriptem i w zmiennej  zapisane punkty z gry. Chcialbym poprostu nazwe urzytkownika pobrana za pomoza inputa oraz zawartość zmiennej z js przeslac do pliku php i zapisac w bazie.
komentarz 25 sierpnia 2015 przez efiku Szeryf (75,160 p.)
To akurat nic trudnego nie jest
Skrypt dla przykładu (pomijając wszelkie sesje etc ) przyjmuje tylko metodą POST tylko argumenty : userName , pointsCount.  To co przychodzi od użytkownika filtrujesz. Za pomocą PDO i bindowania zapisujesz w bazie. Coś na zasadzie tego co Magic pokazał.
Fragment js..
$.ajax({
            type: 'post',
            data: { userName: nameFromInput , pointsCount: points },
    // ....
komentarz 4 października 2015 przez michal Mądrala (5,560 p.)

Nie wiem czy dobrze rozumiem. 

$.ajax({
            type: 'post',
            data: { userName: nameFromInput , pointsCount: points }

});

Jeśli napisze to w ten sposób i zamiast nameFromInput wstawię zmienną, która bedzie zawierac podane przez urzytkownika imię, natomiast zamiast points zmienną ktora bedzie zawierała ilość zdobytych punktów, to moge to póżniej w php odebrac w ten sposób:

$_POST['nameFromInput']

$_POST['points'] 

komentarz 30 września 2017 przez laser Początkujący (330 p.)
Znalazłeś rozwiązanie swojego problemu?
0 głosów
odpowiedź 4 października 2015 przez Ehlert Ekspert (212,630 p.)

Kiedyś to robiłem. Masz dwie rozsądne opcje.

1. Ajax i zrobić to dynamicznie,

2. Zrobić pusty formularz, którego nie będziesz wysyłać submitem(ukryć go całkowicie) i wysyłasz poprzez get.

0 głosów
odpowiedź 4 października 2015 przez michal Mądrala (5,560 p.)
Postanowiłem odświeżyć temat ponieważ wpadł mi do głowy pewien pomysł.

Mianowicie czy jest taka możliwość ze utwoze dwa pola formularza input text, z czesgo pierwsze bedzie do podania imienia użytkownika, nadam mu atrybut name"imie" i odbiore w php za pomoca $_POST['imie'], natomiast drugie pole bedzie odrazu miało przypisaną wartość  zdobytych punktów w grze za pomocą js i bedzie ono nie aktywne"szare" tak żeby użytkownik nie mógł zmienićwartości np z atrybutem name"punkty" i odebrac je za pomocą $_POST['punkty'].

Teraz mam putanie czy jak tak zrobie bedzie to działało i bedzie to miało sens, oraz ewentualnie jak można zrobić taki input, który będzie miał już wartość której nie bedzie można zmienić?
komentarz 4 października 2015 przez Comandeer Guru (599,730 p.)

input[readonly] - z tym, że nadpisanie tego z poziomu przeglądarki jest banalnie proste. Punkty powinien przeliczać serwer, w każdym innym wypadku user może Cię oszukać.

komentarz 4 października 2015 przez michal Mądrala (5,560 p.)
http://epsilon-studio.net/osagame/

Chce do tej gry dorobic ranking wygranych. Punkty oblicza skrypt js, a ilość uzyskanych punktów chce przekazac do php. Ni orientuje sie zabardzo w tym Ajaxie i dlatego wymyslilem tak zeby wyslac do php jako input.
0 głosów
odpowiedź 4 października 2015 przez michal Mądrala (5,560 p.)
Podpowie mi ktoś czy dobrym tokiem myślenia podążam? :)

Podobne pytania

0 głosów
1 odpowiedź 581 wizyt
pytanie zadane 6 kwietnia 2021 w JavaScript przez jakubjordanek Obywatel (1,320 p.)
0 głosów
2 odpowiedzi 498 wizyt
0 głosów
0 odpowiedzi 129 wizyt
pytanie zadane 15 listopada 2020 w JavaScript przez ariva6152 Użytkownik (570 p.)

92,453 zapytań

141,262 odpowiedzi

319,088 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...