Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL] Zliczenie rekordów z bazy - z warunkiem
tumekbasior
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 18.02.2014

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


Cześć,
mam problem związany z wyświetleniem zliczonych w bazie rekordów. Rekordy mają pewne określone warunki.

  1. $wynik = mysql_query ("SELECT user='$_SESSION[cot_user]' count(*) AS ilosc FROM ctt_raport WHERE akcja = 'ZWROT'");
  2. $wynik2 = mysql_fetch_array($wynik);
  3. $ilosc_rekordow = $wynik2['ilosc'];
  4. echo '<br><br>Ilość obsłużonych dziś obiektów:' $ilosc_rekordow;


Założenie jest takie, żeby z tabeli ctt_raport pobierało i zliczało rekordy dla akcji ZWROT i dla konkretnego zalogowanego użytkownika (stąd SESSION).
Ten kod, niestety, nie pozwala mi wyświetlić niczego.

Będę ogromnie zobowiązany za pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
krzesik
post
Post #2





Grupa: Zarejestrowani
Postów: 516
Pomógł: 1
Dołączył: 25.08.2012

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


$wynik = mysql_query ("SELECT count(*) AS ilosc FROM ctt_raport WHERE akcja = 'ZWROT' and user='$_SESSION[cot_user]'");
Go to the top of the page
+Quote Post
tumekbasior
post
Post #3





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 18.02.2014

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


Wyrzuca mi:
  1. Parse error: syntax error, unexpected T_VARIABLE, expecting ',' or ';' in /home/site/5173/www/raportuj/hc.php on line 277


Fragment wcześniejszego kodu (szukałem i nie znajduję żadnego błędu...)
  1. <tr>
  2. <td>'.iconv("ISO-8859-2", "UTF-8", $last_add[2]).'</td>
  3. <td>'.iconv("ISO-8859-2", "UTF-8", $last_add[4]).'</td>
  4. <td>'.iconv("ISO-8859-2", "UTF-8", $last_add[5]).'</td>
  5. <td>'.iconv("ISO-8859-2", "UTF-8", $last_add[6]).'</td>
  6. <td>'.iconv("ISO-8859-2", "UTF-8", $last_add[7]).'</td>
  7. <td>'.iconv("ISO-8859-2", "UTF-8", $last_add[10]).'</td>
  8. </tr>
  9. </table>
  10. </div>';
  11.  
  12.  
  13. echo '</table></center>';
  14.  
  15. $wynik = mysql_query ("SELECT count(*) AS ilosc FROM ctt_raport WHERE akcja = 'ZWROT' and user='$_SESSION[cot_user]'");
  16. $wynik2 = mysql_fetch_array($wynik);
  17. $ilosc_rekordow = $wynik2['ilosc'];
  18. echo '<br><br>Ilość obsłużonych dziś obiektów:' $ilosc_rekordow;
Go to the top of the page
+Quote Post
Turson
post
Post #4





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


Dokładnie której linii tyczy się błąd?

Już widzę
  1. echo '<br><br>Ilość obsłużonych dziś obiektów:' $ilosc_rekordow;

brakuje pewnego znaku do łączenia

Ten post edytował Turson 19.02.2014, 00:12:16
Go to the top of the page
+Quote Post
tumekbasior
post
Post #5





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 18.02.2014

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


Hm... poprawiłem:

  1. echo '<br><br>Ilość obsłużonych dziś obiektów: "'$ilosc_rekordow'"';


Nadal to samo (IMG:style_emoticons/default/sad.gif)



Edit.
Nieważne - znalazłem błąd.

  1. echo '<br><br>Ilość obsłużonych dziś obiektów:'; echo $ilosc_rekordow;

Już wszystko gra.

Ten post edytował tumekbasior 19.02.2014, 00:42:01
Go to the top of the page
+Quote Post
Turson
post
Post #6





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


  1. echo '<br><br>Ilość obsłużonych dziś obiektów: '.$ilosc_rekordow;


Ten post edytował Turson 19.02.2014, 00:41:19
Go to the top of the page
+Quote Post
tumekbasior
post
Post #7





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 18.02.2014

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


Turson, jak do tego dodać jeszcze warunek, żeby rekordy były tylko z dnia bieżącego?
W bazie są one zapisane w kolumnie 'data' w formie '2013-12-01 00:01'
Go to the top of the page
+Quote Post
Turson
post
Post #8





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


http://tom000.info/blog/mysql__funkcje_prz...zania_daty.html
Go to the top of the page
+Quote Post
tumekbasior
post
Post #9





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 18.02.2014

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


  1. $wynik = mysql_query ("SELECT count(*) AS ilosc FROM ctt_raport WHERE data = DATE_FORMAT(NOW(),'%Y-%m-%d') and akcja = 'ZWROT' and user='$_SESSION[cot_user]'");


liczy rekordy, ale tylko z datą i godziną taką samą. Nie chce policzyć tych tylko z taką samą datą. Jakaś recepta?
Go to the top of the page
+Quote Post
Turson
post
Post #10





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


Spróbuj CURDATE() zamiast NOW()
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 17:29