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

Rejestracja w tym samym pliku PHP, z użyciem Bootstrap

0 głosów
249 wizyt
pytanie zadane 21 grudnia 2019 w PHP przez ariva6152 Użytkownik (570 p.)
edycja 7 stycznia 2020 przez ariva6152
tak tak tak tak tak tak tak tak

1 odpowiedź

0 głosów
odpowiedź 27 grudnia 2019 przez c00l h34d Użytkownik (570 p.)

<form action="rejestr.php"(...)>

Ta część przenosi cię do pliku rejestr.php a w tym pliku nie widze żeby przenosiło cię z powrotem do pliku w której masz rejestrację. Moim zdaniem powinieneś tego nie rozdzielać a zrobić rejestrację w jednym pliku. Tu masz przykład jak jest to zrobione u mnie:
 

<?php
 session_start();
 if(isset($_POST['email']))
 {
	 $OK = true;
	 $nick=$_POST['nick'];
	 if((strlen($nick)<4) || (strlen($nick)>20))
	 {
		 $OK=false;
		 $_SESSION['e_nick']="Nick musi posiadać od 4 do 20 znaków!";
	 }
	 if (ctype_alnum($nick)==false)
	 {
		$OK=false;
		$_SESSION['e_nick1']="Nick może się składać tylko ze znaków alfanumerycznych (bez znaków diakrytycznych)";
	 }
	 $haslo0=$_POST['pass0'];
	 if((strlen($haslo0)<8) || (strlen($haslo0)>32))
	 {
		 $OK=false;
		 $_SESSION['e_haslo1']="Hasło powinno mieć od 8 do 32 znaków!";
	 }
	 $haslo1=$_POST['pass1'];
	 if($haslo1 != $haslo0)
	 {
		 $OK=false;
		 $_SESSION['e_haslo2']="Hasła nie są identyczne!";
	 }
	 
	 $haslo_hash= password_hash($haslo0, PASSWORD_DEFAULT);
	 
	 $email=$_POST['email'];
	 
	 $emailB = filter_var($email, FILTER_SANITIZE_EMAIL);
	 if ((filter_var($emailB, FILTER_VALIDATE_EMAIL)==false) || $emailB!=$email)
	 {
		 $OK=false;
		 $_SESSION['e_email']="Podaj poprawny adres e-mail";
	 }
	 if(!isset($_POST['reg']))
	 {
		 $OK=false;
		 $_SESSION['e_chkbox']="Prosze zaakceptować regulamin!";
	 }
	//CAPTCHA CODES//
	 if ($odp->success==false)
	 {
		 $OK=false;
		 $_SESSION['e_bot']="Jesteś botem?";
	 }
	 $_SESSION['fr0']=$nick;
	 $_SESSION['fr1']=$haslo0;
	 $_SESSION['fr2']=$haslo1;
	 $_SESSION['fr3']=$email;
	 if (isset($_POST['reg']))
	 {
	 $_SESSION['fr4']=true;
	 }
	 require_once "baza.php";
	 mysqli_report(MYSQLI_REPORT_STRICT);
	 try
	 {
		 $polacz = new mysqli($host, $dbuser, $dbpass, $dbname);
		 if ($polacz->connect_errno!=0)
	{
		throw new Exception(mysqli_connect_errno());
	}
	else
	{
		$rez = $polacz->query("SELECT id FROM uzytkownicy WHERE email='$email'");
		if(!$rez) throw new Exception($polacz->error);
		$hme=$rez->num_rows;
		if($hme>0)
		{
			$OK=false;
			$_SESSION['e_email2']="Istnieje już konto z podanym adresem e-mail!";
		}
		$rez1 = $polacz->query("SELECT id FROM uzytkownicy WHERE login='$nick'");
		if(!$rez1) throw new Exception($polacz->error);
		$hmn=$rez1->num_rows;
		if($hmn>0)
		{
			$OK=false;
			$_SESSION['e_nick2']="Istnieje już konto o podanym nicku!";
		}
			 if ($OK==true)
		{
			$_SESSION['kod']=uniqid();
			$kod=$_SESSION['kod'];
			if($polacz->query("INSERT INTO uzytkownicy VALUES(NULL, '$nick', '$haslo_hash', '$email', 100, 100000, 0, now() + INTERVAL 14 DAY, 0, '$kod', 0, 0, 0, 0, 0, 0, 0, 100, 300, 100, 0, 0, 0, 0, 0, now())"))
			{
				$_SESSION['okreg']=true;
				header('Location: zarejestrowany');
			}
			else
			{
				throw new Exception($polacz->error);
			}
		}
		$polacz->close();
	}
	 }
	 catch(Exception $e)
	 {
		 echo '<span style="color:black;">Błąd serwera. Przepraszamy za niedogodności!</span>';
	 }
 }
