• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Generowanie daty PHP nie działa

Object Storage Arubacloud
0 głosów
204 wizyt
pytanie zadane 7 grudnia 2015 w PHP przez artimal Gaduła (4,800 p.)

Czołem, tym razem mam problem z funkcją:

$data = date("Y-m-d");

Zwraca mi ona do tabeli mysql wartość 0000-00-00. Pracuję na xamppie, czy to może być problem?

2 odpowiedzi

+1 głos
odpowiedź 7 grudnia 2015 przez Boshi VIP (100,240 p.)
wybrane 7 grudnia 2015 przez artimal
 
Najlepsza
Generuj  przy pomocy funkcji mysql NOW()
komentarz 7 grudnia 2015 przez mowmiheniek Stary wyjadacz (11,900 p.)
Albo lepiej bez godziny: CURDATE().
komentarz 7 grudnia 2015 przez Boshi VIP (100,240 p.)
Tak, można i tak :)
komentarz 7 grudnia 2015 przez artimal Gaduła (4,800 p.)
Tylko, że tabela SQL wymaga formatu Y-m-d. Czy da się takowy uzsyakć z now(); ?
komentarz 7 grudnia 2015 przez Boshi VIP (100,240 p.)
Co to znaczy Y-m-d?  jaki masz typ w kolumnie daty? http://computersun.pl/php_db/mysql/typy-zakresy-danych-mysql-w_92.html
komentarz 7 grudnia 2015 przez artimal Gaduła (4,800 p.)
Typ kolumny to po prostu DATE. Wsadzić w poleceniu INSERT w VALUES wartości now()?
komentarz 7 grudnia 2015 przez mowmiheniek Stary wyjadacz (11,900 p.)
Możesz wsadzić zarówno NOW() jak i CURDATE(). Działają obydwie, sprawdzałem.
komentarz 7 grudnia 2015 przez artimal Gaduła (4,800 p.)

Wyskakuje błąd "Call to undefined function NOW()"

komentarz 7 grudnia 2015 przez artimal Gaduła (4,800 p.)
Nie wiem czy to ważne ale najpierw definiuję zmienną data równą NOW(); a potem w poleceniu mysql odwołuję się do tej zmiennej...
komentarz 7 grudnia 2015 przez Boshi VIP (100,240 p.)
Nie, wsadź po prostu  insert into  values ('NOW()')
komentarz 7 grudnia 2015 przez artimal Gaduła (4,800 p.)
Dzięki za pomoc, działa :)
+2 głosów
odpowiedź 7 grudnia 2015 przez mowmiheniek Stary wyjadacz (11,900 p.)
Spróbuj tak:

$data = date('Y-m-d h:i:s');

a typ danych w tabeli mysql zostaw na date. Powinno zadziałać.
komentarz 7 grudnia 2015 przez artimal Gaduła (4,800 p.)
Sprawdziłem dwukrotnie i jestem pewien, że ten zapis niszczy moje polecenie jquery a stara forma zapisu nie. Przecież tabela SQL wymaga takiej formy Y-m-d więc po co to zmieniać...
komentarz 7 grudnia 2015 przez mowmiheniek Stary wyjadacz (11,900 p.)
Pokaż polecenie którym wklejasz tę datę do myslq.
komentarz 7 grudnia 2015 przez artimal Gaduła (4,800 p.)
$data = NOW();
$polaczenie -> query(" CREATE TABLE `".$login."` (dzial INT(2) UNSIGNED AUTO_INCREMENT PRIMARY KEY, temat1 DATE, temat2 DATE, temat3 DATE, temat4 DATE, temat5 DATE, temat6 DATE, temat7 DATE, temat8 DATE, temat9 DATE, temat10 DATE) ");
		for ($i = 1; $i <= 10; $i++)
		{
    		$polaczenie -> query(" INSERT INTO `".$login."` (dzial, temat1, temat2, temat3, temat4, temat5, temat6, temat7, temat8, temat9, temat10) VALUES($i,$data,$data,$data,$data,$data,$data,$data,$data,$data,$data) ");
		}

 

komentarz 7 grudnia 2015 przez mowmiheniek Stary wyjadacz (11,900 p.)
A teraz dodaj apostrofy do $data i sprawdź jeszcze raz - '$data'.
komentarz 7 grudnia 2015 przez artimal Gaduła (4,800 p.)
Zrobiłem now(); w VALUES i działa. Dzięki za pomoc :)
komentarz 7 grudnia 2015 przez Boshi VIP (100,240 p.)
Swoją drogą to co wykonujesz jest niebezpieczne i mega  nieefektywne.

Dane mógłbyś trzymac w tablicy i wykonać tylko jedno polecenie sql używając funkcji implode potem.

Podobne pytania

+1 głos
1 odpowiedź 298 wizyt
pytanie zadane 30 maja 2021 w PHP przez KFC Użytkownik (610 p.)
0 głosów
0 odpowiedzi 245 wizyt
pytanie zadane 4 czerwca 2017 w PHP przez ddoh Początkujący (310 p.)
0 głosów
2 odpowiedzi 139 wizyt
pytanie zadane 12 kwietnia 2019 w JavaScript przez Whereismycode Obywatel (1,710 p.)

92,572 zapytań

141,422 odpowiedzi

319,644 komentarzy

61,959 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...