Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 10.07.2014 Ostrzeżenie: (0%)
|
Witam jestem świeżakiem i dopiero zaczynam zabawe z php i sql dlatego proszę o cierpliwość. Mam pytanko zrobiłem wprowadzanie do bazy danych 3 danych imie nazwisko i mail oraz czwarta kolumna nazwana UID i chcialbym żeby wpisywało tutaj czas i date wpisu. W phpmyadmin wstawiam autotimestamp i wpisuje mi tylko 0000-00-00 00:00:00 podpowie ktoś jak to szturchnąć aby prawidłowo wpisywało czas z data ?
|
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 10.07.2014 Ostrzeżenie: (0%)
|
Jako że mnie nie wychodzi postanowiłem zaadoptować taki skrypt od wójka google aby zrozumieć o co w tym wszystkim biega bo egzamin E-14 sie zbliża a ja w szczerym polu jestem ale w głębokim lesie. Nadmienie tylko że autor tego skrytu wyraża zgodę na jego użycie i modyfikacje "http://www.cauchy.pl/systemy/php-mysql/wprowadzanie-danych-do-bazy-mysql/" Do celów edukacyjnych nadaje się wyśmienicie.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>Serwis ABC</title> <meta http-equiv=content-type content="text/html; charset=iso-8859-2"> <meta http-equiv="Content-Language" content="pl"> </head> <body> <?php //////////////////////////////////////////////////////////// //Przykład kodu wprowadzającego dane do bazy mysql //Sposob dzialania kodu: //Kod obrazuje zapisywanie sie na listy dystrybucyjna newslettera //Po otwarciu strony uzytkownik widzi formularz gdzie musi podac: // * imie // * nazwisko // * adres mail //Po kliknieciu przycisku "Zaloguj" kod sprawdza czy podane sa wszystkie //pola (imie, nazwisko, mail) oraz usuwa biale znaki z poczaku i konca //kazdego pola // Jesli podane sa wszystkie pola to sa one wprowadzane do bazy mysql // Jesli nie sa podane wszystkie pola to wyswietlana jest informacja // o bledzie i wyswietlany jest ponownie formularz zapisu na // newsletter //Ograniczenia programu // 1. Program nie sprawdza czy uzytkownik juz istnieje w bazie // 2. Program nie sprawdza czy adres mail ma poprawna skladnie //Wymagania // 1. Zalozona baza mysql na serwerze // 2. Tabela newsletter w bazie mysql z polami imie, nazwisko, mail //////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////// //Definicje zmiennych //adres ip serwera mysql który zawiera bazę danych i tabele z osobami //zapisanymi na listę dystrybucyjna newslettera $adres_ip_serwera_mysql_z_baza_danych = '91.200.238.15'; //nazwa bazy danych z tabelą newsletter zawierającą osoby zapisane na //listę dystrybucyjna newslettera $nazwa_bazy_danych = 'test2'; //nazwa uzytkownika bazy danych $nazwa_bazy_danych $login_bazy_danych = 'man'; //haslo uzytkownika bazy danych $nazwa_bazy_danych $haslo_bazy_danych = 're12'; //Formularz umozliwiajacy dopisanie się do bazy danych czyli zapisanie //się na liste dystrybucyjna newslettera //Formularz bedzie pokazywany gdy strona wyswietlana pierwszy raz //lub gdy użytkownik poda bledne lub niepelne dane $formularz_dodaj_uzytkownika = ' <FORM method="POST" action=""> Ime: <INPUT type="text" name="imie"> <br />Nazwisko: <INPUT type="text" name="nazwisko"> <br />Mail: <INPUT type="text" name="mail"> <br /><INPUT type="submit" value="Zapisz się!"> </FORM> '; //////////////////////////////////////////////////////////// //Kod programu //Ustanawiamy połączenie z serwerem mysql if ( !mysql_connect($adres_ip_serwera_mysql_z_baza_danych, $login_bazy_danych, $haslo_bazy_danych) ) { echo 'Nie moge polaczyc sie z baza danych'; exit (0); } //Wybieramy baze danych na serwerze mysql ktora zawiera tabele //newsletter gdzie sa dane osob z listy dystrybucyjnej if ( !mysql_select_db($nazwa_bazy_danych) ) { echo 'Blad otwarcia bazy danych'; exit (0); } //Sprawdzamy czy formularz został zaakceptowany - czyli czy zmienna //$_POST["mail"] jest zdefiniowana //Jesli zmienna $_POST["mail"] nie jest zdefiniowana to strona jest //wyswietlana po raz pierwszy i wyswietlimy formularz dodania do //newslettera //Jesli zmienna $_POST["mail"] jest zdefiniowana to strona byla //wczesniej wyswietlana i formularz dodania do newslettera zostal //zaakceptowany. Musimy sprawdzic poprawnosc danych (poprawne to //dodajemy nowa osobe na liste dystrybucujna, niepoprawne to wyswietlamy //komunikat bledu i ponownie wysiwetlamy formularz) if ( isset($_POST["mail"]) ){ //Jesli zmienna $_POST["mail"] jest zdefiniowana to znaczy, ze nasza //strona jest wyswietlana po raz kolejny. Wczesniej ktos wypelnil //formularz i wcisnal przycisk "Zapisz się!" //Porzadkujemy dane wprowadzone przez uzytkownika SkorygujZmienneZFormularza($imie,$nazwisko,$mail); //Sprawdzamy czy uzytkownik podal poprawne dane $czy_poprawne_dane = SprawdzPoprawnoscDanych ($imie, $nazwisko, $mail); if ($czy_poprawne_dane == "dane_ok") { //Jesli podane przez uzytkownika dane sa ok to wprowadzamy je do tabeli //Definiujemy zapytanie do tabeli newsletter wpisujace dane nowego //subskrybenta $zapytanie = "INSERT INTO `newsletter` (`UID`, `Imie`, `Nazwisko`,`Mail`) "; $zapytanie .= "VALUES ('', '$imie', '$nazwisko', '$mail')"; //Wykonujemy zapytanie na bazie mysql $wynik_zapytania = mysql_query($zapytanie); //Sprawdzamy cz baza danych zwrocila blad if (!$wynik_zapytania) { //Jesli baza danych zwrocila blad to wyswietlamy komunikat o problemie //z baza danych echo("<br />Nie moge dodać rekordu do bazy!<br /><br />"); } else { //Jesli dodanie subskrybenta sie udalo to wyswietlamy gratulacje oraz echo "Gratulacje!!!"; echo "<br />Właśnie zostałeś zapisany na listę dystrybucyjną naszego wspaniałego newslettera!!!!"; } } else { //Jesli podane przez uzytkownika dane sa niepoprawne to informujemy //o bledzie i ponownie wysiwetlamy komunkat echo "Wprowadziles niepoprawne dane do formularza. Być może nie wszystkie pola sa wypelnione"; echo "<br />Spróbuj ponownie:"; echo $formularz_dodaj_uzytkownika; } } else { //Jesli nasza strona jest wyswietlana po raz pierwszy (zmienna //$_POST["mail"] niejest zdefiniowana) to // * zachecamy do zapisania sia na liste newslettera // * wyswietlamy formularz pozwalajacy pdoac nowego subskrybenta echo "Zapisz się <strong>TERAZ</strong> na listę dystrybucyjną naszego wspaniałego newslettera."; echo $formularz_dodaj_uzytkownika; } //Zamykamy połączenie z bazą danych if ( !mysql_close() ) { echo 'Nie moge zakonczyc polaczenia z baza danych'; exit (0); } //////////////////////////////////////////////////////////// //Dodatkowe funkcje //////////////////////////////////////////////////////////// //// Funkcja SkorygujZmienneZFormularza(&$imie,&$nazwisko,&$mail) //// //Funkcja porządkuje dane wprosprawdzone do formularza: //Jesli pole nie zostalo wproawadzone to zmienna ma pusta wartosc ("") //Jesli pole zostalo wproawadzone to ma obcinane puste spacje z obu //stron ////////////////////////////////////////////////////////////////////// function SkorygujZmienneZFormularza(&$imie,&$nazwisko,&$mail) { if ( isset($_POST["imie"]) ) $imie = trim($_POST["imie"]); else $imie = ""; if ( isset($_POST["nazwisko"]) ) $nazwisko = trim($_POST["nazwisko"]); else $nazwisko = ""; if ( isset($_POST["mail"]) ) $mail = trim($_POST["mail"]); else $mail = ""; } //////////////////////////////////////////////////////////// //// Funkcja SprawdzPoprawnoscDanych ($imie, $nazwisko, $mail) //// //Funkcja sprawdza czy podane przez uzytkownika dane sa poprawne czyli //czy nie sa puste //Jesli ktorekolwiek pole $imie lub $nazwisko lub $mail jest puste to //zwracany jest komunikat o niepoprawnych danych (zle_dane) //Jesli wszystkie pola $imie lub $nazwisko lub $mail są wypełnione to //zwracany jest komunikat o poprawnych danych (dane_ok) //////////////////////////////////////////////////////////////////////// function SprawdzPoprawnoscDanych ($imie, $nazwisko, $mail) { if ( ($imie=="") || ($nazwisko=="") || ($mail=="") ) return "zle_dane"; return "dane_ok"; } ?> </body> </html> Niby wszystko ładnie śmiga tutaj ale w podkreślonym kawałku nie wiem jak dodać tą autodatę w kolumnie UID. Nie wiedzieć czemu nie wyświetla mi poprawnie polskich znaków wystawiłem to do wglądu tutaj http://91.200.238.15/tmp/index.php Muszę się zastanowić jak dodać tutaj linijkę chcąc poprawić zamiast dopisywać podejrzewam że zamiast INSERT zamienić trzeba by było na UPDATE Ten post edytował roxman 11.07.2014, 08:26:16 |
|
|
|
roxman [MySQL][PHP]phpmyadmin + automatyczna data 10.07.2014, 09:18:08
trueblue http://dev.mysql.com/doc/refman/5.5/en/tim...ializ... 10.07.2014, 09:20:00
roxman no fakt duzo mi to pomogło tu jest opisane jak w f... 10.07.2014, 11:24:21
Pyton_000 pole datetime z default CURRENT_TIMESTAMP i attrib... 10.07.2014, 11:29:31
nospor No przeciez ci napisano... DLa kolumny masz dac ty... 10.07.2014, 11:29:31
roxman no ok wiec mam tak
Nazwa kolumny UID
TYP DATETIME... 10.07.2014, 11:40:34
Pyton_000 Cytat(Pyton_000 @ 10.07.2014, 12:29:3... 10.07.2014, 11:42:23
roxman zmieniam na TIMESTAMP i dalej to samo nie wiem o j... 10.07.2014, 11:44:09
nospor $zapytanie .="VALUES ('(NOW()),... 10.07.2014, 12:19:41
roxman nic nie dziala zastosowalem sie do twoich sugesti ... 10.07.2014, 13:50:24
nospor widac zastosowales się źle...
Pokaz kod po zmiana... 10.07.2014, 13:54:27
nospor 1) Uzywaj BBCODE dla wstawianego kodu
2) Cytatnie ... 10.07.2014, 18:21:23
roxman qurde ale to proste kreciłem się na około a faktyc... 11.07.2014, 08:25:30
nospor Po raz ostatni proszę byś zaczął uzywac BBCODE
I ... 11.07.2014, 09:22:41
roxman Hmm chciałem zastosować wiedzę z poprzedniego skry... 12.07.2014, 10:28:23
nospor Do kodu PHP oraz PHP+HTML nalezy uzywac BBCODE PHP... 12.07.2014, 11:43:44
roxman Najsmutniejsze jest to że przeczytałem i wcale mni... 22.07.2014, 11:04:38
nospor Pierwsze i najwazniejsze: poprawiles w ogole to:
C... 22.07.2014, 11:12:25
Matt23 Po pierwsze, co to to w pierwszej linijce?
Po drug... 22.07.2014, 12:01:45
nospor CytatPo siódme, zapytanie można skonstruować tez t... 22.07.2014, 12:28:31 ![]() ![]() |
|
Aktualny czas: 17.02.2026 - 01:42 |