Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Closed TopicStart new topic
> [MySQL][PHP] Wizyty przestały działać
mrk9109
post 1.03.2018, 14:14:46
Post #1





Grupa: Zarejestrowani
Postów: 445
Pomógł: 3
Dołączył: 4.06.2010

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


Witam otóż mam taki problem napisałem sobie wizyty i wszystko śmigało ( używam localhostu ) do czasu wybicia dzisiejszej daty przestało usuwać IP oraz dodawać dzisiejszą datę . Co jest grane ? może ktoś podpowie

  1. <?php
  2.  
  3. $ip = $_SERVER['REMOTE_ADDR'];
  4. $dataDzis = date("d.m.Y", time());
  5. $dataWczoraj = date("d.m.Y", time()-(24*3600));
  6. $sprawdz_data = 0;
  7.  
  8. $zapytanieU = "DELETE FROM `wizyty_ip` WHERE data<'".$dataDzis."' "; // usuwanie ip po 24h
  9. $startU = mysqli_query($polaczenie,$zapytanieU);
  10.  
  11. $zapytanie="SELECT ip FROM wizyty_ip WHERE ip='".$ip."' "; // Sprawdzanie czy ip w bazie
  12. $wynik = mysqli_query($polaczenie,$zapytanie);
  13. $sprawdz_ip = mysqli_num_rows($wynik);
  14.  
  15. $zapytanie2 = mysqli_query($polaczenie,"SELECT `data` FROM `wizyty` ORDER BY `data` DESC LIMIT 0,1");
  16. while($dbW = $zapytanie2 -> fetch_assoc() ) {
  17. $sprawdz_data=$dbW['data']; // Sprawdzanie czy data jest w bazie
  18. }
  19. if ($dataDzis == $sprawdz_data && $sprawdz_ip == 0) // Warunek daty i ip
  20. {
  21. $zapytanie = mysqli_query($polaczenie,"UPDATE wizyty SET wizyty= wizyty+1 WHERE data = '".$dataDzis."'");
  22. $zapytanie2 = mysqli_query($polaczenie,"INSERT INTO `wizyty_ip` (`data`,`ip`)
  23. VALUES ('".$dataDzis."','".$ip."');");
  24. }
  25. elseif ($dataDzis > $sprawdz_data ) // Gdy warunek nie jest spelniony
  26. {
  27. $zapytanie = "INSERT INTO `wizyty` (`data`, `wizyty`)
  28. VALUES ('".$dataDzis."',
  29. '1'
  30. );";
  31. $start = mysqli_query($polaczenie,$zapytanie);
  32. $zapytanie2 = "INSERT INTO `wizyty_ip` (`data`,`ip`)
  33. VALUES ('".$dataDzis."',
  34. '".$ip."'
  35. );";
  36. $start2 = mysqli_query($polaczenie,$zapytanie2);
  37. }
  38.  
  39. $zapytanieWiz = mysqli_query($polaczenie,"SELECT wizyty FROM wizyty WHERE data = '". $dataDzis."'; ");
  40.  
  41. while($db = $zapytanieWiz -> fetch_assoc() ) { // Dzisiejsze wizyty
  42.  
  43. $dzis=$db['wizyty'];
  44. }
  45. $zapytanieWiz2 = mysqli_query($polaczenie,"SELECT wizyty FROM wizyty WHERE data = '". $dataWczoraj."'; ");
  46.  
  47. while($db = $zapytanieWiz2 -> fetch_assoc() ) { // Wczorajsze wizyty
  48.  
  49. $wczoraj=$db['wizyty'];
  50. }
  51.  
  52. if (empty($wczoraj))
  53. {
  54. $wczoraj = 0; // Jezeli wczorajsza data nie istnieje
  55. }
  56.  
  57. $zapytanieSuma = "SELECT SUM(wizyty) AS wizyty FROM wizyty"; // Sumowanie wizyt
  58. $wynikS = mysqli_query($polaczenie,$zapytanieSuma);
  59. while($db = mysqli_fetch_array($wynikS) ) {
  60. $lacznie=$db['wizyty'];
  61. }
  62.  
  63. include("templatki/wizyty.html");
  64.  
  65. ?>
Go to the top of the page
+Quote Post
viking
post 1.03.2018, 14:22:51
Post #2





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

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


Jakieś błędy na stronie albo w logach? Aktualizacja serwera po drodze?


--------------------
Go to the top of the page
+Quote Post
mrk9109
post 1.03.2018, 14:43:27
Post #3





Grupa: Zarejestrowani
Postów: 445
Pomógł: 3
Dołączył: 4.06.2010

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


wlasnie 0 bledow jedynie że brak zdefiniowanego zmiennej dzis ale to normalne skoro jej nie tworzy nie wiem czemu to przestalo dzialac . Używam xampa watpie ze robil jakas aktualizacje
Go to the top of the page
+Quote Post
nospor
post 1.03.2018, 14:48:06
Post #4





Grupa: Moderatorzy
Postów: 36 455
Pomógł: 6292
Dołączył: 27.12.2004




A pole 'data' w tabeli 'wizyty' to jakiego jest typu? Bo mi wyglada na zwykle pole tekstowego to dosc logiczne ze z dniem 1 marca przestalo ci wszystko dzialac...


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

"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
mrk9109
post 1.03.2018, 15:31:03
Post #5





Grupa: Zarejestrowani
Postów: 445
Pomógł: 3
Dołączył: 4.06.2010

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


  1. @$polaczenie -> query("DROP TABLE IF EXISTS `wizyty`");
  2. @$polaczenie -> query("CREATE TABLE IF NOT EXISTS `wizyty` (
  3. `id` int(10) NOT NULL AUTO_INCREMENT,
  4. `data` varchar(255) NOT NULL,
  5. `wizyty` varchar(255) NOT NULL,
  6. PRIMARY KEY ( `id` )
  7. ) ENGINE = MYISAM DEFAULT CHARSET=utf8;");

to jak ma byc ?

bo jak zapisze

"`data` date NOT NULL,"

to zapisuje date w samych 0000 i zaczyna dzialac
Go to the top of the page
+Quote Post
viking
post 1.03.2018, 15:32:55
Post #6





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

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


https://dev.mysql.com/doc/refman/5.7/en/datetime.html
Data jest w formacie 0000-00-00


--------------------
Go to the top of the page
+Quote Post
mrk9109
post 1.03.2018, 15:40:35
Post #7





Grupa: Zarejestrowani
Postów: 445
Pomógł: 3
Dołączył: 4.06.2010

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


pozmieniałem baze danych skrypt i śmiga znow wszystko jeszcze przerobie wizyty ip date tongue.gif dziekuje smile.gif

edit

kurde znow przestalo dzialac zapisuje tylko 1 rekord ...

http://wklej.org/id/3376252/
Go to the top of the page
+Quote Post
Pyton_000
post 1.03.2018, 15:43:00
Post #8





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


Czy uważasz że

$dataDzis = date("y.m.d", time());
$dataWczoraj = date("y.m.d", time()-(24*3600));

jest w formacie "000-00-00" questionmark.gif
Go to the top of the page
+Quote Post
nospor
post 1.03.2018, 15:43:10
Post #9





Grupa: Moderatorzy
Postów: 36 455
Pomógł: 6292
Dołączył: 27.12.2004




Czego nie rozumiesz, w zdaniu:
data ma byc formatu 0000-00-00
?

I wizyty to zdaje sie LICZBA wiec czemu znowu w bazie zapisujesz to jako TEKST??


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

"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
mrk9109
post 1.03.2018, 15:48:53
Post #10





Grupa: Zarejestrowani
Postów: 445
Pomógł: 3
Dołączył: 4.06.2010

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


zrobiłem zapis wizyty w liczbach i jak by nie działał mi dalej warunek UPDATE itp tworzy date przy 1 wizycie i na tym sie konczy
Go to the top of the page
+Quote Post
viking
post 1.03.2018, 16:01:59
Post #11





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

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


Pokaż teraz kod po zmianach.

Swoją drogą to w nowych wersjach mysql przeskoczyli wreszcie problem przyjmowania ISO 8601 czy dalej udają że nic się nie dzieje?


--------------------
Go to the top of the page
+Quote Post
mrk9109
post 1.03.2018, 16:10:33
Post #12





Grupa: Zarejestrowani
Postów: 445
Pomógł: 3
Dołączył: 4.06.2010

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


  1. <?php
  2.  
  3. $ip = $_SERVER['REMOTE_ADDR'];
  4. $dataDzis = date("y.m.d", time());
  5. $dataWczoraj = date("y.m.d", time()-(24*3600));
  6. $sprawdz_data = 0;
  7.  
  8. $zapytanieU = "DELETE FROM `wizyty_ip` WHERE data<'".$dataDzis."' "; // usuwanie ip po 24h
  9. $startU = mysqli_query($polaczenie,$zapytanieU);
  10.  
  11. $zapytanie="SELECT ip FROM wizyty_ip WHERE ip='".$ip."' "; // Sprawdzanie czy ip w bazie
  12. $wynik = mysqli_query($polaczenie,$zapytanie);
  13. $sprawdz_ip = mysqli_num_rows($wynik);
  14.  
  15. $zapytanie2 = mysqli_query($polaczenie,"SELECT `data` FROM `wizyty` ORDER BY `data` DESC LIMIT 0,1");
  16. while($dbW = $zapytanie2 -> fetch_assoc() ) {
  17. $sprawdz_data=$dbW['data']; // Sprawdzanie czy data jest w bazie
  18. }
  19. if ($dataDzis == $sprawdz_data && $sprawdz_ip == 0) // Warunek daty i ip
  20. {
  21. $zapytanie = mysqli_query($polaczenie,"UPDATE wizyty SET wizyty= wizyty+1 WHERE data = '".$dataDzis."'");
  22. $zapytanie2 = mysqli_query($polaczenie,"INSERT INTO `wizyty_ip` (`data`,`ip`)
  23. VALUES ('".$dataDzis."','".$ip."');");
  24. }
  25. elseif ($dataDzis > $sprawdz_data ) // Gdy warunek nie jest spelniony
  26. {
  27. $zapytanie = "INSERT INTO `wizyty` (`data`, `wizyty`)
  28. VALUES ('".$dataDzis."',
  29. '1'
  30. );";
  31. $start = mysqli_query($polaczenie,$zapytanie);
  32. $zapytanie2 = "INSERT INTO `wizyty_ip` (`data`,`ip`)
  33. VALUES ('".$dataDzis."',
  34. '".$ip."'
  35. );";
  36. $start2 = mysqli_query($polaczenie,$zapytanie2);
  37. }
  38.  
  39. $zapytanieWiz = mysqli_query($polaczenie,"SELECT wizyty FROM wizyty WHERE data = '". $dataDzis."'; ");
  40.  
  41. while($db = $zapytanieWiz -> fetch_assoc() ) { // Dzisiejsze wizyty
  42.  
  43. $dzis=$db['wizyty'];
  44. }
  45. $zapytanieWiz2 = mysqli_query($polaczenie,"SELECT wizyty FROM wizyty WHERE data = '". $dataWczoraj."'; ");
  46.  
  47. while($db = $zapytanieWiz2 -> fetch_assoc() ) { // Wczorajsze wizyty
  48.  
  49. $wczoraj=$db['wizyty'];
  50. }
  51.  
  52. if (empty($wczoraj))
  53. {
  54. $wczoraj = 0; // Jezeli wczorajsza data nie istnieje
  55. }
  56.  
  57. $zapytanieSuma = "SELECT SUM(wizyty) AS wizyty FROM wizyty"; // Sumowanie wizyt
  58. $wynikS = mysqli_query($polaczenie,$zapytanieSuma);
  59. while($db = mysqli_fetch_array($wynikS) ) {
  60. $lacznie=$db['wizyty'];
  61. }
  62.  
  63. include("templatki/wizyty.html");
  64.  
  65. ?>


Powiem ci usunolem warunki i wtedy UPDATE dziala nie wiem co sie zrabalo ze przestalo dzialac cos mam z tymi warunkami jak pozmienialem pola bazy danych ale nie wiem co kombinuje narazie i nic
Go to the top of the page
+Quote Post
viking
post 1.03.2018, 16:14:39
Post #13





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

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


Jak grochem o ścianę. Wszyscy piszą co masz zmienić, nawet dałeś dziękuję dla linka, a ty dalej swoje.


--------------------
Go to the top of the page
+Quote Post
nospor
post 1.03.2018, 16:14:59
Post #14





Grupa: Moderatorzy
Postów: 36 455
Pomógł: 6292
Dołączył: 27.12.2004




y.m.d
Kurcze, jak grochem o sciane... zamykam. Gdy spowazniejesz (nie wczesniej niz za rok wink.gif ) zapraszam ponownie


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

"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

Closed 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: 25.04.2024 - 01:47