Skocz do zawartości
Zaloguj się, aby obserwować  
Gość Najs

[PHP] Skrypt bliski skryptowi logowania, proszę o pomoc.

Polecane posty

Gość Najs

Witam zgromadzonych.

 

Nie dawno zacząłem tworzyć stronę "turniejową", idzie mi całkiem dobrze - piszę w html i css. W tej chwili stoję na logowaniu (dla czepiających się jest to metafora), sam sobie z tym nie poradzę a tym bardziej z moimi wymysłami choć myślę, że one troszkę ułatwią.

 

Potrzebuję skryptu działającego na takiej zasadzie, że w headerze po prawej stronie znajduje się jedno okienko i jakiś przycisk koło niego typu "przejdź dalej". Po wpisaniu danego ID (tak to sobie nazwałem, chodzi mi o kod) i kliknięciu przycisku przekierowuje na konkretną podstronę podaną przeze mnie - gdzieś tam w plikach ręcznie ustawiam hasło i podstronę przypisaną do niego. Chciałbym aby po podaniu bezpośredniego linku do danej podstrony nie dało się na nią wejść, krótko żeby nie było innego sposobu wejścia na tą podstronę niż podanie ID w okienku na stronie głównej.

 

Jestem w tym kompletnie zielony, w PHP nic nie napiszę, po prostu szukam osoby która z własnej woli mi pomoże. Chciałbym też wiedzieć gdzie co mniej więcej wkleić aby nie bawić się z owym skryptem w kotka i myszkę. Z góry dziękuje za pomoc, podaję też swoje gadu-gadu (20020154) jeśli ktoś chciałby dowiedzieć się więcej na temat turnieju league of legends.

 

Pozdrawiam.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Skorzystaj z CMS. Będzie dla CB najlepiej.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

A jak rozwiążesz problem przydzielania ID oraz wykorzystywania cudzych ID? Zdecydowanie lepsze będą normalna rejestracja z utworzeniem konta usera w bazie, sesja i logowanie, a po zalogowaniu redirect na wybraną podstronę.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość Najs

@2xup Z CMS'a nie chcę korzystać, gdyż było by go trzeba podpinać pod całą stronę, poza tym jest mi nie potrzebny. Potrzebuję tylko prosty system logowania.

@up ID było by przydzielanie ręcznie. Ewentualnie mogło by być to ID użytkownika i hasło, bardziej mi zależy aby ktoś mi pomógł to zrobić krok po kroku gdyż google nie pomaga. Widziałem mase gotowych skryptów ale jak je dokładnie i gdzie wkleić to już z tym mam problem. Szukałem poradnika krok po kroku i nie znalazłem, proszę o pomoc.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

W sieci jest masa poradników krok po kroku. Nikt ci nie mówi żebyś podpinał CMSa tylko do aktualnej strony dodał porządny system logowania. Jak ci się zwiększy liczba graczy to też masz zamiar wydawać ID ręcznie? A potem jak będzie ich naprawdę dużo to co będziesz w excelu je listował żeby nie dublować?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

To nie jest złe rozwiązanie na początek, przy małej ilości graczy i szacowanym powolnym rozwoju oraz (ważne!) całkowicie amatorskim charakterze całego przedsięwzięcia. Moim zdaniem. W razie rozwoju ponad mozliwości "ręcznego" zarządzania zawsze system można zmienić importując dotychczasowe dane w taki czy inny sposób.

 

Swego czasu na gryonline.wp.pl / gamedesire.com bardzo popularne było mieć swój "prywatny" pokój na jakiejś grze i prowadzić własne systemy rozgrywek/turniejów/pucharów/lig itp. Zajmowałem się tym w jednym z takich pokojów od strony prowadzenia statystyk właśnie, zliczania punktów itd. oraz umieszczania wszystkiego na stronie. Początkowo wszystko było "proste" - odpowiedni arkusz w Excelu, a z niego gotowe tabelki metodą kopiuj/wklej do edytora WYSIWYG i jako HTML na stronę.

Z biegiem czasu uczyłem się PHP powolutku i zacząłem sobie ułatwiać. Szablon strony był jeden, a tabelki z wynikami "includowane" odpowiednio na podstawie argumentów z $_GET - wiadomo, podstawy do opanowania przez każdego początkującego.

Z dalszym biegiem czasu zacząłem pisać skrypt PHP zastępujący mój arkusz Excela, zintegrowałem logowanie z istniejącym już forum phpBB by Przemo (takie czasy, Przemo było w modzie) ze sprawdzeniem, by tylko członkowie określonej grupy na forum - admini pokoju - mogli dodawać/aktualizować wyniki.

Nie zdążyłem skończyć - "prywatny" pokój - tak jak i inne podobne - upadł, na grach online wszystko przejęły automaty i wirtualna gotówka...

 

Czy zasadnym byłoby w moim przypadku od razu na samym początku, nie mając jeszcze pojęcia o PHP, najmować kogoś do stworzenia lub też samemu poświęcić od razu sporo czasu na naukę zrobienia "porządnego" systemu, jeśli okazało się po czasie, że nie byłby on praktycznie wykorzystany?...

 

