Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [jquery]przekazanie zmiennej do php
Forum PHP.pl > Forum > XML, AJAX
trucksweb
jak w jquery przekazac zmienna metoda POST lub GET do skryptu PHP, ktory nastepnie powinien za pomoca tej wartosci wykonac zapytanie SQL i dalej wyswietlic wynik na stronie ?

utknalem na czyms takim:
  1. <?php
  2. $(document).ready(function(){
  3. $('.depot').click(function () {
  4.  
  5. var id = $(this).attr("rel");
  6.  
  7. $.get("index.php", {id_mag: id});
  8.  
  9. $.ajax({
  10.  'url': 'index.php',
  11.  'data': {'id_mag': id},
  12.  'dataType': 'json',
  13.  'type': 'POST', // GET
  14. });
  15.  
  16. });
  17.  
  18.  
  19. });
  20. ?>


o ile w konsoli firebuga dodaje do adresu wartosc id_mag (gdy wezme GET) to nie wiem jak tego uzyc w php
nospor
$_GET['id_mag']

ps: a po co po $.get slesz jeszcze $.ajax ?
trucksweb
bo sprawdzalem, ktore zadziala
-wiem ze oba dzialaja

ale nie umiem odczytac itej zmiennej na stronie
nospor
jakiej itej ?
$_GET['id_mag'] nie dziala?
trucksweb
-tej


no nie dziala

plik index.php
  1. <?php
  2. <script>
  3. $(document).ready(function(){
  4. $('.depot').click(function () {
  5.  
  6. var id = $(this).attr("rel");
  7. //alert(id);
  8. $.get("index.php", {id_mag: id});
  9.  
  10.  
  11.  
  12. });
  13.  
  14.  
  15. });
  16. <script>
  17.  
  18.  
  19. i gdzies tam: echo $_GET['id_mag'];
  20. ?>
nospor
no i czego oczekujesz po tym kodzie?

echo $_GET.... wykona ci sie dla $.get.
te echo ci sie nie wyswietli na stronie. Masz jest sobie obsluzyc w $.get
Skoro masz firebuga to bedziesz widzial czy zadanie przez $.get ci cos zwrocilo czy nie.

A tu masz przyklady $.get
http://docs.jquery.com/Ajax/jQuery.get#urldatacallbacktype
przejrzyj je bo chyba nie wiesz jak to dziala
trucksweb
tyle to ja wiem, ze $_GET wykona sie dla $.get ,

wlasnie pytam sie jak je potem obsluzyc zeby zadzialalo
nospor
przeciez ci podalem linka....
Kod
$.get("test.php", function(data){
  alert("Data Loaded: " + data);
});

Sobie dostosuj.
trucksweb
kurcze dry.gif

robie prawie dokladnie to samo co tutaj:

http://www.ryancoughlin.com/2008/11/04/use...to-submit-form/

bo sie wnerwilem na $.get

i dalej nie moge odczytac zmiennej $_GET czy $_POST
nospor
Cytat
prawie dokladnie
No wlasnie...


Siedzisz na forum 4 lata i jeszczez z taką pierdułą masz problem? Tu masz w pelni dzialający kod:
index.html
  1. <script type="text/javascript" src="jquery.js"></script>
  2. <script type="text/javascript">
  3. function klik(){
  4. var id = '5';
  5. $.get("test.php", {id_mag: id}, function(data){
  6. alert('Twoje id: '+data);
  7. });
  8. }
  9. </head>
  10. <a href="#" onclick="klik();return false;">Kliknij mnie</a>
  11. </body>
  12. </html>


test.php:
  1. <?php
  2. echo $_GET['id_mag'];
  3. ?>
trucksweb
blinksmiley.gif
no u mnie nie dziala..

  1. <script type="text/javascript" src="jquery.js"></script>
  2. <script type="text/javascript">
  3. function klik(){
  4. var id = '5';
  5. $.get("index2.php", {id_mag: id}, function(data){
  6. //alert('Twoje id: '+data);
  7. });
  8. }
  9. </head>
  10. <a href="#" onclick="klik();return false;">Kliknij mnie</a> tu<?php echo $_GET['id_mag']; ?>
  11. </body>
  12. </html>


