Jak zrobić rejestrację użytkowników w PHP MySQL JavaScript i Ajax
Skrypt tworzy formularz rejestracyjny dla użytkowników chroniony dodatkowo tokenem. Walidacja odbywa się poprzez JavaScript oraz Ajax.
Walidacja danych obejmuje:
1. Czy wszystkie dane zostały podane,
2. Czy adres e-mail jest poprawny
3. Czy Token jest poprawny
4. Czy login nie jest już zajęty
5. Aktywacja konta poprzez e-mail
Całość skłąda się z 5 plików:
register.html
register.js
register.php
prototype.js dostępny tutaj do pobrania [ Pobierz ]
token.php dostępny tutaj do pobrania [ Pobierz ]
Dalsza czê¶æ:
1
2
3
4
5
Dodano przez:
igor Ranga:
Administrator serwisu Punktów:
0
Baza SQL dla tej rejestracji:
- Zobacz kod dodany do tego wpisu
-
CREATE TABLE `uzytkownicy` ( `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `login` VARCHAR( 100 ) NOT NULL , `haslo` VARCHAR( 255 ) NOT NULL , `mail` VARCHAR( 150 ) NOT NULL , `act` INT NOT NULL ) ENGINE = MYISAM ;
autor: Igor | 45 | 2009-01-09 16:57:23
Jak przeprowadzić logowanie użytkownika jeśli korzystam z tego skryptu rejestracji?
autor: Krzysiu555 | 134 | 2009-03-18 21:31:32
http://funkcje.net/view/2/8/1733/index.html
autor: Igor | 135 | 2009-03-19 00:08:09
świetna sprawa ... mam takie pytanie, jak zrobić do tego skryptu i do tej bazy opcję przypomnienie hasła? można prosić o takie rozwiązanie? pozdrawiam
autor: shiba | 159 | 2009-04-13 19:04:19
Witam a u mnie coś nie chce działać dostaję informację że rejestracja zakończona ale nie dostaje na e-mail informacji ani w bazie nie pojawia się nowy rekord. W pliku register.php podałem usera, hasło i nazwę bazy oraz podałem własny e-mail w miejscu "twoja@domena.net" Nie wime czy to ważne ale zapytanie SQL nie chciało mi się wykonać dopiero po usunięciu ENGINE = MYISAM dodała się tabela . Z góry dziękuję za wskazówki i pomoc Pozdrawiam !
autor: Mariusz | 160 | 2009-04-15 15:10:54
1. Przypomnienie hasła napisze w wolnym czasie.
2. Oznacza ze nie powiodło się zapytanie, zrób tak po $zapytanie z insertem daj print_r($zapytanie); i zobacz co się wyświetli wstaw ten kod na sucho w sql i zobaczysz gdzie masz błąd.
autor: Igor | 161 | 2009-04-15 15:35:03
Już wszystko OK dzięki za szybką odpowiedź !
autor: Mariusz | 163 | 2009-04-15 15:42:42
Witam... ja mam ten sam problem co Mariusz tylko że ja jestem zielony w tych sprawach... zrobiłem te 5 plików, utworzyłem tabele w bazie danych, w pliku register.php podałem usera, hasło i nazwę bazy bo to wszystko jeszcze umiem zrobić... wchodzę w register.html wypełniam formularz wyskakuje wiadomość że rejestracja wykonana e-mail wysłany ale tak naprawdę e-mail nie przychodzi a w tabeli nie ma rekordu... co robię nie tak? co muszę zmienić?
autor: Gawron | 193 | 2009-05-22 14:38:11
to co napisałem wyżej zobacz zapytanie bo to ono sie nie wykonuje:
print_r($zapytanie);
weś ten wygenerowany kod wklej do phpmyadmin i zobacz czy sie wykona a jak nie podaj jakie błędy pokazuje.
autor: Igor | 194 | 2009-05-22 18:38:41
Przepraszam bardzo mój błąd :) ten kod jest w 100% poprawny to ja źle wpisałem usera w register.php przepraszam za kłopot. Jeszcze raz powtarzam że ten kod jest w 100% poprawny za co bardzo dziękuje :) Pozdrawiam!
autor: Gawron | 195 | 2009-05-22 19:53:26
Bardzo proszę autora, czy mógłby Pan zrobić że za każdym razem gdy kliknie się na zarejestruj to zmieniałby się token? bo tak to wpisze się token raz i za każdym razem jest poprawny chyba że odświeży się stronę.
autor: :) | 204 | 2009-05-24 16:45:35
Tak wtedy musisz dać w pliku php który wykonuje rejestracje odświeżyć sesje z tokenem, poprzez ponowne jego wylosowanie wtedy nie będzie możliwości kilkakrotnie wcisnąć przycisku rejestruj. Aczkolwiek kilkakrotne jego wciśnięcie nie powoduje problemów bo skrypt sprawdza czy ten login już jest i nie tworzy nowego konta.
autor: Igor | 205 | 2009-05-24 17:22:36
Błagam POMÓŻCIE!
Jak nazwać ten wpis do bazy sql, bo nazwałem go register i nie działa. Formularz się wyświetla, ale maile nie przychodzą do użytkowników. Liczę na waszą pomoc.
autor: SteveMariano | 207 | 2009-05-25 13:49:13
Dobra już po problemie. Znalazłem tego sql pod nazwą użytkownicy, ale mam problem. Nie rozumiem Igor o co chodzi z tym wklejeniem print_r($zapytanie); do phpmyadmin. Gdzie dokładnie mam to wkleić, bo nie czaję. (korzystam z phpmyadmin na serwerze cba.pl). Proszę o dokładne wyjaśnienie gdzie to wkleić, aby działało poprawnie.
autor: SteveMariano | 211 | 2009-05-25 14:46:26
Nie print_r($zapytanie); dajesz w pliku php zaraz pod linijką wykonującą zapytanie ono wyświetli ci to co przesłano do sql kopiujesz to i wklejasz w phpmyadmin w zakładce SQL i patrzysz czy zapytanie generuje błąd na tej podstawie oceniasz czy bład jest w php czy zapytaniu do bazy. zobacz tez opis funkcji print_r() unas
autor: Igor | 212 | 2009-05-25 14:55:25
W pliku register.php tak? Tylko która to linijka, bo jestem ciemny w php.
autor: SteveMariano | 216 | 2009-05-25 15:22:27
ale wynik tego musisz przez firebug firefoxa zobaczyć bo to ajax, bedzie ta informacja zawarta w zakładce "odpowiedź"
autor: Igor | 217 | 2009-05-25 15:39:29
Dziękuję Igor już wszystko działa jak trzeba:). Mam ostatnie pytanko. Czy to działa tylko w firefoxie i czy jest możliwość, aby w Internet Explorerze też działało, bo w nim nie działa:(. Sorki, że Cię tak męczę.
autor: SteveMariano | 218 | 2009-05-25 15:58:14
Dlatego, że szablon swojej strony zrobiłem w internet explorerze i w firefoxie źle mi się wyświetla zresztą sam zobacz: http://marianoitaliano.cba.pl/mi/divy2.html luknij w firefoxie i internet explorerze.
autor: SteveMariano | 219 | 2009-05-25 16:06:18
1. Strona powinna działać po wszystkimi przeglądarkami.
2. Przy takiej nie kompatybilności z przeglądarkami nie wiem co może w jej przypadku powodować nie działanie w ie rejestracji.
3. Nie dałeś linku do formularza rejestracji
autor: Igor | 220 | 2009-05-25 16:47:12
witam ponownie, chcialem zapytac raz jeszcze o przypomnienie hasla do tego skryptu, jest szansa na jego zrobienie?
autor: shiba | 265 | 2009-06-13 23:38:39
PRZYPOMNIENIE HASŁA Oto treść pliku przypomnienie.php dzięki niemu można przypomnieć hasło które się zapomniało.
- Zobacz kod dodany do tego wpisu
-
<form method
="post">
<input type
="text" name
="zapomnialem_hasla" value
="podaj e-amil" />
<input type
="submit" value
="Przypomnij hasło" />
</form
>
<?php
function lacz_bd
()
{
$db = new mysqli
('localhost', 'uzytkownik', 'haslo', 'nazwa_bazy');
if (! $db)
return false;
$db->autocommit(TRUE);
return $db;
}
if(!empty($_POST['zapomnialem_hasla'])){
$mail = $_POST['zapomnialem_hasla'];
$mail = addslashes($mail);
$newpass = rand(10000, 99999);
$db = lacz_bd
();
$zapytanie = "select login from uzytkownicy WHERE mail = '$mailchange'";
$wynik = $db->query($zapytanie);
$wiersz = $wynik->fetch_assoc();
$login = $wiersz['login'];
$zapytanie="update uzytkownicy set haslo=sha1('$newpass') where mail ='$mailchange'";
$wynik = $db->query($zapytanie);
if ($wynik){
$from = 'twoj_mail@wp.pl';
$admin_mail = 'twoj_mail@wp.pl';
$tomail = $mail;
$topic = 'Przypomnienie hasła';
$tresc = 'Dane do logowania w serwisie zostaly zmienione na nastepujace: <br /><br /> Login: '.$login.'<br /> Haslo: '.$newpass.'<br /><br /> Zapraszamy do zalogowania';
mail($tomail,$topic,$tresc."\n\n\n".$stopka, "From: $admin_mail\r\n"."Reply-To: $from\r\nMIME-Version: 1.0\r\n"."Content-type: text/html; charset=iso-8859-2\r\n ");
echo '<br /><b>Zmieniono hasło:</b> Na podany adres: '.$mail.' zostało przesłane nowe hasło wraz z Loginem. ';
}else{
echo '<br /><b>Błąd: Nie ma konta dla podanego adresu.</b>';
}
exit();
?>
autor: Igor | 270 | 2009-06-15 21:46:01
Nie mogę sobie poradzić, wyrzuca błąd: Fatal error Class 'mysqli' not found in C:\usr\krasnal\www\Nowe\aa\register.php on line 5 w linii 5 mamy: $db = new mysqli('localhost', 'aa', 'bb', 'cc'); zatem nie mogę się połączyć z bazą (mysqli), jednak korzystając z mysql_pconnect problemów z połączeniem nie ma. Jak zatem zamienić new mysqli na mysql_pconnect/mysql_select_db lub inaczej rozwiązać problem?
autor: oun | 289 | 2009-06-27 22:19:21
To oznacza ze nie masz zainstalowanego modułu mysqli w PHP przetestuj sobie to na serwerze z PHP5
a jak zamienić na mysql_connect masz tu:
http://funkcje.net/view/4/28/2375/index.html
autor: Igor | 291 | 2009-06-27 22:21:45
Dziękuję Igor, już włączyłem tą funkcję w PHP i wszystko pięknie...a tyle czasu się z tym męczyłem. Mając podejrzenia że mysqli.dll u mnie brak sprawdziłem skrypt na yoyo.pl i albo coś w międzyczasie pomieszałem albo u nich też mysqli nie diała.
autor: oun | 292 | 2009-06-27 23:10:21
OUN, jak zrobiłeś, że wyrzuciło Ci błąd? Mi nic nie wyświetla... pomóż prosze..
autor: gosia463 | 295 | 2009-06-28 15:38:06
gosia463 instalujesz plugin do firefoxa o nazwie firebug i w jego oknie w odpowiedziach widać ten błąd.
Igor a jak zmienić skrypt aby uniemożliwił rejestrację użytkownika z dublującym się adresem e-mail?
Problem istotny przy przypomnieniu hasła gdy użytkowników z jednym adresem e-mail jest kilku.
autor: oun | 300 | 2009-06-29 01:50:20
Witam,
Jak zrobić listę loginów których user nie może zarejestrować? Najlepiej jakby zablokowane loginy byly przechowywane w jakiejś tabeli w sql.
autor: waldek | 329 | 2009-07-11 18:12:54
Aby wprowadzić weryfikację adresu e-mail, tj sprawdzić czy dokonano na niego już rejestracji dodałem w pliku js:
else if(text.responseText=='3'){
registerResult.innerHTML = 'Bł?d:
Na podany adres e-mail dokonano już rejestracji';
}
oraz w php:
- Zobacz kod dodany do tego wpisu
-
$zapytanie = "select mail from tabela WHERE mail='$mail'";
$wynik = $db->query($zapytanie);
$ile_znalezionych2 = $wynik->num_rows;
if($ile_znalezionych2>0){ echo '3';
exit();
}
autor: oun | 331 | 2009-07-12 12:40:26
Dzięki oun, zainstalowałam sobie, ale nie wiem co dalej. Co mam kliknąć, żeby była ta odpowiedź z błędem?
autor: gosia463 | 332 | 2009-07-12 13:23:55
Już się pokazał błąd. Wstawiłąm do SQL i nie wykonuje się. Igor, pomóż, proszę.
- Zobacz kod dodany do tego wpisu
-
<br />
<b>Warning
</b>: mysqli::mysqli() [
<a href='mysqli.mysqli'>mysqli.mysqli
</a>]: (HY000/2003): Can't connect
to MySQL server on 'mysql.ovh.org' (111) in
<b>/home/s/p/y/spyroland/www/register.php
</b> on line
<b
>5
</b><br />
<br />
<b>Warning
</b>: mysqli::autocommit() [
<a href='mysqli.autocommit'>mysqli.autocommit
</a>]: Couldn't fetch
mysqli in
<b>/home/s/p/y/spyroland/www/register.php
</b> on line
<b>8
</b><br />
<br />
<b>Warning
</b>: mysqli::query() [
<a href='mysqli.query'>mysqli.query
</a>]: Couldn't fetch mysqli in
<b>/home/s/p/y/spyroland/www/register.php
</b> on line
<b>42
</b><br />
insert uzytkownicy (id, login, haslo,mail,act) values ('', 'Spyron', sha1('bianca1'), 'gosia463@gmail
.com', '0')
<br />
<b>Warning
</b>: mysqli::query() [
<a href='mysqli.query'>mysqli.query
</a>]: Couldn't fetch mysqli in
<b>/home/s/p/y/spyroland/www/register.php
</b> on line
<b>51
</b><br />
error
autor: gosia463 | 333 | 2009-07-12 14:30:18
Masz błąd połączenia z bazą : Can't connect to MySQL server on mysql.ovh.org czyli nie moge połączyć sie z sewrewerm mysql.ovh.org pewnie podajesz złe dane.
autor: Igor | 334 | 2009-07-12 19:13:17
Igor chciałbym w Twój skrypt rejestracji wstawić opcję wyboru płci i siedzę nad tym już drugi dzień i nic mi z tego nie wychodzi.
Co powinienem dodać w plik js aby wybór (value) zgodny był z wskazaniem i prawidłowo zapisywał się w bazie bo póki co to bez względu na to co wskażę w bazie zapisuje jako mężczyzna (pan)?
Nie mam pewności w czym tkwi błąd, nie mniej w bazie pojawia się wpis odnośnie płci, tyle że zawsze ten sam (pan) i myślę, że to wina błędnego wpisu w js. Proszę wskaż mój błąd...
- Zobacz kod dodany do tego wpisu
-
w html:
<INPUT type="radio" name="plec" value="pan" id="plec">Mężczyzna
<br>
<INPUT type="radio" name="plec" value="pani" id="plec">Kobieta
<br>
w js:
var plec = document.getElementById("plec").value;
if(plec==''){
registerResult.innerHTML = 'Bł?d: Nie podano
<b>Płci
</b>';
}
"
&plec="+plec+
w php:
$zapytanie = "insert anonse (id, login, haslo,mail,plec,aktywacja) values ('', '$login', '$haslo', '$mail','$plec', '0')";
autor: oun | 335 | 2009-07-12 19:52:57
Opisałem to tutaj: http://funkcje.net/view/2/11/2118/index.html
w tym przykładzie zmienna wartosc będzie zawierać płeć, przeanalizuj dobrze odwołania do formularza.
autor: Igor | 337 | 2009-07-13 14:57:34
Igor, miałeś rację, że podałam złe dane. Napisałam mysql.ovh.org a powinno być mysql.60free.ovh.org no i jest wszystko dobrze tylko ciągle E-mail z aktywacją konta nie dochodzi... ale w bazie danych pojawia się użytkownik, ktory się rejestrował. Co mam nie tak?
autor: gosia463 | 338 | 2009-07-13 15:30:26
Jeśli nie wysyła ci maila to znaczy że wystąpił błąd podczas dodawania użytkownika, albo e-mail podany podczas rejestracji przez użytkownika był zły, albo wylądował w spamie.
autor: Igor | 339 | 2009-07-13 17:35:01
Dzięki Igor za podpowiedź, jutro nad tym posiedzę.
A u Gosi to ja myślę, że występuje inny problem, a mianowicie czy oby mysql.60free.ovh.org nie ma zablokowanej funkcji mail?
Polecam sprawdzić na innym serwerze, choćby na yoyo.pl, który to zezwala na wysyłkę 3 czy 5 maili na godzinę.
autor: oun | 341 | 2009-07-13 23:44:04
Bawię się tym od kilku dni i nie mogę wstawić tokena. Wszystkie kody skopiowałem ale zamiast obrazka pokazuje mi się tylko napis token. Co zrobić?
autor: kormateusz | 344 | 2009-07-14 13:38:47
kormateusz ja też tak miałam. Usunęłam po prostu // KOD PLIKU token.php z pliku z tokenem i token działa.
autor: gosia463 | 345 | 2009-07-14 16:48:56
No i problem w tym że dalej nie działa. Próbowałem już różnych kombinacji i nic.
autor: kormateusz | 346 | 2009-07-14 18:48:56
Problem jest chyba całkiem inny bo w ogóle żadnych tokenów mi nie pokazuje. Sprawdziłem kilka innych kodów i dalej jest to samo, zamiast obrazka pokazuje napis "token" albo w ogóle nic nie widać jakby w tym miejscu nic nie miało być.
autor: kormateusz | 347 | 2009-07-15 11:19:08
ja ma tak samo jak kormateusz i tez prubowalem na wszystkie sposoby i nadl taksamo :/
autor: razor | 349 | 2009-07-15 16:01:03
nie ma szans jeśli plik token.php wgrasz i odpalisz bezpośrednio
np. www.mojedomena.pl/token.php i nic nie widzisz to albo nie masz obsługi php, albo nie ma biblioteki GD (wbudowana w php) na serwie
autor: Igor | 351 | 2009-07-15 19:06:20
Da się dodać opcje która zablokuje tworzenie wielu kont na ten sam e-mail ?
autor: PanQ | 357 | 2009-07-16 11:54:32
Tak to robisz tak samo jak sprawdza czy login już istnieje, po prostu przerabiasz na e-mail.
autor: Igor | 361 | 2009-07-16 14:42:25
możesz dokładniej wytłumaczyć bo nie znam sie na php, który kod jest odpowiedzialny za sprawdzanie loginu
autor: PanQ | 363 | 2009-07-16 19:33:12
Witam,
nie wiem o co chodzi. Nie zmieniłem nawet danych do logowania do bazy typu localhost itd. Nawet jak dopisuje linijkę print_r($zapytanie); to nie działa. W ogóle nie widać zeby połączyło się z bazą. Nawet nie wyskakuje błąd ze dane do bazy są złe. Podaje linka do strony. http://www.kruchy.pl/logowanie/register.html proszę o pomoc
autor: krystek | 373 | 2009-07-22 12:17:44
Masz złe dane do połączenia z bazą.
autor: Igor | 375 | 2009-07-22 13:16:41
Witam ponownie, Już wiem gdzie miałem błąd ale teraz wyswietla mi się taki błąd w piliku przypomnienie.php ...
Parse error: syntax error, unexpected $end in /home/goldapio/domains/kruchy.pl/public_html/logowanie/przypomnienie.php on line 40 nic nie zmieniałem. Skopiowałem tylko kod podany przez Igora i nie działa. Proszę o pomoc
autor: krystek | 378 | 2009-07-22 17:26:27
a kopiujesz osobno html i php? bo php nie ma 40 lini
autor: Igor | 380 | 2009-07-22 21:26:05
Tak, dokładnie.
W pliku przypomnienie mam ten podany poniżej natomiast zrobiłem plik przyp1.php w którym wpisałem formularz z akcją do pliku przypomnienie.php Tutaj można zobaczyć błąd www.kruchy.pl/logowanie/przyp1.php
- Zobacz kod dodany do tego wpisu
-
<?php
function lacz_bd
()
{
$db = new mysqli
('localhost', 'xxx', 'xxx', 'xxx');
if (! $db)
return false;
$db->autocommit(TRUE);
return $db;
}
if(!empty($_POST['zapomnialem_hasla'])){
$mail = $_POST['zapomnialem_hasla'];
$mail = addslashes($mail);
$newpass = rand(10000, 99999);
$db = lacz_bd
();
$zapytanie = "select login from uzytkownicy WHERE mail = '$mailchange'";
$wynik = $db->query($zapytanie);
$wiersz = $wynik->fetch_assoc();
$login = $wiersz['login'];
$zapytanie="update uzytkownicy set haslo=sha1('$newpass') where mail ='$mailchange'";
$wynik = $db->query($zapytanie);
if ($wynik){
$from = 'twoj_mail@wp.pl';
$admin_mail = 'twoj_mail@wp.pl';
$tomail = $mail;
$topic = 'Przypomnienie hasła';
$tresc = 'Dane do logowania w serwisie zostaly zmienione na nastepujace: <br /><br /> Login: '.$login.'<br /> Haslo: '.$newpass.'<br /><br /> Zapraszamy do zalogowania';
mail($tomail,$topic,$tresc."nnn".$stopka, "From: $admin_mailrn"."Reply-To: $fromrnMIME-Version: 1.0rn"."Content-type: text/html; charset=iso-8859-2rn ");
echo '<br /><b>Zmieniono hasło:</b> Na podany adres: '.$mail.' zostało przesłane nowe hasło wraz z Loginem. ';
}else{
echo '<br /><b>Błąd: Nie ma konta dla podanego adresu.</b>';
}
exit();
?>
autor: krystek | 381 | 2009-07-23 09:57:15
Zabrakło jednego }
- Zobacz kod dodany do tego wpisu
-
<?php
function lacz_bd
()
{
$db = new mysqli
('localhost', 'xxx', 'xxx', 'xxx');
if (! $db)
return false;
$db->autocommit(TRUE);
return $db;
}
if(!empty($_POST['zapomnialem_hasla'])){
$mail = $_POST['zapomnialem_hasla'];
$mail = addslashes($mail);
$newpass = rand(10000, 99999);
$db = lacz_bd
();
$zapytanie = "select login from uzytkownicy WHERE mail = '$mailchange'";
$wynik = $db->query($zapytanie);
$wiersz = $wynik->fetch_assoc();
$login = $wiersz['login'];
$zapytanie="update uzytkownicy set haslo=sha1('$newpass') where mail ='$mailchange'";
$wynik = $db->query($zapytanie);
if ($wynik){
$from = 'twoj_mail@wp.pl';
$admin_mail = 'twoj_mail@wp.pl';
$tomail = $mail;
$topic = 'Przypomnienie hasła';
$tresc = 'Dane do logowania w serwisie zostaly zmienione na nastepujace: <br /><br /> Login: '.$login.'<br /> Haslo: '. $newpass.'<br /><br /> Zapraszamy do zalogowania';
mail($tomail,$topic,$tresc."nnn".$stopka, "From: $admin_mailrn"."Reply-To: $fromrnMIME-Version: 1.0rn"."Content-type: text/html; charset=iso-8859-2rn ");
echo '<br /><b>Zmieniono has?o:</b> Na podany adres: '.$mail.' zostało przesłane nowe hasło wraz z Loginem. ';
}else{
echo '<br /><b>Błąd: Nie ma konta dla podanego adresu.</b>';
}
}
?>
autor: Igor | 383 | 2009-07-23 12:34:42
Coś dziwnie działa ten skrypt.
Powyższe błędy zostały rozwiązane, ale... :)
Kilka nowych błędów/niedopracowań:
1. Gdy podaje dowolne maile w formularzu, wiadomość z nowym hasłem dochodzi nawet pod adres którego nie ma w bazie. Jak wpiszesz Swój mail Igor to też dostaniesz wiadomość z mojej stronki o podobno zmienionym haśle (ciekawe)
2. Nawet jeśli mam danego użytkownika o przykładowym mailu kowalski@o2.pl to i tak skrypt nie aktualizuje rekordu w bazie.
3. Treść wiadomości jaką otrzymuje na maila to: (podane w kodzie), natomiast nadawca wiadomości to taki zapis: "Reply-To: -Version: 1.0rnContent-type: text/html ; charset=iso-8859-2rn ".
Takie mam kolejne pytania do Ciebie Igor. Rozwiążesz mi te 3 punkty? Ciekawy jest ten skrypt, chciałbym aby działał na 100% :)
autor: krystek | 385 | 2009-07-23 13:59:27
Ten skrypt to nie gotowe rozwiązanie a przykład aby działał profesjonalnie trzeba przejrzeć troche funkcje.net to znaczy poczytać i włożyć w to troche pracy, gotowe instalacje przyjmujemy jako zlecenia.
autor: Igor | 386 | 2009-07-23 19:00:39
A ja mam w dalszym ciągu problem z tym skryptem. Męczę się z nim już od 5 dni. Ale po kolei. Serwer Krasnala w wersji 2.7. Apache i MySQL chodzą. Utworzyłem sobie nową bazę danych o nazwie "baza" a wszystkie pliki wrzuciłem na serwer tak jak jest to napisane w instrukcji. Dodatkowo w pliku register.js zmieniłem ścieżkę do pliku "register.php" na "../register.php". W pliku register.php ustawiłem serwer localhost, usera root, hasło krasnal, a nazawa bazy - baza. Odpalam sobie z poziomu przeglądarki localhost/nowe/register.html rejestruję się, otrzymuję komunikat, że wszystko ok. Mail nie przychodzi, ani nie tworzy się żadna tabela. Utworzyłem więc tabelę ręcznie z instrukcji poniżej. Tabela jest ale żaden użytkownik się nie dodaje. Dodając kodzik print_r($zapytanie) nic nie pokazuje. Jakaś pomoc? Bo już mi ręce opadają.
autor: benny | 394 | 2009-08-01 10:58:07
Jeśli kod: print_r($zapytanie) nic ci nie wyświetla to znaczy, że żadne zapytanie nie zostaje wykonane w bazie MySQL, sprawdź gdzie gubisz treść zapytania, być może masz literówkę w ścieżkach..
autor: Divix | 395 | 2009-08-01 14:28:12
Witam,
1. Jak zrobić aby podczas rejestracji dodalo kiedy zostal zarejestrowany user?
2. Na podstawie wyboru płci - nie dawanie wyboru podczas rejestracji tylko danie domyslnie np. "nie wiadomo". [Pozniej zrobilbym edycje po zalogowaniu]
autor: wojtek | 396 | 2009-08-03 14:36:23
Nie wiem gdzie mam problem. Wyskakuje, że zarejstriwane a mimo to nie mam maila ani w bazie.. Spradziłem tym prin_r i wyszłocoś takiego (#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '$zapytanie = "insert uzytkownicy (id, login, haslo,mail,act) values ('', '$login' at line 1)
autor: Rutuki | 409 | 2009-08-13 14:01:58
Igor bądź proszę łaskaw i wyjaśnij po co poniższy warunek i jakie jego zadanie?
autor: oun | 414 | 2009-08-17 00:31:17
To masz do wyświetlenia info ze token jest zły
autor: Igor | 415 | 2009-08-17 01:34:25
Witam. Dopiero zaczynam swoja przygode z tworzeniem stron więc proszę o wyrozumiałość;) Mam kilka pytań. W pierwszym komentarzu podales baze sql, czy trzeba to gdzieś umieścić , a jak tak to gdzie? Kolejne pytanie dotyczy tresci register.php. Na koncu znajdują sie dwukrotnie e-maile 'twoja@domena.net'. Czy należy tutaj podać mój mail, a jeśli tak to gdzie mam podać hasło do niego bo w jaki sposób miałby z niego skorzystać. Pozdrawiam i czekam na odpowiedź
autor: pawel | 422 | 2009-08-19 18:38:57
Będę szczery zanim zabierzesz się za ten kod kup sobie książkę o php i wróć do tematu za 2-3 miesiące bo tu nie mam ci jak pomóc.
autor: Igor | 423 | 2009-08-19 22:25:19
Witam
W polu formularza rejestracyjnego register.html po wpisaniu wszystkich danych i potwierdzeniu przyciskiem zarejestruj, nie przeładowuje strony i wyświetla komunikat: Błąd na stronie. Wiersz: 29, Znak 18, Błąd: brak definicji 'Ajax'
W czym jest błąd?
autor: Filip | 457 | 2009-08-30 03:37:50
pewnie prototype nie zaciągnołeś
autor: igor | 459 | 2009-08-30 11:39:53
Dzięki Igor za radę. Prototype przesłałem na FTP z niezmienioną nazwą, czyli prototype-1.6.0.3.js, a powinno być prototype.php
Problem rozwiązany. Rejestracja użytkownika działa prawidłowo.
Mam teraz problem z logowaniem! - wywala taki błąd:
- Zobacz kod dodany do tego wpisu
-
Warning
: session_start() [function.session
-start
]: Cannot send session cache limiter
- headers already sent
(output started at
/home
/gpz629
/public_html
/praca
/kredyty
/rejestr
/logowanie
/logowanie
.php
:6) in
/home
/gpz629
/public_html
/praca
/kredyty
/rejestr
/logowanie
/logowanie
.php on line
15
autor: Filip | 461 | 2009-08-30 12:41:58
Może pomoże wstawienie tego na skrajnych granicach dokumentu, jeszcze przed session_start();.
Po roku chyba nikt tego nie widzi, ale nowy gość...
autor: Darchiv | 6359 | 2010-09-28 21:59:43
autor: matusek19 | 12403 | 2011-04-24 23:42:38
Jestem nowy i troche nie wiem o co chodzi ;D ale se poradze
autor: mlodyjntr | 12572 | 2011-09-06 15:09:47
Modowe inspiracje |
Android Gry i Aplikacje |
ZaplanujTransport.pl: Przeprowadzki, transport, aukcje |
Logo dla firmy |
Change Tires - Car Weather Forecast Reminder |
Laminas: MVC Framework for PHP |
IT Books Reviews and Programming: JS, JAVA, PHP, ANDROID, CSS |
Katalog roślin |
Programming articles: JAVA, PHP, C++, Python, JavaScript |
Kancelaria Adwokacka Łukasz Huszno