Rozumiem profesjonalistów doradzających jak najbardziej słuszne rozwiązanie, ale czy zawsze i do każdych celów uzasadnione?...

 

 

 

 

Pseudo kod, bardzo uproszczony, pomysł/propozycja rozwiązania:

  • na stronie "zwykłej" formularz wywołujący "skrypt.php";
  • "skrypt.php":
    - sprawdza czy istnieje określony $_POST z formularza,
    - jeśli jest, to wczytuje listę ID/kodów oraz przypisanych stron z osobnego pliku, sprawdza czy określona wartość ID istnieje,
    - jeśli tak, to include przypisanej strony/pliku
    - jeśli nie ma $_POST, odsyłamy z powrotem - przekierowanie - do "zwykłej" strony
    - jeśli $_POST jest nieprawidłowy albo odsyłamy jak powyżej, albo robimy echo o błędnym kodzie.
  • plik z listą ID/kodów i przypisanych stron oraz pliki z tymi stronami w osobnym folderze zabezpieczonym w .htaccess przed bezpośrednim dostępem.

Rozwiązanie prymitywne, ograniczone w swej funkcjonalności, trudne do zarządzania przy większej ilości wpisów, ale proste.

Edytowano przez Piotr GRD (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość Najs

@up Mniej więcej zrozumiałem o co chodzi ale nie wiem jak się do tego zabrać, mógłbyś się odezwać na gg?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Sprawdź najpierw co znaczy to co napisał Piotr, potem sprawdź po kolei w manualu php jak działają tablice superglobalne, poczytaj troche poradników i dasz radę. Czemu tak bardzo chcesz żeby ktoś odwalił robotę za ciebie. Jak zaczynałem z php to najlepsze było właśnie uczucie "kurcze zadziałało!". No, ale jak nie chcesz to zleć to komuś po prostu i nie licz, że ktoś będzie ci pisał cały kod za free. Napisz co masz co zrobiłeś i co nie działa i możemy ci wyłapać błędy, ale coś rób sam!

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość Kamikadze

@up Mniej więcej zrozumiałem o co chodzi ale nie wiem jak się do tego zabrać, mógłbyś się odezwać na gg?

 

3/4 kodu to będziesz miał same warunki, więc zainteresuj się w internecie podstawowymi zagadnieniami z tego czyli co to jest if co jest po ifie, co jest po else itd.

 

formularz sklepiesz sobie w HTMLu przesyłanie metodą POST, łączenie z bazą danych i pobieranie z niej danych

 

zainteresuj się kursem MySQL na webmade.org (kiedyś korzystałem) i czasem jak coś zapomnę to także tam zaglądam :)

dodatkowo kurshtml.boo.pl

 

No tu znajdziesz ciekawe rozwiązania:

egrafik.pl

4programmers.net

php.net

 

No i oczywiście google.pl

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Pokaże ci prosty skrypt połączony z jQuery i PHP, MYSQL.

Załaduj bibliotekę: jquery-1.5.2.min.js

Przed body

 

 

<script type="text/javascript">

$(document).ready(function(){

$('form').submit(function(){

var login = $('#login').val();

var haslo = $('#haslo').val();

$.post("login.php", { 'login': login, 'haslo': haslo }, function(data){

 

if(data.efekt == 1){

 

$('#panel').load('panel.php');

 

}else{

 

$('#panel').text('Podane dane są błędne');

 

}

}, "json");

});

});

</script>

 

W body gdzieś gdzie ma byc twoje logowanie;

 

 

<div id="panel">

 

<form action="" method="post" onsubmit="return false">

 

<label for="login">Login</label>

<input id="login" name="login" class="inputbox" size="18" type="text">

</p>

<label for="Password">Hasło</label>

<input id="haslo" name="haslo" class="inputbox" size="18" type="password">

</p>

<input name="Submit" class="button" value="Loguj" type="submit">

 

</div>

 

 

w login.php

 

 

<?php

$login = $_POST['login']; /// obrób sobie srtingi, aby nie miały niepożądanych znaków

$haslo = $_POST['haslo']; /// obrób sobie srtingi, aby nie miały niepożądanych znaków

 

// Tutaj wybieranie z bazy i sprawdzanie czy owy user istnieje jeżeli tak to:

 

if($_POST['login'] == $login && $_POST['haslo'] == $haslo){

 

$rezultat = 1; // gdy zalogowany

 

}else{

 

$rezultat = 0; // gdy nieistnieje

 

}

 

echo json_encode(array('efekt' => $rezultat));

?>

 

w panel robisz sobie co już chcesz po zalogowaniu , oczywiście sesja itd.

Edytowano przez furek (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość Najs

Już trochę porobiłem ale postanowiłem, że skończę cały system rejestracji i logowania gdy wypełnie wszystkie podstrony. Dzięki za pomoc, do zamknięcia.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się

Zaloguj się, aby obserwować  

×