i taki efekt chce osiagnac- klikam i na tej samej stronie pojawia sie $_GET['id_mag']
nospor
o zgrozo....
Dostales ode mnie dzialajace skrypty. Wykonales je doslownie?
Wykonaj to co dostales doslownie bez zadnych swoich "poprawek" i nie pisze ze nie dziala!!!



Co do Twoich modyfikacji:
<a href="#" onclick="klik();return false;">Kliknij mnie</a> tu<?php echo $_GET['id_mag']; ?>
ty wogole tego nie czaisz. Przeczytaj kilka kursów o ajax bo nie masz zielonego pojecia o idei jego dzialania.

Twoje echo $_GET['id_mag'] w glownym skrypcie sie nie wykona, nie przy glownym ządaniu. zrozum to. Nie mieszaj pojec, tylko wykonaj to co ci dalem a potem poczytaj jeszcze o tym.

edit: a jak te id chcesz mie "tu" to zrob tak:

  1. <script type="text/javascript" src="jquery.js"></script>
  2. <script type="text/javascript">
  3. function klik(){
  4. var id = '5';
  5. $.get("test.php", {id_mag: id}, function(data){
  6. $('#tu').html(data);
  7.  
  8. });
  9. }
  10. </head>
  11. <a href="#" onclick="klik();return false;">Kliknij mnie</a> <div id="tu"></div>
  12. </body>
  13. </html>
trucksweb
ok, zapisuje mi do bazy ta zmienna,

Zrobilem takze selecta z bazy i teraz chcialbym wyswietlic w pliku index.php zwrocone rekordy,

znaczy tak:
  1. <?php
  2. if($_GET['id_mag'] != '')
  3. {
  4.  $id = intval($_GET['id_mag']);
  5. $categories = $ob->getCat(id);
  6.  
  7.  return $categories;
  8. }
  9. ?>


chcialbym wlasnie wyswietlic zawartosc zmiennej $categories
Rafal Filipek
Zupelnie nie czytasz tego co ci ludzie piszą. Przecież nospor 3 posty wyżej napisał wyraźnie w pliku php ECHO a nie RETURN.
trucksweb
fakt nie zauwazylem tego echo dry.gif

ale ok, cos juz dziala, jednak...

plik index.php
  1. <script type="text/javascript" src="http://localhost/xampp/system2/jquery.js"></script>
  2. <script type="text/javascript" src="http://localhost/xampp/system2/p.js"></script><?php
  3. if($_GET['id_mag'] != '')
  4. {
  5.  $categories='gggggg';
  6. }
  7. ?>
  8. <a href="#" class="depot" rel="2" />222</a>
  9. <table class="sortable" cellspacing='0' cellpadding='0' border="1" width="100">
  10.    <thead>
  11.      <tr>
  12.          <th class="sort-alpha" width="720">Kategoria</th>
  13.      </tr>
  14.    </thead>
  15.    <tbody>
  16.      <tr>
  17.        <td><a href="#" rel="<?php echo $categories;?>" /><span id="id"><?php echo $categories;?></span></a></td>
  18.      </tr>
  19.    </tbody>
  20.  </table>


plik p.js

  1. <?php
  2. $(document).ready(function(){
  3. $('.depot').click(function () {
  4.  
  5. var id = $(this).attr("rel");
  6.  
  7. $.get("index2.php", {id_mag: id}, function(data){
  8.  alert(data);
  9.  $('.sortable').html(data);
  10. });
  11.  
  12. });
  13. });
  14. ?>


wynik sie laduje ale,
http://www.fotosik.pl/pokaz_obrazek/c256930634dd002d.html

w jaki sposob mozna o ile mozna, zaladowac ta strone tak, aby odswiezylo mi tylko tabelke class="depot2" ?a nie cala strone. Bo teraz 2x dopisuje mi link
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-2025 Invision Power Services, Inc.