Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Przekazanie zmiennej
miamaji
post
Post #1





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 11.01.2009

Ostrzeżenie: (0%)
-----


Witam,
Mam problem pewnie dla was banalny mianowicie nie moge przekazać zmiennej z php do js.
Koj js:

Kod
function ajax(id) {
           $.ajax({
               type: "POST",
               url: "ajax.php",
               data: "value="+$('#'+id).val()+"&id="+id,
               success: function(msg){
                   alert( "wiadomosc " + msg );
               }
           });
       }

oraz kod php:

Kod
<?php echo '<textarea class="noticeDispatchingConsole" name="note" id="'.$lista["Record_Entry_ID"].'">'.$lista["Notice"].'
   </textarea>
   <img src="img/save.gif" style="float:left; padding: 7px 0px 0px 5px;" onclick="javascript:ajax(\''.$lista["Record_Entry_ID"].'\')"/>  
   <div class="saveOn'.$lista["Record_Entry_ID"].'" style="display:none; float:left; padding: 8px 0px 0px 20px;">Save...</div>';?>
Z góry dziękuje za pomoc,
Pozdrawiam
Go to the top of the page
+Quote Post
wookieb
post
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




A jak ten bład się objawia? Może pokaż wygenertowany kod html.


--------------------
Go to the top of the page
+Quote Post
miamaji
post
Post #3





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 11.01.2009

Ostrzeżenie: (0%)
-----


w alercie wyświetla tylko text: wiadomość bo plik ajax.php wogóle nie widzi tej zmiennej z textarea

ajax.php
Kod
<?php
$qdbpl=@mssql_connect("SBELB15002\NETIQ", "SupervisionLog", "!supervision!#log!");
@mssql_select_db("SupervisionLog", $qdbpl);
  mssql_query('UPDATE SupervisionLog SET Notice =\''.$_POST['value'].'\' WHERE Record_Entry_ID=\''.$_POST['id'].'\'');
  echo $_POST['value'];
?>
Go to the top of the page
+Quote Post
wookieb
post
Post #4





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




1) nie prosiłem przecież o kod ajax.php
2) w ajax.php daj sobie print_r($_POST);
3) jezeli bedzie pusta to zobacz sobie jeszcze print_r($_SERVER);
4) pokaż te kod html bo trzeba najpierw sprawdzić czy przekazujesz poprawnie dane do js.


--------------------
Go to the top of the page
+Quote Post
miamaji
post
Post #5





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 11.01.2009

Ostrzeżenie: (0%)
-----


Po zamianie na print_r($_POST) widzi id poprawnie natomiast value jako undefinded.
Nie zamiescilam kodu poniewaz jest tu mnustwo danych firmy których nie moge zamieszczac, a usuwanie ich do jutra by mi zajeło. Jak napisalam na samej górze js widzi znienną id aczkolwiek value nie. Zapewne zle ja przekazuje badz wcale jej nieprzekazuje i w zwiazku z tym prosze o pomoc.
Myslałam o czymś w ten deseń
Kod
<?php echo '<textarea class="noticeDispatchingConsole" name="note" id="'.$lista["Record_Entry_ID"].'">'.$lista["Notice"].'
   </textarea>
   <img src="img/save.gif" style="float:left; padding: 7px 0px 0px 5px;" onclick="javascript:ajax(\''.$lista["Record_Entry_ID"].'\', this.value)"/>  
   <div class="saveOn'.$lista["Record_Entry_ID"].'" style="display:none; float:left; padding: 8px 0px 0px 20px;">Save...</div>';?>



i prosze już nie krzycz tongue.gif

Ten post edytował miamaji 23.03.2009, 16:58:08
Go to the top of the page
+Quote Post
wookieb
post
Post #6





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Sprawdz sobie w js
Kod
alert($('#'+id).val());

A potem poprawnosc czy element o takim id rzeczywiscie istnieje

