![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 179 Pomógł: 0 Dołączył: 28.12.2014 Ostrzeżenie: (20%) ![]() ![]() |
Cześć, w jaki sposób mogę przez onclick='przyjmij();' które dodałem w buttonie przyjmowania zlecenia przekazać dane ze zmiennych do bazy mysql? Dodam że żadnego form nie mam w kodzie, jest to sam button.
Ten post edytował Salur 22.07.2015, 20:43:22 |
|
|
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
musisz te dane wyslac na serwer, np. przy pomocy AJAX
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 179 Pomógł: 0 Dołączył: 28.12.2014 Ostrzeżenie: (20%) ![]() ![]() |
Mógłbym prosić o jakiś przykład lub linka?
Ten post edytował Salur 22.07.2015, 21:26:10 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 371 Pomógł: 30 Dołączył: 14.04.2010 Ostrzeżenie: (0%) ![]() ![]() |
To powinno być pomocne:
http://api.jquery.com/jquery.ajax/ |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 155 Pomógł: 0 Dołączył: 6.07.2015 Ostrzeżenie: (10%) ![]() ![]() |
Kurczę, dalej nie rozumiem jak mogę naprzykład $zmienna zapisać do ajaxa po kliknięciu onclick i potem ją odebrać jakoś w pliku np. skrypt.php
Ten post edytował MeGusta 23.07.2015, 11:46:45 |
|
|
![]()
Post
#6
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
A ja nie rozumiem jak mozesz zakladac kilka kont, mimo ze to jest zabronione.
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 179 Pomógł: 0 Dołączył: 28.12.2014 Ostrzeżenie: (20%) ![]() ![]() |
Oto co udało mi się zrobić lecz nie działa, nie wyświetla id misji oraz nie przekazuje zmiennej do pliku przyjmij.php.
PS: Konto MeGusta jest mojego brata. Proszę tego nie traktować jako Multikonto. Nie zauwazyłem że jestem zalogowany na jego konto. Ten post edytował Salur 23.07.2015, 13:27:41 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 371 Pomógł: 30 Dołączył: 14.04.2010 Ostrzeżenie: (0%) ![]() ![]() |
A masz bibliotekę jquery?
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 179 Pomógł: 0 Dołączył: 28.12.2014 Ostrzeżenie: (20%) ![]() ![]() |
Tak. Mam w head strony zdefiniowane.
Dodam że wyświetla mi się w alert tylko to: Przyjęto misje o id: bez id ze zmiennej php. Chcę tylko odebrać zmienna z jednego plku php i przesłać ja do drugiego gdzie obsłuże zapytanie mysql. Ten post edytował Salur 23.07.2015, 16:25:38 |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 321 Pomógł: 55 Dołączył: 19.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
może pokaż więcej tego kodu gdzie generujesz te button oraz co masz w pliku /pages/przyjmij.php
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 179 Pomógł: 0 Dołączył: 28.12.2014 Ostrzeżenie: (20%) ![]() ![]() |
Główny plik:
I teraz chcę zmienną $id oraz $title przekazać do pliku przyjmij.php Przyjmij.php
Function : Ten post edytował Salur 23.07.2015, 16:34:10 |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 321 Pomógł: 55 Dołączył: 19.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
no to po kolei:
plik główny: korzystasz z jQuery więc w linii 18 do tego inputa dodaj atrybuty "data-id" i "data-title" tu masz ściągę https://api.jquery.com/jquery.data/ , lub dodaj wartości jako parametry przy wywołaniu funkcji przyjmijMisje plik Przyjmij.php w poniższym skrypcie js oczekujesz, że będzie zwrocona wartość "id" (linia 8) .... a w pliku Przyjmij.php nie zwracasz nic popraw i wstaw co zrobiłes Ten post edytował ctom 23.07.2015, 16:45:07 |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 179 Pomógł: 0 Dołączył: 28.12.2014 Ostrzeżenie: (20%) ![]() ![]() |
Nierozumiem za bardzo jak te atrybuty dodać. Czy tak?
|
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 321 Pomógł: 55 Dołączył: 19.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
Nierozumiem za bardzo jak te atrybuty dodać. Czy tak?
no nie do końca..... do funkcji jako parametr przekazujesz już wartości zmiennej $id, $ititle ... a atrybut w <input> to np. value .... gdzie wartością parametry value jest "Przyjmij" ... więc przejrzyj jeszcze raz link, któy Ci wczesniej dałem |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 179 Pomógł: 0 Dołączył: 28.12.2014 Ostrzeżenie: (20%) ![]() ![]() |
|
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 321 Pomógł: 55 Dołączył: 19.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
chyba się nie nadaje na "nauczyciela" ;-)
wstawienie wartości $id, $title do funkcji : Kod echo "<br><br><input type='submit' value='Przyjmij' onclick='przyjmijMisje($id, $title);'></div>"; wstawienie tych wartości jako atrybutów do <input> Kod echo "<br><br><input type='submit' value='Przyjmij' data-id='$id' data-title='$title' onclick='przyjmijMisje(this);'></div>"; Twoj funkcja powinna wyglądać tak: (opcja 1) Kod <script> function przyjmijMisje(paramId, paramTitle){ $.ajax({ method: "POST", url: "/pages/przyjmij.php", data: { id: paramId } }) .done(function( id ) { alert( "Przyjêto misje o id: " + id); }); } </script> (opcja 2) Kod <script>
function przyjmijMisje(el){ $.ajax({ method: "POST", url: "/pages/przyjmij.php", data: { id: $(el).data('id') } }) .done(function( id ) { alert( "Przyjêto misje o id: " + id); }); } </script> |
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 179 Pomógł: 0 Dołączył: 28.12.2014 Ostrzeżenie: (20%) ![]() ![]() |
Zrobiłem jak kazałeś, lecz teraz nadal się nie wyświetla id w alercie. Dodatkowo w kodzie strony jak zobaczyłem to atrybuty są uzupełnione id i tytuł więc zmienne php nie są puste.
W pliku przyjmij.php odebrałem id tak: $_POST['id']; i jest ono puste. KOD:
Ten post edytował Salur 23.07.2015, 17:44:41 |
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 3 Dołączył: 22.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
Dziwne, że Ci to nie działa.
Testowałem tak i wszystko śmiga.
plik przyjmij.php
Ten post edytował herbhouse666 23.07.2015, 18:50:32 |
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 179 Pomógł: 0 Dołączył: 28.12.2014 Ostrzeżenie: (20%) ![]() ![]() |
No właśnie dziwne, w alercie nawet mi id nie pokazuje, zdefiniowałem sobie obok jeszcze $id = '1'; i nadal to samo, nie pokazuje id.
|
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 321 Pomógł: 55 Dołączył: 19.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#21
|
|
Grupa: Zarejestrowani Postów: 179 Pomógł: 0 Dołączył: 28.12.2014 Ostrzeżenie: (20%) ![]() ![]() |
No właśnie, wystarczyło troszkę ruszyć głową. Dziękuję wszystkim za pomoc.
Teraz kwestia czy ja coś muszę w tej funkcji zmienić żeby wykonał sie ten skrypt php z pliku przyjmij.php? Bo okej, zmienna jest w tym pliku i zapytanie które sprawdziłem w mysql i nic nie dodaje do bazy. Ten post edytował Salur 23.07.2015, 19:22:11 |
|
|
![]()
Post
#22
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 3 Dołączył: 22.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
Daj cały kod to powiem Ci co masz żle.
|
|
|
![]()
Post
#23
|
|
Grupa: Zarejestrowani Postów: 179 Pomógł: 0 Dołączył: 28.12.2014 Ostrzeżenie: (20%) ![]() ![]() |
przyjmij.php
Funkcja z innego pliku:
Ten post edytował Salur 23.07.2015, 19:39:48 |
|
|
![]()
Post
#24
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 3 Dołączył: 22.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
Wszystko śmiga (Nie wiem jakiej biblioteki jQuery używasz, ale użyj tej z pliku):
kod inny plik: Kod <script src="//code.jquery.com/jquery-2.1.4.js" type="text/javascript" charset="utf-8"></script> <script> function przyjmijMisje(el){ $.ajax({ method: "POST", url: "pages/przyjmij.php", data: { id: $(el).data('id') } }) .done(function( id ) { alert( "Przyjęto misje o id: " + id); }); } </script> <?php $id = 1; echo "<br><br><input type='submit' value='Przyjmij' data-id='$id' data-title='$title' onclick='przyjmijMisje(this);'></div>"; ?> kod przyjmij.php Kod <?php
session_start(); ?> <?php print_r($_POST);//DOTESTU mysql_connect('localhost','root','') or//DOTESTU die('Serwer Error!');//DOTESTU mysql_select_db('ajax') or die('Database Error!');//DOTESTU $uzytkownik = $_SESSION['user'];//DOTESTU $user_id = 232;//DOTESTU $id = $_POST['id']; echo $_POST['id']; if ($_POST['id']) { $sql = "INSERT INTO `quest_postac`(`id`, `id_quest`, `id_gracz`, `status`, `ile`, `co`) VALUES ('','$id','$user_id','3','4','5')"; $query = mysql_query($sql); } ?> |
|
|
![]() ![]() |
![]() |
Aktualny czas: 18.09.2025 - 13:50 |