Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Problem z zapytaniem
e-konrad
post 5.10.2013, 11:42:32
Post #1





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 11.12.2008

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


  1. $query = mysql_query("SELECT count(p.category) AS ile, p.category, d.month FROM dane d INNER JOIN phone ph ON ph.phone=d.telefon INNER JOIN phonebook p ON p.id=ph.object_id WHERE d.month='".$month."' AND d.year='".$year."' GROUP BY p.category");
  2. while($show = mysql_fetch_assoc($query)){
  3. echo $show['category'].$show['ile'].$show['month']."<br />";
  4.  
  5. mysql_query("UPDATE stats SET category='".$show['category']."', month='".$show['month']."', ile='".$show['ile']."', year='".$year."' WHERE month='$show['month']' AND year='".$year."'");
  6. }


Powyższe zapytanie wyświetla wyniki poprawnie, ale mam problem z przekopiowaniem wyników do innej tabeli. Dodaje mi się ostatni rekord powielony tyle razy ile jest wyników.
Go to the top of the page
+Quote Post
nospor
post 5.10.2013, 11:48:43
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Jestes pewien ze to jest dokladnie kod jaki masz? Bo ten kod nie ma prawa dzialac, gdy jest to PARSE ERROR


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

"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
e-konrad
post 5.10.2013, 12:08:36
Post #3





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 11.12.2008

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


Faktycznie, brakowało "" przy month w update. Poprawiony kod
  1. $query = mysql_query("SELECT count(p.category) AS ile, p.category, d.month FROM dane d INNER JOIN phone ph ON ph.phone=d.telefon INNER JOIN phonebook p ON p.id=ph.object_id WHERE d.month='".$month."' AND d.year='".$year."' GROUP BY p.category");
  2. while($show = mysql_fetch_assoc($query)){
  3. echo $show['category'].$show['ile'].$show['month']."<br />";
  4.  
  5. mysql_query("UPDATE stats SET category='".$show['category']."', month='".$show['month']."', ile='".$show['ile']."', year='".$year."' WHERE month='".$show['month']."' AND year='".$year."'");
  6. }

Go to the top of the page
+Quote Post
nospor
post 5.10.2013, 12:35:04
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




NO i gdzie robisz to kopiowanie? Bo jedyne co tu widze to UPDATE.
Jesli miales na mysli ten update znaczy ze warunki w nim podane dotycza wszystkich rekordow stad zmiany sa te same we wszystkich rekordach


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

"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
e-konrad
post 5.10.2013, 12:43:32
Post #5





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 11.12.2008

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


Co należy zrobić aby wyniki tego zapytania były aktualizowane w tabeli stats. W tej chwili wyświetla mi dane poprawnie ale w tabeli stats mam powielony tylko ostatni wynik
Go to the top of the page
+Quote Post
nospor
post 5.10.2013, 12:45:49
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




No musisz dobrac tak warunek WHERE by jednoznacznie identyfikowal rekord z tabeli STATS. To Ty chyba wiesz co jednoznacznie identyfikuje rekord w tej tabeli a nie my


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

"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
e-konrad
post 5.10.2013, 13:16:56
Post #7





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 11.12.2008

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


Dzięki za naprowadzenie, właściwie to nie wiem dlaczego sprawiało mi to tylko zachodu. Po where wystarczyło tylko dodać warunek category='".$show['category']."'. I wszystko działa jak powinno.
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: 23.06.2025 - 21:04