Ten post edytował wookieb 23.03.2009, 17:00:11


--------------------
Go to the top of the page
+Quote Post
miamaji
post
Post #7





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 11.01.2009

Ostrzeżenie: (0%)
-----


Sprawdzałam już tak i mam tresc alertu:
wiadomość: undefindet
Jak napisałam powyżej pewnie zmiennej nie potrafie przekazać.
Tak element o tym id rzeczywiście istnieje.
Kod
<textarea class="noticeDispatchingConsole" name="note" id="HD0000001859992" >cos</textarea>
<img src="img/save.gif" style="float:left; padding: 7px 0px 0px 5px;" onclick="javascript:ajax('HD0000001859992')" />


Ten post edytował miamaji 23.03.2009, 17:06:58
Go to the top of the page
+Quote Post
wookieb
post
Post #8





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




try
Kod
   <img src="img/save.gif" style="float:left; padding: 7px 0px 0px 5px;" onclick="javascript:ajax('.$lista["Record_Entry_ID"].')"/>


--------------------
Go to the top of the page
+Quote Post
miamaji
post
Post #9





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 11.01.2009

Ostrzeżenie: (0%)
-----


niestety
Go to the top of the page
+Quote Post
wookieb
post
Post #10





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Cytat(miamaji @ 23.03.2009, 17:14:01 ) *
niestety


No tak to raczej nei bo dopiero teraz zauwazylem ze to jest id tekstowe sad.gif
Kod
<img src="img/save.gif" style="float:left; padding: 7px 0px 0px 5px;" onclick="javascript:ajax(\''.$lista["Record_Entry_ID"].'\')"/>

Wywaliłem to this.value
I potem w js na poczatku
Kod
alert($('#'+id).length+' - '+$('#'+id).val());

I wklej co zostanie wyświetlone.

Ten post edytował wookieb 23.03.2009, 17:30:50


--------------------
Go to the top of the page
+Quote Post
miamaji
post
Post #11





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 11.01.2009

Ostrzeżenie: (0%)
-----


0 - undefined
btw. bardzo dziękuję za pomoc.

jak podaje stałe coś to wszystko ładnie działa data: "id="+id+"&value=b", może jest jakiś inny sposób żeby js zobaczyło: formularz, poczta polska jakkolwiek ... sad.gif

Ten post edytował miamaji 23.03.2009, 17:27:02
Go to the top of the page
+Quote Post
wookieb
post
Post #12





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Czyli elementu o podanym id nie ma. Z tego wychodzi. Sprawdź czy też id się czasem nigdzie nie dubluje w całym dokumencie html. I upewnij się na 100% ze element o takim id istnieje bo ze skryptu jednoznacznie wynika, że nie.
Poza tym może wklejają się jakieś niewidoczne białe znaki więc przed twoim kodem wyświetlającym dodaj
  1. <?php
  2. $lista["Record_Entry_ID"]=trim($lista["Record_Entry_ID"]);
  3. ?>


I jeszcze jedno... Ja głupi nie zauwazyłem
Kod
<img src="img/save.gif" style="float:left; padding: 7px 0px 0px 5px;" onclick="ajax(\''.$lista["Record_Entry_ID"].'\')"/>

to "java script:" było niepotrzebne ale nie wiem czy to ma jakies wieksze znaczenie biggrin.gif

Ten post edytował wookieb 23.03.2009, 17:31:00


--------------------
Go to the top of the page
+Quote Post
miamaji
post
Post #13





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 11.01.2009

Ostrzeżenie: (0%)
-----


Bardzo bardzo ale to bardzo dziękuje biggrin.gif stawiam piwo smile.gif

ole ole ole ole UDAŁO SIĘ exclamation.gif UDAŁO SIĘ exclamation.gif tongue.gif

chodziło o zbędne spacje usunięte funkcją trim

Ten post edytował miamaji 24.03.2009, 16:19:48
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 23:55