Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]System przypominania
Forum PHP.pl > Forum > Przedszkole
neotorrent
Witam znowu zgłaszam się do was z prośba
Otóż próbuje zrobić mały system przypomnień
I popełniłem jakiś podstawowy błąd pewnie jak zawsze tongue.gif

Dokładniej mówiąc: Próbuje wyświetlić wydarzenie które odbędzie się jutro
Podam na przykładzie: Dziś mamy 01.09.11 i chce żeby na mojej stronie pisało Jutro: 02.09.11 - Urodziny Kasi

Zrobiłem malutka baze danych
  1. CREATE TABLE `events` (
  2. `data` VARCHAR(20),
  3. `opis` VARCHAR(100),
  4. `id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  5.  
  6. PRIMARY KEY (`id`)
  7.  
  8. )
  9.  


Pierwsze pole data drugie opis trzecie losowe id
I wypełniłem ja tak: Data: 09.02.11 Opis: test1 ID:1

Teraz skrypcik w php z którym mam problem
  1. <?php
  2. ini_set('display_errors','1');
  3. require('functions.php');
  4. connect();
  5. $mysql_tabela = "events";
  6. $dzis = date("m.d.y");
  7. $fncjutro = mktime(0, 0, 0, date("m"), date("d")+1 , date("Y"));
  8. $jutro = date("m.d.y", $fncjutro);
  9. $wynik = mysql_query("SELECT * FROM $mysql_tabela WHERE data='$dataevents'");
  10.  
  11. if ($jutro = $dataevents){
  12. echo "działa";
  13. }
  14. else {
  15. echo "nie działa";
  16. }
  17.  
  18.  
  19. echo "Jutro ".$jutro;
  20. echo "</br>";
  21. echo $dzis;
  22.  
  23. ?>


Errory:
  1. Notice: Undefined variable: dataevents in /home/dmx/domains/dmx.cal24.pl/public_html/dw/events.php on line 10
  2.  
  3. Notice: Undefined variable: dataevents in /home/dmx/domains/dmx.cal24.pl/public_html/dw/events.php on line 12


Stronka która mi wyświetla:
  1. nie działaJutro
  2. 09.01.11


Ten kawałek kodu to tylko tak dla sprawdzenia działania zmiennych
  1. echo "Jutro ".$jutro;
  2. echo "</br>";
  3. echo $dzis;



Zmienna $jutro działa poprawnie gdy nie ma instrukcji warunkowej bo wyświetla 09.02.11

No i pomyślałem gdy zmienna $jutro znajdzie taka sama wartość czy w tym przypadku $dataevents to powinno zadziałać a Tu nie bardzo

Proszę o Pomoc z góry thx !
Mefiuu
całego kodu nie przejrzałem ale tu masz błąd:

  1. if ($jutro = $dataevents){


to jest operator przypisania a nie porównania.
neotorrent
No faktycznie uciekło mi ale to i tak nic nie zmienia ;/
bulias
Warto czytać komunikaty który wypluwa parser
  1. Notice: Undefined variable: dataevents in /home/dmx/domains/dmx.cal24.pl/public_html/dw/events.php on line 10

Co oznacza że nie została z definiowana zmienna dataevents, ja w tym kodzie również jej nie widzę.
neotorrent
  1. WHERE data='$dataevents'
to taka definicja zmiennej jest nie poprawna tak ?
Gdzie pole data równa się zmiennej dataevents.
bulias
sprawdź co przekazujesz do zapytania
  1. var_dump($dataevents)

neotorrent
  1. Notice: Undefined variable: dataevents in /home/dmx/domains/dmx.cal24.pl/public_html/dw/events.php on line 4
  2. NULL


NULL czyli nic haha.gif kurcze rozjaśni mi ktoś jak rozwiązać mój problem ?
tolomei
sciana.gif
doogi
Cytat(neotorrent @ 1.09.2011, 21:53:46 ) *
  1. Notice: Undefined variable: dataevents in /home/dmx/domains/dmx.cal24.pl/public_html/dw/events.php on line 4
  2. NULL


NULL czyli nic haha.gif kurcze rozjaśni mi ktoś jak rozwiązać mój problem ?


bardziej skup się na wyrażeniu "Undefined variable: dataevents". Zwracana wartość NULL jest pochodną tego co sugeruje wspomniane wyrażenie smile.gif
Ociu
@tolomei, posty tego typu możesz sobie darować. Nie wnoszą one nic do tego tematu.

@neotorrent, nie masz zdefiniowanej nigdzie zmiennej $dataevents.
cer98
  1.  
  2. --
  3. -- Struktura tabeli dla `przypomnienia`
  4. --
  5.  
  6. CREATE TABLE IF NOT EXISTS `przypomnienia` (
  7. `id` int(11) NOT NULL AUTO_INCREMENT,
  8. `nazwa` varchar(250) collate utf8_polish_ci NOT NULL,
  9. `tresc` text collate utf8_polish_ci NOT NULL,
  10. `id_zlecenia` int(11) NOT NULL,
  11. `data_dod` date NOT NULL,
  12. `kiedy` datetime NOT NULL,
  13. `licznik` int(11) NOT NULL,
  14. PRIMARY KEY (`id`)
  15. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci AUTO_INCREMENT=9 ;
  16.  
  17. --
  18. -- Zrzut danych tabeli `przypomnienia`
  19. --
  20.  
  21. INSERT INTO `przypomnienia` (`id`, `nazwa`, `tresc`, `id_zlecenia`, `data_dod`, `kiedy`, `licznik`) VALUES
  22. (8, 'prpy', 'przyp', 2, '2010-12-10', '2010-11-12 21:00:00', 0),
  23. (7, 'przyp', 'tresc przyp', 5, '2010-12-09', '2010-12-14 21:00:00', 0);
  24.  



  1.  
  2. <tr><td>Kiedy ?:</td><td>
  3. <input name="Kiedy" type="text" maxlength="50" value="2010-11-12 21:00:00"/></td></tr>
  4.  
  5.  
  6. $rezultat=mysql_query("SELECT * FROM przypomnienia");
  7.  
  8. while ($wypisz = mysql_fetch_array($rezultat, MYSQL_ASSOC)) {
  9.  
  10. $kiedy = $wypisz['kiedy'];
  11.  
  12. if(time() > strtotime($kiedy)){
  13.  
  14. $nazwa = $wypisz['nazwa'];
  15. $tresc = $wypisz['tresc'];
  16.  
  17. print "<p>$nazwa</p>";
  18. print "<p>$tresc</p>";
  19. }
  20.  
  21. }
  22.  
  23.  
  24.  
  25. $tresc = addslashes(trim($_POST['Tresc']));
  26. $nazwa = addslashes(trim($_POST['Nazwa']));
  27. $zlecenieId = addslashes(trim($_POST['ZlecenieId']));
  28. $kiedy = addslashes(trim($_POST['Kiedy']));
  29. $data_dod = date("Y-m-d");
  30.  
  31. $sekcja = addslashes(trim($_POST['Sekcja']));
  32. $modul = addslashes(trim($_POST['Modul']));
  33.  
  34. $dodaj_przypomnienie = "INSERT INTO przypomnienia SET nazwa='$nazwa', tresc='$tresc', id_zlecenia='$zlecenieId',
  35. data_dod='$data_dod', kiedy='$kiedy' ";
  36.  
  37.  
tolomei
Cytat(Ociu @ 2.09.2011, 10:40:58 ) *
@tolomei, posty tego typu możesz sobie darować. Nie wnoszą one nic do tego tematu.


Przepraszam, to było silniejsze ode mnie.
Rid
Cytat
Notice: Undefined variable: dataevents


Przecież ten błąd mówi sam za siebie.

Ma Pan ,wogóle zadeklarowaną zmienną : dataevents-bo wydaje mi się,że nie tongue.gif
neotorrent
Wielkie dzięki cer98 jednym porządnym postem załatwiłeś mój problem
Nie moja wina że dopiero się ucze :/ nie trzeba od razu walić głową w ścianę ...

A oto jak dzięki kodu cer98 rozwiązałem problem:

  1. CREATE TABLE IF NOT EXISTS `events` (
  2. `id` int(11) NOT NULL AUTO_INCREMENT,
  3. `nazwa` varchar(250) collate utf8_polish_ci NOT NULL,
  4. `kiedy` date NOT NULL,
  5. PRIMARY KEY (`id`)
  6. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci AUTO_INCREMENT=9 ;
  7.  


  1. <?php
  2. ini_set('display_errors','1');
  3. require('functions.php');
  4. connect();
  5. $dzis = date("Y-m-d");
  6. $fncjutro = mktime(0, 0, 0, date("m"), date("d")+1 , date("Y"));
  7. $jutro = date("Y-m-d", $fncjutro);
  8. $wynik=mysql_query("SELECT * FROM events");
  9. while ($wypisz = mysql_fetch_array($wynik, MYSQL_ASSOC)) {
  10.  
  11. $kiedy = $wypisz['kiedy'];
  12. $event = $wypisz['nazwa'];
  13. if ($jutro == $kiedy)
  14. {
  15. echo "Jutro:</br>";
  16. print "$event";
  17. }
  18. }
  19. ?>


Otrzymałem pożądany efekt smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.