Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> autoryzacja kod jednorazowy, skrypt obslugi kodow brak formularza
timmy
post 30.12.2005, 18:07:48
Post #1





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 23.11.2005

Ostrzeżenie: (0%)
-----


Wszystko luz ladnie wyglada, ale nie wiem jak do tego zrobic formularz.
i co zrobic na stronkach do ktorych daje to dostep, zeby dostep do nich byl blokowany zanim ktos wpisze kod.
zero pomyslu sad.gif

moze ktos jakis ma?

  1. <?
  2. function Polacz() {
  3. $baza = array(
  4. 'db_host' => 'host',
  5. 'db_user' => 'luser',
  6. 'db_pass' => 'db_pass',
  7. 'db_name' => 'db_name',
  8. );
  9. if($pol) {
  10. return $pol;
  11. } else {
  12. $pol = mysql_connect("$baza[db_host]","$baza[db_user]","$baza[db_pass]");
  13. if (!$pol || !mysql_select_db("$baza[db_name]",$pol)) {
  14.  die ('Problem z baza danych'); return 0;
  15. } else { return $pol;  }
  16. }
  17. }
  18. Polacz();
  19.  
  20. ############################# SKRYPT DO SPRAWDZANIA KODU #######################
    ######
  21.  
  22. $now = time();
  23. $czas_zycia = 3600; // czas dostepu po wprowadzeniukodu w sekundach
  24.  
  25. $res = "SELECT * FROM `codes` WHERE `code`='".$_POST['check']."' AND `status`='aktywny' LIMIT 1";
  26. $odp = mysql_query("$res");
  27. $r = mysql_fetch_array($odp);
  28. $new_time = $now+$ile_wazny;
  29. if (mysql_num_rows($odp) == 0) {
  30. // instrukcja ze kod nieprawidlowy np przekierowanie spowrotem do platnosci wraz z
    komunikatem "ZŁY KOD"
  31.  }
  32. else {
  33. if ($r['expired'] == 0) {
  34. // jesli kod jeszcze nie byl uzywany sprawdza to sobie i zmienia mu czas, ze bedzi
    e aktywny jeszcze przez godzine
  35. mysql_query("UPDATE `codes` SET `expired`='".$new_time."' WHERE `code`='".$_POST['check']."'");
  36. // i wtym miejscu przekierowanie do platnej czesci serwisu
  37.  
  38. } elseif ($r['expired'] >= $now) {
  39. // tutaj sprawdza czy kod przekroczyl juz swoj czas aktywnosci i jesli nie to znow
    u przekierowanie do platnej czesci serwisu
  40.  
  41.  
  42. } else {
  43.  // tutaj juz kod stracil swoja aktywnosc i update bazy na kod nieaktywny
  44. mysql_query("UPDATE `codes` SET `status`='inactive' WHERE `code`='".$_POST['code']."'");
  45. // i komuunikat ze koniec czasu
  46. echo "Koniec czasu<BR><BR>";
  47. }
  48. }
  49. ?>

Tabelka w bazie wyglada tak:

Kod
CREATE TABLE `codes` (
   `id` int(11) NOT NULL auto_increment,
   `code` varchar(8) NOT NULL default '',
   `status` varchar(25) NOT NULL default 'active',
   `expired` varchar(255) NOT NULL default '0',
   PRIMARY KEY  (`id`)
) TYPE=MyISAM AUTO_INCREMENT=1;


Ten post edytował timmy 30.12.2005, 18:44:43
Go to the top of the page
+Quote Post
-tomek_p-
post 30.12.2005, 22:13:03
Post #2





Goście







Nie wiem czy dobrze pisze, ale wystarczy formularz z textfield i przyciskiem wyslij akcje ustawiasz na plik w ktorym jest ten kod ktory tam wrzuciles

A w plikach do ktorych chcesz miec dostep po zalogowaniu wrzucasz na poczatku.

  1. <? session_start; ?>


i chyba tyle.

Ale dopiero sie ucze php wiec moze byc zle.
Go to the top of the page
+Quote Post
timmy
post 2.01.2006, 14:50:47
Post #3





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 23.11.2005

Ostrzeżenie: (0%)
-----


Fajnie zabrzmialo to co kolega napisale, ale nadal nie wiem jak to zrobic, formularz jakis jeszcze zrobie, luz, pole textarea tez, wyslij takze, action na to ustawie i tak czy tak nei chce mnie to chodzic.

Moze ktos to wyjasnic

Help me :roll2:
Go to the top of the page
+Quote Post
ennics
post 2.01.2006, 15:22:38
Post #4





Grupa: Zarejestrowani
Postów: 312
Pomógł: 0
Dołączył: 29.12.2004

Ostrzeżenie: (0%)
-----


zobacz TU


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 12.06.2025 - 12:39