Tak więc mam problem ze skryptem rejestracji, przedstawia się następująco (plik:rejestruj.php):
<?php
{
<html xmlns="http://www.w3.org/1999/xhtml" lang="pl" xml:lang="pl">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<br>
Błąd 403 - Dostęp zabroniony.
</html>
');
}
?>
<html xmlns="http://www.w3.org/1999/xhtml" lang="pl" xml:lang="pl">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" type="text/css" href="styles/default/main.css" media="screen" />
</head>
<br>
<br>
<br>
<?php
//Pobieranie danych do łączenia
require('config.php');
//Zmienne z danymi rejestracyjnymi
$data_rejestracji = date("Y-m-d"); $adres_ip = $_SERVER['REMOTE_ADDR'];
$data_urodzenia[rok] = $_POST['data_urodzenia[rok]'];
$data_urodzenia[miesiac] = $_POST['data_urodzenia[miesiac]'];
$data_urodzenia[dzien] = $_POST['data_urodzenia[dzien]'];
$data_urodzenia = date($_POST['data_urodzenia']['rok'].'-'.$_POST['data_urodzenia']['miesiac'].'-'.$_POST['data_urodzenia']['dzien']);
echo '<br><center><font size="4">Rejestracja nowego użytkownika</font></center><br><br>';
//Warunki rejestracji
if (empty($_POST['login'])) {
echo '<br><br><br><font size="3" color="red">Błąd:</font><br><br>Nie wypełniłeś pola <strong>Login</strong>, które jest wymagane do rejestracji.<br><br>Popraw błąd klikając wstecz lub klikając <a style="text-decoration:underline;" href="index.php?pokaz=rejestracja">tutaj</a>.<br><br><br>'; }
else {
if (empty($_POST['haslo'])) {
echo ('<br><br><br><font size="3" color="red">Błąd:</font><br><br>Nie wypełniłeś pola <strong>Hasło</strong>, które jest wymagane do rejestracji.<br><br>Popraw błąd klikając wstecz lub klikając <a style="text-decoration:underline;" href="index.php?pokaz=rejestracja">tutaj</a>.<br><br><br>'); }
else {
if (empty($_POST['haslo2'])) {
echo ('<br><br><br><font size="3" color="red">Błąd:</font><br><br>Nie wypełniłeś pola <strong>Potwierdź hasło</strong>, które jest wymagane do rejestracji.<br><br>Popraw błąd klikając wstecz lub klikając <a style="text-decoration:underline;" href="index.php?pokaz=rejestracja">tutaj</a>.<br><br><br>'); }
else {
if (empty($_POST['imie'])) {
echo ('<br><br><br><font size="3" color="red">Błąd:</font><br><br>Nie wypełniłeś pola <strong>Imię</strong>, które jest wymagane do rejestracji.<br><br>Popraw błąd klikając wstecz lub klikając <a style="text-decoration:underline;" href="index.php?pokaz=rejestracja">tutaj</a>.<br><br><br>'); }
else {
if (empty($_POST['email'])) {
echo ('<br><br><br><font size="3" color="red">Błąd:</font><br><br>Nie wypełniłeś pola <strong>Email</strong>, które jest wymagane do rejestracji.<br><br>Popraw błąd klikając wstecz lub klikając <a style="text-decoration:underline;" href="index.php?pokaz=rejestracja">tutaj</a>.<br><br><br>'); }
else {
if($_POST['captcha'] != $_SESSION['captcha'])
{
echo '<br><br><br><font size="3" color="red">Błąd:</font><br><br>Niepoprawnie przepisałeś <strong>kod z obrazka</strong>.<br><br>Popraw błąd klikając wstecz lub klikając <a style="text-decoration:underline;" href="index.php?pokaz=rejestracja">tutaj</a>.<br><br><br>'; }
else {
if ($_POST['haslo']==$_POST['haslo2'])
{
$czy_istnieje = mysql_query("SELECT * FROM `uzytkownicy` WHERE login = '$login'"); $czy_istnieje_email = mysql_query("SELECT * FROM `uzytkownicy` WHERE email = '$email'");
if ($czy_istnieje==0)
{
if ($czy_istnieje_email==0)
{
$zapytanie="INSERT INTO uzytkownicy (login,haslo,imie,nazwisko,plec,gg,miasto,data_rejestracji,adres_ip,data_uro
dzenia,email,aktywacja) VALUES('$login','$haslo','$imie','$nazwisko','$plec','$numer_gg','$miasto','$data_rejestracji','$adres_ip','$data_urodzenia','$email','0')";
echo('<strong>Wynik:</strong><br><br><font color="green">Konto '.$login.' zostało utworzone.</font><br><br><strong>Dane konta:</strong><br><br>Login: '.$login.' .<br>Hasło: '.$haslo2.' .<br>Imię: '.$imie.' .<br>Nazwisko: '.$nazwisko.' .<br>Płeć: '.$plec.' .<br>Numer GG: '.$numer_gg.' .<br>Miasto: '.$miasto.' .<br>Data urodzenia: '.$data_urodzenia.' .<br>Email: '.$email.' .<br><br><br><strong>Data rejestracji:</strong> '.$data_rejestracji.' .<br><strong>Adres IP z którego się zarejestrowano:</strong> '.$adres_ip.' .<br><br><br>'); }
else {
echo '<br><br><br><font size="3" color="red">Błąd:</font><br><br>Podany Email jest już używany w bazie danych.<br><br>Popraw błąd klikając wstecz lub klikając <a style="text-decoration:underline;" href="index.php?pokaz=rejestracja">tutaj</a>.<br><br><br>'; }
}
else {
echo '<br><br><br><font size="3" color="red">Błąd:</font><br><br>Podany Login jest już używany w bazie danych.<br><br>Popraw błąd klikając wstecz lub klikając <a style="text-decoration:underline;" href="index.php?pokaz=rejestracja">tutaj</a>.<br><br><br>'; }
} }
}
}
}
}
}
?>
</html>
Mam problem z captcha'ą, mianowicie za każdym razem występuje błąd przepisywania przepisany kod nie zgadza się z sesją :/
Formularz rejestracyjny:
<?php
if ( !defined('TYLKO_ZE_STRONY') )
{
die('
<html xmlns="http://www.w3.org/1999/xhtml" lang="pl" xml:lang="pl">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Błąd 403 - Dostęp zabroniony.
');
}
?>
<?php
echo '<br><center><font size="4">Rejestracja nowego użytkownika
</font></center><br><br>';
?>
Wypełnij poniższy formularz aby dodać nowego użytkownika:
<br><form action="index.php?pokaz=rejestruj" method="post"> Powtórz hasło:
<font color="red">*
</font><br><br><input name="haslo2" type="password" value="" size="35"/><br><br>Nazwisko:
<font color="yellow">*
</font><br><br><input name="nazwisko" type="text" value="" size="35"/><br><br>Miasto:
<font color="yellow">*
</font><br><br><input name="miasto" type="text" value="" size="35"/><br><br><select name="data_urodzenia[dzien]"><?php for ($i=1; $i<=31; $i++){echo "<option value='$i'>$i
</option>";}?>
</select> -
<select name="data_urodzenia[miesiac]"><?php for ($i=1; $i<=12; $i++){echo "<option value='$i'>$i
</option>";}?>
</select> -
<select name="data_urodzenia[rok]"><?php for ($i=2010; $i>=1900; $i=$i-1){echo "
<option value='$i'>$i
</option>";} ?>
</select> <img src="captcha.php" alt="" style="vertical-align: middle" /> <input name="captcha" style="width: 100px; height: 20px; vertical-align: middle;" type="text" /><br><br> <font color="red">*
</font> - Dane wymagane do procesu rejestracji.
<br> <font color="yellow">*
</font> - Dane nie wymagane aczkowliek zaleca się ich wypełnienie.
<br>