Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]system rejestracji - problem
zomb
post
Post #1





Grupa: Zarejestrowani
Postów: 68
Pomógł: 1
Dołączył: 7.06.2009
Skąd: Sanok

Ostrzeżenie: (0%)
-----


Witam,
Tworze prosty system rejestracji użytkowników

Mam kilka problemów:
1) checkmail nie działa
2) gdy nie wypełni sie wszystkich pól rekord i tak zostanie dodany
3) co zrobić aby po poprawnej rejestracji wyświetlało się tylko 'konto zostalo utworzone' bez $main

Demo: http://zomb.zproject.pl/adduser.php

Za pomoc z góry dziękuje

Ten post edytował zomb 20.02.2010, 12:43:25
Go to the top of the page
+Quote Post
maxil
post
Post #2





Grupa: Zarejestrowani
Postów: 212
Pomógł: 11
Dołączył: 8.11.2008
Skąd: Sieradz

Ostrzeżenie: (10%)
X----


1. do sprawdzenia poprawnosci emaila użyj:

  1. filter_var($email, FILTER_VALIDATE_EMAIL);


$email jest to email do sprawdzenia poprawności

2. sprawdzaj warunkiem if czy jakieś dane zostały podane przykład:

  1. if (isset($_POST['cos']) && isset($_POST['nacos']))
  2. {
  3. //rejestracja
  4. }
  5. else
  6. {
  7. echo 'wszystkie dane nie zostały podane';
  8. }


3. również warunek if przykład:
  1. if (isset($_POST['submited']))
  2. {
  3. //rejestracja
  4. }
  5. else
  6. {
  7. //formularz
  8. }
Go to the top of the page
+Quote Post
zomb
post
Post #3





Grupa: Zarejestrowani
Postów: 68
Pomógł: 1
Dołączył: 7.06.2009
Skąd: Sanok

Ostrzeżenie: (0%)
-----


1) gdy robie:
  1. if (filter_var($email, FILTER_VALIDATE_EMAIL)) {

nie bardzo to dziala, caly czas wyskakuje ze email jest zly

2) przeciez mam:
  1. if (isset($_POST['login']) and isset($_POST['password']) and isset($_POST['password2']) and isset($_POST['email'])) {


3) tez chyba nie jest trafne ;/

Ten post edytował zomb 19.02.2010, 18:19:13
Go to the top of the page
+Quote Post
maxil
post
Post #4





Grupa: Zarejestrowani
Postów: 212
Pomógł: 11
Dołączył: 8.11.2008
Skąd: Sieradz

Ostrzeżenie: (10%)
X----


bo filter_var zrób w funkcji
  1. function filterValidateEmail($email)
  2. {
  3. return filter_var($email, FILTER_VALIDATE_EMAIL);
  4. }


a dlaczego nie jest trafne?
jak ci sie nie podoba takie to zrób:

  1. if (empty($_POST['login']) or empty($_POST['password']) or empty($_POST['password2']) or empty($_POST['email']))
  2. {
  3. echo 'nie podano wszystkich wymaganych danych.';
  4. }
  5. else
  6. {
  7. //rejestracja
  8. }
Go to the top of the page
+Quote Post
zomb
post
Post #5





Grupa: Zarejestrowani
Postów: 68
Pomógł: 1
Dołączył: 7.06.2009
Skąd: Sanok

Ostrzeżenie: (0%)
-----


ok, już wszystko działa oprócz sprawdzania poprawności tego maila, mógłbyś mi to 'wmontować' do skryptu?
http://wklej.org/hash/dc200fdc6d0/

pomoże ktoś ze zrobieniem tego checkMail ?
Go to the top of the page
+Quote Post
kielich
post
Post #6





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

Ostrzeżenie: (20%)
X----


słuchaj zrób sobie to w bardzo przyjemny sposób mianowicie JS
czyli:
W head daj :
Kod
<script language="javascript">
function SprawdzFormularz(f) {
if (f.email.value=='') { alert('Nie podałeś maila'); return false; }
if ( ((f.email.value.indexOf('@',1))==-1)||(f.email.value.indexOf('.',1))==-1 ) { alert('Adres email jest zły.'); return false; }
else { return true; } }
</script>


no i formularz np.
Kod
<form action="kontakt.php" method="POST" onsubmit="return SprawdzFormularz(this)">
...
...
<input type="text" name="email" />
..
..
</form>
Go to the top of the page
+Quote Post
maxil
post
Post #7





Grupa: Zarejestrowani
Postów: 212
Pomógł: 11
Dołączył: 8.11.2008
Skąd: Sieradz

Ostrzeżenie: (10%)
X----


pozwoliłem sobie nieco zmodyfikować twój kod oto on:

skrypt który dałeś:
http://wklej.org/id/283628/

funkcja do sprawdzania maila:
http://wklej.org/id/283620/

zapisz ten plik jako User.php
po return na końcu dodaj ;
zapomniałem wpisać (IMG:style_emoticons/default/smile.gif)

Ten post edytował maxil 21.02.2010, 23:47:50
Go to the top of the page
+Quote Post
Rysh
post
Post #8





Grupa: Zarejestrowani
Postów: 821
Pomógł: 111
Dołączył: 11.09.2006
Skąd: Biała Podlaska

Ostrzeżenie: (0%)
-----


  1. if (sha1(md5($_POST['password'])) == $_POST['password2']) {
  2. //to sie nie wykona ;)
  3. }

password - przepuszczone przez md5 i sha1
password2 - czysty tekst
Go to the top of the page
+Quote Post
maxil
post
Post #9





Grupa: Zarejestrowani
Postów: 212
Pomógł: 11
Dołączył: 8.11.2008
Skąd: Sieradz

Ostrzeżenie: (10%)
X----


to password2 również zakoduj tak samo albo sprawdź przed zakodowaniem czy oba hasła są takie same.
wykaż trochę własnej inicjatywy nie czekaj aż ci ktoś napisze jak to zrobić
Go to the top of the page
+Quote Post
zomb
post
Post #10





Grupa: Zarejestrowani
Postów: 68
Pomógł: 1
Dołączył: 7.06.2009
Skąd: Sanok

Ostrzeżenie: (0%)
-----


zrobiłem
  1. if ($_POST['password'] == $_POST['password2'])

i jest dobrze..
co do mojej inicjatywy to nigdy nie robiłem nic z funkcjami wiec nie miałem zielonego pojęcia jak to zrobić.. teraz już wiem sprawa zamknięta..
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 01:14