Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [wolontariat] dokończenie skryptu formularza - pomoc
Forum PHP.pl > Inne > Giełda ofert > Poszukuję
VanShooter
Witam,

Potrzebuje pomocy w dokończeniu skryptu formularza , który znajduje się pod adresem
elsa.poznan.pl/rejestracja/rejestracja.php

Kto może pomóc ? : )

Rejestracja jest potrzebna na zapisywanie się osób z całej Europy na ICM , który odbędzie się w Poznaniu. Myślę, że można napisać na dole kto pomógł smile.gif

Proszę o kontakt.
gigzorr
a co tutaj niby dana osoba ma dokonczyc?
ja widze : Problem z MySQL.

pokaz kod php
VanShooter
Cytat
<?php
include ('includes/config_includes.php'); // Odniesienie Do pliku który łączy nas z DB


//jesli byl wyslany formularz przechodzimy do obsługi danych
if(isset($_POST['wyslij']))
{

//Obrabiamy wszystkie zmienne przekazane metodą POST
foreach ($_POST AS $klucz => $wartosc)
{
$wartosc= trim($wartosc);//usuwamy białe znaki
if (get_magic_quotes_gpc())
$wartosc= stripslashes($wartosc);
$wartosc=htmlspecialchars($wartosc, ENT_QUOTES);
$_POST[$klucz]=$wartosc;
}

$login=$_POST['login'];
$haslo=$_POST['haslo'];
$re_haslo=$_POST['re_haslo'];
$email=$_POST['email'];

$blad_txt='';
$blad=false;




//Sprawdzamy czy użytkownik o danym Loginie nie jest juz zajęty
$zapytanie_sprawdz_usera= "select * from users where user_name='$login' ";
$wynik = mysql_query($zapytanie_sprawdz_usera);
if(!$wynik)
{
echo 'Przepraszamy rejestracja w tej chwili jest nie mozliwa. Prosze spróbowac pozniej
.';
exit;
}
if(mysql_num_rows($wynik)>0)
{
$sprawdz_login=1;
}

// Sprawdzamy czy adres email sie nie powtarza.
$zapytanie_sprawdz_email= "select * from users where user_email ='$email' ";
$wynik_email = mysql_query($zapytanie_sprawdz_email);
if(!$wynik_email)
{
echo 'Przepraszamy rejestracja w tej chwili jest nie mozliwa. Prosze spróbowac pozniej
.';
exit;
}
if(mysql_num_rows($wynik_email)>0)
{
$sprawdz_email=1;
}


//sprawdzamy czy poprawnie jest wypełnine pole login

if(empty($login)){
$info_txt_nick.='<img src="x.gif" /> <font color="#B20000"> Pole nie zostało wypełnione.</font>';
$blad=true;
}
else if($sprawdz_login==1){
$info_txt_nick.='<img src="x.gif" /> <font color="#B20000"> Login o takiej nazwie już istnieje.</font>';
$blad=true;
}
else if(strlen($login)<5){
$info_txt_nick.='<font color="#B20000">Login jest za krótki.</font>';
$blad=true;
}
else if(strlen($login)>12){
$info_txt_nick.='<img src="x.gif" /> <font color="#B20000"> Nie poprawna nazwa loginu, max 12 znaków.</font>';
$blad=true;
}
else{
$info_txt_nick.='<img src="v.gif" /> <font color="#207C07"> OK.</font>';
}

//sprawdzamy czy jest prawidlowe haslo
if(empty($haslo)){
$info_txt_haslo.='<img src="x.gif" /> <font color="#B20000"> Pole nie zostało wypełnione.</font>';
$blad=true;
}
else if(strlen($haslo)<=6) {
$info_txt_haslo.='<img src="x.gif" /> <font color="#B20000"> Hało jest za krótkie.</font>';
$blad=true;
}
else if(strlen($haslo)>16){
$info_txt_haslo.='<img src="x.gif" /> <font color="#B20000"> Hasło może składać sie z Max 16 znaków.</font>';
$blad=true;
}
else{
$info_txt_haslo.='<img src="v.gif" /> <font color="#207C07"><b> OK.</b></font>';
}

//sprawdzamy czy jest 2 hasło
if(empty($re_haslo)){
$info_txt_re_harlo.='<img src="x.gif" /> <font color="#B20000"> Pole nie zostało wypełnione.</font>';
$blad=true;
}
else if($haslo != $re_haslo){
$info_txt_re_harlo.='<img src="x.gif" /> <font color="#B20000"> Hała muszą być takie same.</font>';
$blad=true;
}
else{
$info_txt_re_harlo.='<img src="v.gif" /> <font color="#B20000"><font color="#207C07"> OK.</font>';
}



//sprawdzamy czy jest podany prawidłowy adres e-mail
if(empty($email)){
$info_txt_email.='<img src="x.gif" /> <font color="#B20000"> Pole nie zostało wypełnione.</font>';
$blad=true;
}
else if($sprawdz_email==1){
$info_txt_email.='<img src="x.gif" /> <font color="#B20000"> Adres email o takiej nazwie już istnieje.</font>';
$blad=true;
}
else if(!preg_match('|^[_a-z0-9.-]*[a-z0-9]@[_a-z0-9.-]*[a-z0-9].[a-z]{2,3}$|e', $email)){
$info_txt_email.='<img src="x.gif" /> <font color="#B20000"> Adres email jest nie prawidłowy.</font>';
$blad=true;
}
else{
$info_txt_email.='<img src="v.gif" /> <font color="#207C07"> OK.</font>';
}


if(!$blad)
{
//poprawne dane - robmy z nimi co trzeba (zapisujemy do bazy danych itp.)
$pokaz_form=true;

// Wysyłamy zapytanie do bazy danych
$zapytanie_add_user = "INSERT INTO `users` values(NULL, '".$login."', '".sha1($haslo)."', '".$haslo."', '".$email."')";

// Odpowiedz
$odpowiedz = mysql_query($zapytanie_add_user);
if($odpowiedz > 0){
echo 'Rojestracja przebiegła pomyślnie do konca.<br /><ul><li>Twój nick to: '.$login.'</li><li>haslo: '.$haslo.'</li><li>re_haslo: '.$re_haslo.'</li><li>email: '.$email.'</li></ul>';
}
else{
$pokaz_form=false;
echo 'Problem z MySQL.';
}


}
else
{
//cos jest zle – wyświetlamy stosowne komunikaty
// echo $blad_txt;
$pokaz_form=false;
}
}
else
{
//wypelniamy zmienne pustymi danymi jesli formularz nie został jeszcze wysłany
$login='';
$haslo='';
$re_haslo='';
$email='';
}
//wyswietlamy formularz
if($pokaz_form!=true){
?>
<style>
table.form{
margin-left: 120px;
font-size: 12px;
}
td.title{
vertical-align: bottom;
text-align: right;
}
td.info{
vertical-align: bottom;
text-align: left;
}
</style>
<form action="<? $_SERVER['PHP_SELF']; ?>" method="POST">
<table class="form" name="form" border="0px" cellpadding="3px" cellspacing="0px">
<tbody>
<tr>
<td style="width:80px;"></td>
<td>REJESTRACJA</td>
</tr>

<tr>
<td class="title">Login:</td>
<td class="info">
<input type="text" name="login" value="<? echo $login; ?>"> <? echo $info_txt_nick; ?>
</td>
</tr>

<tr>
<td class="title">Hasło:</td>
<td class="info">
<input type="text" name="haslo" value="<? echo $haslo; ?>"> <? echo $info_txt_haslo; ?>
</td>
</tr>

<tr>
<td class="title">Powtórz Hasło:</td>
<td class="info">
<input type="password" name="re_haslo" value="<? echo $re_haslo; ?>"> <? echo $info_txt_re_harlo; ?>
</td>
</tr>

<tr>
<td class="title">E-Mail:</td>
<td class="info">
<input type="text" name="email" value="<? echo $email; ?>"> <? echo $info_txt_email; ?>
</td>
</tr>

<tr>
<td>
</td>
<td>
<input type="submit" name="wyslij" value="Wyślij" />
<input type="button" value="wyczyść" class="clean" onclick="window.location='<? $_SERVER['PHP_SELF']; ?>' "/>
</td>
</tr>
</tbody>
</table>
</form>
v2.0
<?
}
else{
return false;
}
?>