?>

i reszta pliku:
 

<div id="container3">
    <center><br />
	<form method="post">
	Nick <br /> <input type="text" value="<?php 
	if(isset($_SESSION['fr0']))
	{
		echo $_SESSION['fr0'];
		unset ($_SESSION['fr0']);
	}
	?>" name="nick" /> <br />
<?php
	if (isset($_SESSION['e_nick']))
	{
	echo '<div class="error">'.$_SESSION['e_nick'].'</div>';
	unset($_SESSION['e_nick']);
	}
	if (isset($_SESSION['e_nick1']))
	{
	echo '<div class="error">'.$_SESSION['e_nick1'].'</div>';
	unset($_SESSION['e_nick1']);
	}
	if (isset($_SESSION['e_nick2']))
	{
	echo '<div class="error">'.$_SESSION['e_nick2'].'</div>';
	unset($_SESSION['e_nick2']);
	}
?>
	Hasło <br /> <input type="password" value="<?php 
	if(isset($_SESSION['fr1']))
	{
		echo $_SESSION['fr1'];
		unset ($_SESSION['fr1']);
	}
	?>" name="pass0" /> <br />
<?php
	if (isset($_SESSION['e_haslo1']))
	{
	echo '<div class="error">'.$_SESSION['e_haslo1'].'</div>';
	unset($_SESSION['e_haslo1']);
	}
?>
	Powtórz hasło <br /> <input type="password" value="<?php 
	if(isset($_SESSION['fr2']))
	{
		echo $_SESSION['fr2'];
		unset ($_SESSION['fr2']);
	}
	?>" name="pass1" /> <br />
<?php
	if (isset($_SESSION['e_haslo2']))
	{
	echo '<div class="error">'.$_SESSION['e_haslo2'].'</div>';
	unset($_SESSION['e_haslo2']);
	}
?>
	E-mail <br /> <input type="text" value="<?php 
	if(isset($_SESSION['fr3']))
	{
		echo $_SESSION['fr3'];
		unset ($_SESSION['fr3']);
	}
	?>" name="email" /> <br />
<?php
	if (isset($_SESSION['e_email']))
	{
	echo '<div class="error">'.$_SESSION['e_email'].'</div>';
	unset($_SESSION['e_email']);
	}
	if (isset($_SESSION['e_email2']))
	{
	echo '<div class="error">'.$_SESSION['e_email2'].'</div>';
	unset($_SESSION['e_email2']);
	}
?>
	<br /><input type="checkbox" value="<?php 
	if(isset($_SESSION['fr4']))
	{
		echo "checked";
		unset($_SESSION['fr4']);
	}
	?>" name="reg" />Akceptuję <a href="regulamin.php" span style="text-decoration: none"> <span style="color: orange">regulamin</a><br />
	<?php
	if (isset($_SESSION['e_chkbox']))
	{
	echo '<div class="error">'.$_SESSION['e_chkbox'].'</div>';
	unset($_SESSION['e_chkbox']);
	}
	?>
	<br /><br /><div class="g-recaptcha" data-sitekey="6LdD5LcUAAAAAMlgK7FJYyDa-VglUu-HSjKViNu2"></div>
	<?php
	if (isset($_SESSION['e_bot']))
	{
	echo '<div class="error">'.$_SESSION['e_bot'].'</div>';
	echo '<div class="bot">Boop. Beep. Beep. Boop?</div>';
	unset($_SESSION['e_bot']);
	}
	?>
      <br/>
      <input type="submit" value="Zarejestruj">
    </form>
    </center>
	</div>
	</div>

Może coś cię to naprowadzi i pomoże ;)

Podobne pytania

+1 głos
3 odpowiedzi 456 wizyt
pytanie zadane 19 października 2021 w Offtop przez Posejdon Początkujący (490 p.)
+1 głos
1 odpowiedź 250 wizyt
pytanie zadane 18 lutego 2017 w Hostingi, domeny, usługi przez baid Nowicjusz (220 p.)
0 głosów
0 odpowiedzi 1,138 wizyt

93,776 zapytań

142,736 odpowiedzi

323,388 komentarzy

63,381 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

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...