Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [ajax] tablice do php
blokern
post 26.01.2022, 15:56:27
Post #1





Grupa: Zarejestrowani
Postów: 107
Pomógł: 0
Dołączył: 27.02.2008

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


hej mam taki obiekt
  1. [
  2. {
  3. "id": "3",
  4. "name": "in_1",
  5. "value": "25"
  6. },
  7. {
  8. "id": "10",
  9. "name": "in_1",
  10. "value": "25"
  11. },
  12. {
  13. "id": "15",
  14. "name": "in_1",
  15. "value": "25"
  16. }
  17. ]


w jaki sposob prawidlowo wyslac to do PHP uzywajac ajax?

  1. $.ajax({
  2. url: "t.php",
  3. type: "GET",
  4. data: { tablica: zmiany },
  5. success : function(data) {
  6. //var dane = $.parseJSON(data);
  7. console.log("ok");
  8.  
  9. var dane = $.parseJSON(data);
  10. console.log(dane);
  11.  
  12.  
  13. },
  14. error : function() {
  15.  
  16. }
  17. })


wyswietla sie blad

jak bezposrednio w PHP tablice przypisze do zmiennej $q a nastepnie daje

$q = (json_decode($q));

foreach ($q as $row){
echo $row->id;
}


to wyswietla kolejno idki z tablicy wiec zakladam, ze zle wysylam tablice do phpa

na froncie tworze tablice
  1. zmiany = [];

a potem dodaje do niej

  1. zmiany.push({
  2. id: apartament,
  3. name: name,
  4. value: value
  5. });



z gory dziekuje za pomoc



--------------------
www.Opiekuj.pl
Go to the top of the page
+Quote Post
nospor
post 26.01.2022, 15:59:26
Post #2





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6289
Dołączył: 27.12.2004




Nie GET a POST.
A po drugie jak dostajesz blad to nie logiczne jest by ten blad nam podac?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
blokern
post 26.01.2022, 16:29:48
Post #3





Grupa: Zarejestrowani
Postów: 107
Pomógł: 0
Dołączył: 27.02.2008

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


  1. $.ajax({
  2. url: "t.php",
  3. type: "POST",
  4. dataType:"JSON",
  5. data: { tablica: zmiany },
  6.  
  7. success : function(data) {
  8.  
  9. var dane = $.parseJSON(data);
  10. console.log(dane);
  11.  
  12. },
  13. error : function() {
  14.  
  15. console.log('error1');
  16.  
  17. }
  18. })


zmienilem na post
dodalem jeszcze dataType
i teraz console wyswietlia mi error1

a to moj php

  1. include('inc/db.php');
  2.  
  3. $a = '[
  4. {
  5. "id": "3",
  6. "name": "in_1",
  7. "value": "25"
  8. },
  9. {
  10. "id": "10",
  11. "name": "in_1",
  12. "value": "25"
  13. },
  14. {
  15. "id": "15",
  16. "name": "in_1",
  17. "value": "25"
  18. }
  19. ]';
  20.  
  21. if(isset($_POST["tablica"])){
  22. $q = $_POST["tablica"];
  23.  
  24.  
  25. if(isset($q)){
  26.  
  27. $q = (json_decode($q));
  28.  
  29. foreach ($q as $row){
  30.  
  31. $sql = "INSERT INTO owners_case (id, apartament_id, name, value)
  32. VALUES ('', '$row->id', '$row->id', '$row->id')";
  33.  
  34. if ($conn2->query($sql) === TRUE) { }
  35.  
  36. }
  37. echo json_encode([
  38. 'komunikat' => 'OK OK OK OK OK OK OK '
  39. ]);
  40.  
  41. }
  42. else{
  43. echo json_encode([
  44. 'komunikat' => 'blad z php'
  45. ]);
  46. }
  47.  
  48. }
  49.  


jak zamienie

$q = $_POST["tablica"];

na

$q = $a to zaczyna dzialac czyli cos pewnie zle wysylam obiekt do php



--------------------
www.Opiekuj.pl
Go to the top of the page
+Quote Post
nospor
post 26.01.2022, 16:33:28
Post #4





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6289
Dołączył: 27.12.2004




skoro uzywasz konsoli, to zajrzyj do zakladki NETWORK/SIEC i zobacz co DOKLADNIE zwraca ci request.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
blokern
post 26.01.2022, 16:38:34
Post #5





Grupa: Zarejestrowani
Postów: 107
Pomógł: 0
Dołączył: 27.02.2008

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


nie wiem na co zwrocic uwage. mam liste plikow ktore sie wykonaly a t.php ma status 200
juz przestalo mi sypac bledami na czerwono i wykonuje sie

  1. error : function() {
  2.  
  3. console.log('error1');
  4.  
  5. }


--------------------
www.Opiekuj.pl
Go to the top of the page
+Quote Post
nospor
post 26.01.2022, 16:46:59
Post #6





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6289
Dołączył: 27.12.2004




poprostu zobacz co DOKLADNIE zwraca ci twoj ajax w zakladce NETWORK. Te twoje t.php. nie mowie status, tylko o BODY

Pozatym masz bledy php
nie
'$row->id'

a:
'{$row->id}'

Ewentualnie dodaj jeszcze

print_r($_POST);
na poczatku t.php i potem sprawdz NETWORK


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
blokern
post 26.01.2022, 18:21:38
Post #7





Grupa: Zarejestrowani
Postów: 107
Pomógł: 0
Dołączył: 27.02.2008

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


dodałem jeszcze print_r($q);
  1. Array ( [0] => Array ( [id] => 3 [name] => in_1 [value] => 123 ) [1] => Array ( [id] => 10 [name] => in_1 [value] => 123 ) [2] => Array ( [id] => 15 [name] => in_1 [value] => 123 ) )
  2. Warning: json_decode() expects parameter 1 to be string, array given in D:\laragon\www\crm\t.php on line 32
  3.  
  4. Warning: Invalid argument supplied for foreach() in D:\laragon\www\crm\t.php on line 34
  5. {"komunikat":"OK OK OK OK OK OK OK "}


Ten post edytował blokern 26.01.2022, 18:24:13


--------------------
www.Opiekuj.pl
Go to the top of the page
+Quote Post
nospor
post 26.01.2022, 18:35:50
Post #8





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6289
Dołączył: 27.12.2004




No komunikat bledu chyba dosc wyrazny jest...

Wywal to
$q = (json_decode($q));
jest totalnei zbedne


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
blokern
post 26.01.2022, 18:58:53
Post #9





Grupa: Zarejestrowani
Postów: 107
Pomógł: 0
Dołączył: 27.02.2008

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


Jak najbardziej. Bardzo dziekuje za pomoc i teraz wiem ze jest taka zakladka jak network gdzie najpierw moge poszukac bledu smile.gif


--------------------
www.Opiekuj.pl
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 Wersja Lo-Fi Aktualny czas: 28.03.2024 - 09:05