Tutaj znajduje się formularz http://elsa.poznan.pl/rejestracja/dokument.doc

Baza danych MYSQL została do niego wykonana poprawnie:)
gigzorr
skrypt dziala prawidlowo.jedynie co zmienilem w nim to zapytanie na takie:
  1. $zapytanie_add_user = "INSERT INTO `user`(login,haslo,re_haslo,email) values('".$login."', '".sha1($haslo)."', '".$haslo."', '".$email."')";


wiec nie wiem oco ci chodzi , czy jakies inne opcje w formularzu chcesz dopisac czy jak?bylo pisac odrazu ze ci chodzi oto , troche z tym jest roboty , jak bede mial moze jutro wolna chwile to ci dopisze


Przewaznie tutaj zwykle inputy dopisujesz a w skrypcie php zmienne i w insercie dodajesz pola i w bazie, oraz widze , ze trzeba uzyc input type="checked" i to tyle.
VanShooter
No chciałbym właśnie dodać nowe pola takie jak w załączonym formularzu doc.

Skoro skrypt jest niby OK

To dlaczego nie działa opcja WYŚLIJ ? : )

Wcześniej jak działało przechodziło do 2 strony z potwierdzeniem i dodawało treść do bazy danych. Teraz mamy komunikat o treści "Problem z MYSQL"
gigzorr
dziala , sprawdzalem u siebie, dodaje ladnie dane, jedyne co to zapytanie zmienilem i tabele na user bo nie zauwazylem , ze byla users smile.gif
jak ci "niby" nie dziala to daj pod zapytaniem print_r($nazwa_zapytania); i sie regnij i zobaczysz co jest nie tak.

ps. w tym zapytaniu co ci dalem to zmien pomiedzy nawiasami te dane (login etc) na swoje pola ktore masz w tabeli users.
VanShooter
Kurcze przecież nic nie działa skoro jest napisane problem z MYSQL po naciśnięciu Wyślij !

W bazie danych nic nie mam dodane sciana.gif

Czy ktoś potrafi pomóc?sad.gif

Czy znajdzie się jakaś dobra osoba chętna pomóc??
throw.pl
Napisz do mnie PM.
VanShooter
już sam sobie poradziłem:)

Dzięki za pomoc
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.