ForumCała strona

Nawigacja

Aktualnie online

Gości online: 23

Użytkowników online: 0

Łącznie użytkowników: 25,393
Najnowszy użytkownik: Assassin

Logowanie

Nazwa użytkownika

Hasło



Zarejestruj się

Odzyskaj hasło

Shoutbox

Musisz zalogować się, aby móc dodać wiadomość.

JazOOn
06.12.2024 23:45:46
Amen

Zbigniew@
17.11.2024 11:33:24
Nie ten grzeszy kto pije, ale ten, kto się nie upije.

JazOOn
16.11.2024 20:46:18
tja

Zbigniew@
15.11.2024 18:58:17
Kto pije, ten nie bije.

JazOOn
31.10.2024 20:49:47
Kto pije?

Pobierz nową wersję
Pobierz podręcznik
Zobacz inne oficjalne Supporty
Statystyki supportu
PHP-Fuson PL na Facebooku

RSS

Polecamy hosting SferaHost.pl

Zobacz temat

 Drukuj temat
Kody.wapacz a baza mysql
d6wid
Jest kilka wątków podobnych lecz ja chcę zawęzić tematykę problemu.
Tego o co chcę zapytać szuka ogrom ludzi i nie dostają odpowiedzi. Kieruje więc zapytanie na tym forum bo doświadczyłem tu niejednokrotnie solidnej pomocy (bywało też wręcz odwrotnie).

A więc. Temat znany: Kody wapacz. Skrypty są gotowe na ich stronie. Konfiguracja opisana lecz nie miałem większego kontaktu z bazami mysql. I pytanie brzmi: Co, jak i w jakiej formie wrzucać? Na wapaczu jest napisane: jeśli kody są w pliku i wstawione do bazy... I tu się zaczął mój problem. Nie wiem jak zrobić by cokolwiek widniało w bazie. Łączę się poprzez PHPMYADMIN lecz czego bym nie wrzucił to wyskakują błędy. Próbowałem kilka godzin i przeglądałem różne fora i nic. Nie chcę się uczyć od podstaw bo mi znajomość bazy jest potrzebna tylko do tego.

Może to jest banał i wystarczy wskazówka bo nie wiem jak się do tego zabrać. Nie wiem nawet które pliki mają być na serwerze (i gdzie) a które w bazie.

Pomoże ktoś?


PW od moderatora:
  1. Zmiana nazwy tematu - Milka 09.02 - 17:35

 
http://www.podziemia-internetu.pl
Wścibski Gość
Dodany dnia 23.12.2024 05:26:07
Pan Kontekstualny

Postów: n^x
Data rejestracji: Zawsze

Polecamy hosting SferaHost.pl
IP: localhost  
bartek124
Wstaw tutaj całą instrukcję instalacji z wapacza.
userbar_bartek124_net.png mw.gif Nie pomagam na komunikatorach oraz PW!
 
www.bartek124.net
d6wid
Zakładam, że kody są już wygenerowane i znajdują sie w jakimś pliku tekstowym. Po wygenerowaniu kodow należy wrzucić je do bazy danych na swoim serwerze. Nasza przykładowa tabela będzie miała taką strukturę:

+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| kod | varchar(16) | YES | | NULL | |
| data | bigint(15) | YES | | 0 | |
+-------+-------------+------+-----+---------+-------+

Należy pamiętać żeby połączyć się z bazą danych, przed rozpoczęciem operacji na tabelach:

mysql_pconnect('host','uzytkownik','haslo');

W celu dodania kodów do tabeli wywołujemy następującą funkcję:

Pobierz kod źródłowy  Rozwiń Kod źródłowy


Parametry tej funkcji:

$baza - nazwa bazy danych w której znajduje się tabela z kodami
$tabela - nazwa tabeli do której będą wrzucone kody
$plik - nazwa pliku z wygenerowanymi kodami

Teraz kiedy nasze kody są już w tabeli, możemy zająć się ich obsługą. Kiedy użytkownik podaje kod, musimy sprawdzić dwie rzeczy:

