Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak pobrać zmienną $_GET do jQuery?
Forum PHP.pl > Forum > XML, AJAX > AJAX
mskiba
Witam, mam problem, w pliku php mam link:

  1. <?php
  2.  
  3. <a href=\"?value=1&id=1\" class=\"status_value\"\"></a>
  4. ";
  5.  


plik .js

i tu mam problem, jak do:
var id i var value wstawić wartość zmiennej $_GET['id'[ i $_GET['value']

  1.  
  2. $(document).ready(function() {
  3. $("a.status_value").click(function() {
  4. var id = // jak mam tu przekazac zmienną $_GET['id']
  5. var value = // jak mam tu przekazac zmienną $_GET['value']
  6. //alert(tresc);
  7. $.ajax({
  8. url: "skrypt.php",
  9. type: "POST",
  10. data: 'id='+ id + '&value=' + value + '&akcja=status',
  11. success: function(msg) {
  12. $("#wynik").text(msg);
  13. },
  14. error: function() {
  15. $("#wynik").text("Wystąpił błąd podczas komunikacji AJAX");
  16. }
  17. });
  18. return false;
  19. });
  20. });
  21.  


Cała reszta działa poprawnie, bo gdy podstawie wartosci stale to w bazie sie UPDATE-ują wink.gif

Z góry dziękuję za pomoc.
freemp3
Wystarczy trochę poszukać:
http://stackoverflow.com/questions/901115/...s-in-javascript
mskiba
Coś nie bardzo mi to idzie, ponieważ nie rozumiem tych funkcji to je przeklejam, aeefektu nie ma :/

Chcialem zaczerpnac rozwiazanie z innego przykladu w ktory to dziala, ale u mnie tez kapa :/

dodalem o znacznika

  1. <a id="edit_1_1">


a w pliku .js

  1. var id = $(this).attr('id').split("_");
  2. id = id[1];
  3. value = id[2];


ale dalej nie dziala :/ Jakies sugestie?
freemp3
Użyj atrybutu data:
Kod
<a data-id="1" data-value="wartosc">

i później w js:
Kod
var id = $(this).data('id');
var value = $(this).data('value');
mskiba
Dokładnie o to chodzilo wink.gif Dziękuję bardzo wink.gif

Teraz jeszcze jedna kwestia:

http://web2you.pl/jQuery/

Po kliknieciu z dany status w bazie zmieniaja sie wartosci, teraz pozostaje kewstia wyswietlenie aktualnego statusu bez przeladowania strony.

index.php

  1. <?php
  2. include("db/connect_db.php");
  3.  
  4. $sql = mysql_query("SELECT * FROM dba_users_access");
  5. while($row = mysql_fetch_array($sql))
  6. {
  7.  
  8. if($row['status'] == 0)
  9. {
  10. $users_show_access_img="
  11. <a href=\"?value=1&id=".$row['id']."\" class=\"status_value\" data-id=".$row['id']." data-value=\"1\"\">
  12. <img src=images/icon_status_green_light.gif style=\"float: left; padding: 2px;\"></a>
  13. <img src=images/icon_status_red.gif style=\"float: left; padding: 2px;\">
  14. ";
  15. }
  16. elseif($row['status'] == 1)
  17. {
  18. $users_show_access_img.="
  19. <img src=images/icon_status_green.gif style=\"float: left; padding: 2px;\">
  20. <a href=\"?value=0&id=".$row['id']."\" class=\"status_value\" data-id=".$row['id']." data-value=\"0\"\">
  21. <img src=images/icon_status_red_light.gif style=\"float: left; padding: 2px;\"></a>
  22. ";
  23. }
  24. else
  25. {
  26. $users_show_access_img.="
  27. <a href=\"?value=1&id=".$row['id']."\" class=\"status_value\" data-id=".$row['id']." data-value=\"1\"\">
  28. <img src=images/icon_status_green_light.gif style=\"float: left; padding: 2px;\"></a>
  29. <img src=images/icon_status_red.gif style=\"float: left; padding: 2px;\">
  30. ";
  31. }
  32.  
  33. echo $users_show_access_img."<br />";
  34.  
  35.  
  36. }
  37.  
  38. ?>


plik.js

  1. $(document).ready(function() {
  2. $("a.status_value").click(function() {
  3. var id = $(this).data('id');
  4. var value = $(this).data('value');
  5. //alert(tresc);
  6. $.ajax({
  7. url: "skrypt.php",
  8. type: "POST",
  9. data: 'id='+ id + '&value=' + value + '&akcja=status',
  10. success: function(msg) {
  11.  
  12. },
  13. error: function() {
  14. $("#wynik").text("Wystąpił błąd podczas komunikacji AJAX");
  15. }
  16. });
  17. return false;
  18. });
  19. });
  20.  


skrypt.php

  1. <?php
  2. include("db/connect_db.php");
  3.  
  4. $akcja = $_POST['akcja'];
  5. switch($akcja) {
  6. case "status":
  7. $id = addslashes(mysql_escape_string($_POST['id']));
  8. $value = addslashes(mysql_escape_string($_POST['value']));
  9. mysql_set_charset("utf8");
  10. mysql_query("UPDATE dba_users_access SET status=$value WHERE id=$id");
  11.  
  12. break;
  13. }
  14. ?>


Z góry dzięki za naprowadzenie wink.gif

Poradziłem sobie z wyświetleniem statusu, ale jak zwykle coś nie śmiga, po przeladowaniu strony jak klikne na zmiane statusu to go zmienia i zmienia ikone, ale jak chce z powrtem zmienic status to juz jest problem, po kliknieciu w bazie sie zmienia, ale ikona pozostaje bez zmian.

http://web2you.pl/jQuery/dba_users/status.php

.js

  1. $(document).ready(function() {
  2. $(this).on('click', 'a.status_value', function() {
  3. var id = $(this).data('id');
  4. var value = $(this).data('value');
  5. //alert(tresc);
  6. $.ajax({
  7. url: "scripts/dba_change_status.php",
  8. type: "POST",
  9. data: 'id='+ id + '&value=' + value + '&akcja=status',
  10. success: function(msg) {
  11. $('#select-user').load('db_select_users.php');
  12.  
  13. if (value == 1)
  14. {
  15. $("a#1").attr('href', '?value=1&id='+id+'');
  16. $("a#0").attr('href', '?value=0&id='+id+'');
  17. $("img.gl").attr('src', 'images/icon_status_green.gif');
  18. $("img.r").attr('src', 'images/icon_status_red_light.gif');
  19. }
  20. else if (value == 0)
  21. {
  22. $("a#1").attr('href', '?value=1&id='+id+'');
  23. $("a#0").attr('href', '?value=0&id='+id+'');
  24. $("img.g").attr('src', 'images/icon_status_green_light.gif');
  25. $("img.rl").attr('src', 'images/icon_status_red.gif');
  26. }
  27. },
  28. error: function() {
  29. $("#wynik").text("Wystąpił błąd podczas komunikacji AJAX");
  30. }
  31. });
  32. return false;
  33. });
  34. });


.php

  1. <?php
  2. include("db/connect_db.php");
  3. $sql = mysql_query("SELECT * FROM dba_users WHERE id='3'");
  4. while($row = mysql_fetch_array($sql))
  5. {
  6.  
  7. if($row['status'] == 0)
  8. {
  9. $users_show_access_img="
  10. <a id=\"1\" href=\"\" class=\"status_value\" data-id=".$row['id']." data-value=\"1\"\">
  11. <img class=\"gl\" src=images/icon_status_green_light.gif style=\"float: left; padding: 2px;\"></a>
  12. <a id=\"0\" href=\"\" class=\"status_value\" data-id=".$row['id']." data-value=\"0\"\">
  13. <img class=\"r\" src=images/icon_status_red.gif style=\"float: left; padding: 2px;\"></a>
  14. ";
  15. }
  16. elseif($row['status'] == 1)
  17. {
  18. $users_show_access_img.="
  19. <a id=\"1\" href=\"\" class=\"status_value\" data-id=".$row['id']." data-value=\"1\"\">
  20. <img class=\"g\" src=images/icon_status_green.gif style=\"float: left; padding: 2px;\"></a>
  21. <a id=\"0\" href=\"\" class=\"status_value\" data-id=".$row['id']." data-value=\"0\"\">
  22. <img class=\"rl\" src=images/icon_status_red_light.gif style=\"float: left; padding: 2px;\"></a>
  23. ";
  24. }
  25. else
  26. {
  27. $users_show_access_img.="
  28. <a id=\"1\" href=\"\" class=\"status_value\" data-id=".$row['id']." data-value=\"1\"\">
  29. <img class=\"gl\" src=images/icon_status_green_light.gif style=\"float: left; padding: 2px;\"></a>
  30. <a id=\"0\" href=\"\" class=\"status_value\" data-id=".$row['id']." data-value=\"0\"\">
  31. <img class=\"r\" src=images/icon_status_red.gif style=\"float: left; padding: 2px;\"></a>
  32. ";
  33. }
  34.  
  35. echo $users_show_access_img."<br />";
  36.  
  37.  
  38. }
  39. ?>
tikky
Zerknij na ten przykład. Tutaj opisana jest komunikacja z AJAX do PHP aby pobrać dane z bazy i wyświetlić na stronie bez potrzeby przeładowania:
http://www.w3schools.com/php/php_ajax_database.asp

Myślę, że na tej podstawie będziesz w stanie zrobić to co potrzebujesz.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.