Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [CodeIgniter]Wysyłanie aktualnej daty do mysql przez php
Forum PHP.pl > Forum > PHP > Frameworki
Kacpervixu
witam, mam problem z moim kodem php a mianowicie wszystko mi się wysyła poprawnie oprócz daty rejestracji i daty logowania chce żeby podczas rejestracji w mysql pojawił sie rekord że zarejestrowany yyyy-dd-mm ale nie chce mi się to wysłać z php prosił bym o pomoc kod wygląda tak:
  1. if(isset($_POST['register'])){
  2. $ip = $_SERVER['REMOTE_ADDR'];
  3. $login = $_POST['login'];
  4. $email = $_POST['email'];
  5. $rejestracja = date();
  6. $logowanie = date();
  7. $password = $_POST['password'];
  8. $hashPassword = password_hash($password,PASSWORD_BCRYPT);
  9.  
  10. $sth = $db->prepare('INSERT INTO user (email,password,login,rejestracja,logowanie,ip) VALUE (:email,:password,:login,:time,:logowanie,:ip)');
  11. $sth->bindValue(':ip', $ip, PDO::PARAM_STR);
  12. $sth->bindValue(':time', time(), PDO::PARAM_STR);
  13. $sth->bindValue(':logowanie', $logowanie, PDO::PARAM_STR);
  14. $sth->bindValue(':login', $login, PDO::PARAM_STR);
  15. $sth->bindValue(':email', $email, PDO::PARAM_STR);
  16. $sth->bindValue(':password', $hashPassword, PDO::PARAM_STR);
  17. $sth->execute();
  18.  
  19. die('Rejestracja pomyslna!');
  20. }
Tomplus
A jaki masz ustawioną kolumnę w bazie?
timestamp czy co innego?

Bo ogólnie zamiast używać PHP, użyć w zapytaniu mysql funckję jako parametr NOW().

Najlepiej w ogóle nie używać i ustawić dla kolumny `rejestracja` aby tworzyła się aktualna data podczas tworzenia rekordu jako wartość domyślną: CURRENT_TIMESTAMP

Kacpervixu
miałem ustawioną na date teraz zmieniłem an timestamp a jeżeli chodzi o kod php to co tam muszę zimienić żeby wszystko szło tak jak powinno bo jestem trochę zielony w php


Dobra dzięki wszystko śmiga dzięki za pomoc kod ostatecznie wygląda tak:
  1. <?php
  2.  
  3. if(isset($_POST['register'])){
  4. $ip = $_SERVER['REMOTE_ADDR'];
  5. $login = $_POST['login'];
  6. $email = $_POST['email'];
  7. $rejestracja = date("Y-m-d H:i:s");
  8. $logowanie = date("Y-m-d H:i:s");
  9. $password = $_POST['password'];
  10. $hashPassword = password_hash($password,PASSWORD_BCRYPT);
  11.  
  12. $sth = $db->prepare('INSERT INTO user (email,password,login,rejestracja,logowanie,ip) VALUE (:email,:password,:login,:rejestracja,:logowanie,:ip)');
  13. $sth->bindValue(':ip', $ip, PDO::PARAM_STR);
  14. $sth->bindValue(':logowanie', $logowanie, PDO::PARAM_STR);
  15. $sth->bindValue(':rejestracja', $rejestracja, PDO::PARAM_STR);
  16. $sth->bindValue(':login', $login, PDO::PARAM_STR);
  17. $sth->bindValue(':email', $email, PDO::PARAM_STR);
  18. $sth->bindValue(':password', $hashPassword, PDO::PARAM_STR);
  19. $sth->execute();
  20.  
  21. die('Rejestracja pomyslna!');
  22. }
  23. ?>
viking
Taka dobra rada na przyszłość. Włącz sobie wyświetlanie błędów. Date w takiej formie jak podałeś na początku emituje warning.
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.