1. Czy podany kod jest prawidłowy
2. Czy podany kod nie został już wcześniej użyty

Jeżeli oba powyższe warunki będą spełnione, wtedy możemy dać użytkownikowi dostęp do płatnej usługi. Oczywiście musimy też oznaczyć użyty kod, tak żeby nie można było użyć go ponownie.
W tym przykładzie kluczową role gra pole data z tabeli zawierającej kody. Jeśli wartość tego pola jest równa 0, znaczy to że dany kod nie został użyty. W przeciwnym wypadku wartość tego pola zawiera datę użycia kodu.

Funkcja sprawdzająca czy podany kod jest poprawny i czy nie został wcześniej użyty:

Pobierz kod źródłowy  Rozwiń Kod źródłowy


PARAMETRY:

$baza - nazwa bazy danych w której znajduje się tabela z kodami
$tabela - nazwa tabeli do której będą wrzucone kody
$kod - kod wpisany przez użytkownika

Powyższy przykład pozauje w jaki sposób wykorzystać kody do jednorazowego dostępu do usługi. Jednak dzięki kodom można dać użytkownikowi dostęp do płatnej częsci serwisu na określony czas. W tym celu trzeba będzie "trochę" zmodyfikować naszą funkcje sprawdzającą, oraz dodac jedno pole w tabeli z kodami. Może najpierw funkjca, a później opis działania.

Pobierz kod źródłowy  Rozwiń Kod źródłowy


PARAMETRY:

$baza - nazwa bazy danych w której znajduje się tabela z kodami $tabela - nazwa tabeli do której będą wrzucone kody
$kod - kod wpisany przez użytkownika
$czas_zycia - okresla jak dlugo dany kod ma byc wazny (wartość w sekundach)

Aby powyższa funkcja działała poprawnie, do tabeli musi zostać dodane jedno pole: uzyty, o wartosci początkowej 0. Jeśli wartość ta zostanie ustawiona na 1, będzie to znaczyło, że upłynął czas przez jaki kod miał być ważny.

Teraz opis funkcji:

Na początku sprawdzamy czy dany kod jest prawidłowy i czy nie upłynął jego termin ważności. Jeśli któryś z obu warunków nie jest spełniony, funkcja zwraca wartość 0 (czyli nie dajemy dostępu do płatnej części serwisu). W przeciwnym wypadku sprawdzamy datę użycia kodu - jeśli jej wartość jest równa 0 znaczy to, że kod nie był używany. W tej sytuacji ustawiamy cookie, którego wartością jest kod, a czas życia jest ustalony zmienną $czas_zycia. Następnie ustawiamy w bazie datę użycia kodu.

Jeśli jednak data użycia kodu będzie różna od zera, to musimy sprawdzić czy nie minął termin ważności kodu (warunek if ($teraz >= ($r[data]+$czas_zycia))). Jeśli termin ważności upłynął, ustawiamy w tabeli pole uzyty na 1 co jest jednoznaczne z kodem nieważnym. W przeciwnym wypadku ustawiamy nowego cookiesa i zwracamy wartość 1 (czyli wpuszczamy do płatnej części serwisu).

Cała funkcja jest wywoływana tylko wtedy, jeśli na komputerze użytkownika nie ma zarejestrowanego cookie z kodem.


Jeśli chodzi o resztę to dam sobie radę bo trzeba w fusionie jeden plik edytować.

Czy teraz nie wygląda to lepiej? bbcode się kłania - Milka

Może i lepiej ale odpowiedzi brak. No cóż... Więc czekam

Czy ktoś mógłby pomóc? Chociaż wskazówkę...
Edytowane przez d6wid dnia 09.02.2008 20:43:41
 
http://www.podziemia-internetu.pl
Przejdź do forum:
Created by Arox Copyright (C) 2004
Copyright (C) 2004 - 2018 Ekipa PHP-Fusion.pl