Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Dodawanie punktów za sms
Forum PHP.pl > Inne > Hydepark
maylomoneycash
Witam smile.gif

Posiadam stronę do celów komercyjnych i chciałbym w niej umieścić coś w stylu punktów.

Zalogowany użytkownik (Logowanie i Rejestracja ogarnięta juz) wysyła sms lub wykonuje przelew i w drodze odpowiedzi dostaje wyznaczoną ilość punktów za które może pobrać plik (W zależności ile tych punktów potrzebuje by go pobrać)

Co mam:
- Kod PHP do realizacji premium sms/przelewów
-Baza danych

Co potrzebuje:
-Kod php, który doładowuje punkty użytkownikowi po dobrym wpisaniu kodu sms
-Coś w stylu portfela(Wystarczy coś na przykładzie : "Posiadana liczba punktów : XYZ")
-Plik do pobrania w zależności ile punktów kosztuje(Zmienna, którą mogę zmieniać)
-Po pobraniu pliku odejmują się punkty w zależności ile punktów plik kosztował
-W przypadku braku ilości punktów pobieranie niemożliwe z prostym komunikatem "Brak punktów na koncie-DOŁADUJ PUNKTY)


Jeśli ktoś może mi zapodać jakieś dobre wskazówki byłbym BARDZO wdzięczny.
Pozdrawiam, Maylo
Xart
Zapisuje punkty do jakieś zmiennej np $punkty
jeżeli doładuje i kod będzie poprawny zrób to na zasadzie
  1. $doladowanie = //punkty doladowania
  2. $punkty=$punkty + $doladowanie


portfel ?

  1. <?php
  2. echo("Punkty:".$punkty);
  3. ?>


pobieranie ?
wprowadzasz zmienną która zamieszcza "koszt tego plku" - $koszt
i zapisujesz
  1. if $punkty >= $koszt
  2. $punkty= $punkty - $koszt;
  3. //funkcja pobierania
  4. else
  5. echo ("BRAK PUNKTÓW");
maylomoneycash
Muszę robić jakąś bazę danych?

Mógłbyś mi szerzej wytłumaczyć jak to wgrać na stronę?

Mówię szczerze i bez bicia, nie znam się aż tak dobrze na .php

Z góry dziękuję
Xart
No moim zdaniem baza danych byłaby najlepszym rozwiązaniem więc tłumaczenie:

1. Tworzysz baze
2. Tworzysz i wgrywasz tabelki
3. W pliku łączysz się z bazą
4. Pobierasz z bazy potrzebne informacje

Na necie jest dużo poradników + korzystaj z moich wskazówek
Nikt Ci na tym forum gotowca nie da wink.gif
maylomoneycash
To dodałem w bazie:
  1. CREATE TABLE `punkty` (
  2. `punkty` VARCHAR( 32 ) NOT NULL ,
  3. PRIMARY KEY ( `punkty` )
  4. );
  5.  


Portfel:

  1. <?php
  2. echo("Punkty:".$punkty);
  3. ?>

przerobiłem skrypt sms: (na czerwono dodałem to, co ma robić z ludzmi po poprawnym wpisaniu kodu)
  1. <?php
  2. $sms_code = substr($_POST['sms_code'],0,10); // kod SMS wprowadzony w formularzu
  3. if ($sms_code != ""){
  4.  
  5. // KONFIGURACJA:
  6. //
  7. // Dane znajdziesz w panelu pod adresem:
  8. // <a href="https://platnosci-online.pl/dane_osobowe.html" target="_blank">https://platnosci-online.pl/dane_osobowe.html</a> ("Ustawienia konta" > "dane osobowe/firmy")
  9. //
  10.  
  11. $id_sprzedawcy = ; // ID Partnera
  12. $klucz_transakcyjny = '' ; // 32-znakowy klucz do podpisywania transakcji.
  13.  
  14. // KONIEC konfiguracji
  15.  
  16. $sufix = substr($_POST['sufsms'], 0, 10); // sufiks usługi SMS
  17. $valsms = intval($_POST['valsms']); // kwota w groszach za SMS
  18.  
  19. // sprawdzenie kodu SMS
  20. $tablica = array();
  21. $tablica['code'] = $sms_code;
  22. $tablica['id'] = $id_sprzedawcy;
  23. $tablica['sufix'] = $sufix;
  24.  
  25. $sms_server = 'https://platnosci-online.pl/sms_check.php';
  26.  
  27. $opch = curl_init();
  28. curl_setopt ($opch, CURLOPT_URL, $sms_server);
  29. curl_setopt ($opch, CURLOPT_SSL_VERIFYPEER, FALSE);
  30. curl_setopt ($opch, CURLOPT_SSL_VERIFYHOST, 2);
  31. // curl_setopt ($opch, CURLOPT_FOLLOWLOCATION, 1);
  32. curl_setopt ($opch, CURLOPT_RETURNTRANSFER, 1);
  33. curl_setopt ($opch, CURLOPT_TIMEOUT, 100);
  34. curl_setopt ($opch, CURLOPT_POST, 1);
  35. curl_setopt ($opch, CURLOPT_POSTFIELDS, $tablica);
  36. $wynik = curl_exec ($opch);
  37. curl_close ($opch);
  38. $dane = explode("\n", $wynik);
  39.  
  40. $status = $dane[0]; // wartości 1 - OK, 0 - błąd
  41. $amount = $dane[1]; // kwota w groszach za SMS (netto), lub numer bledu
  42.  
  43. $control = $dane[2]; // suma kontrolna
  44. $bkey = pack('H*',$klucz_transakcyjny);
  45.  
  46. $control_test = md5($id_sprzedawcy.$sufix.$sms_code.$bkey); // oblicz sumę kontrolną transakcji
  47.  
  48. if ($status == 0) {
  49. // Kod niepoprawny
  50.  
  51. // Kody błędów:
  52. // jeśli zmienna $status jest równa 0:
  53. // 1 - kod już był raz sprawdzony przez formularz użytkownika więc jest nieważny
  54. // 2 - kod jest niewłaściwy
  55. // 3 - SUFIKS usługi SMS nie należy do Partnera
  56. // 4 - niewłaściwy tryb sprawdzania kodów (zdefiniowana lista kodów a sprawdzenie online)
  57.  
  58. print "Podany kod jest niewłaściwy lub juz wykorzystany. Kod bledu: ".$amount;
  59.  
  60. }elseif($status == 1){
  61. if ($control_test==$control) {
  62. // transakcja prawidłowa
  63. if ($amount==$valsms) {
  64. // wyświetl podziękowanie itp.
  65. header("Location: index.php");
  66.  
  67. $doladowanie = 100
  68. $punkty=$punkty + $doladowanie
  69. }else{
  70. // nie zgadza się cena SMS
  71. print 'Blad ceny za SMS.';
  72. }
  73. }else{
  74. // suma kontrolna transakcji się nie zgadza
  75. print 'Blad sumy kontrolnej.';
  76. }
  77. }
  78.  
  79. }else{
  80.  
  81. // DANE WEJSCIOWE:
  82. $prefix = "xxx";
  83. $sufix = "xxx"; // sufiks usługi SMS (dla MPA.ABC będzie to słowo ABC).
  84. $numer_sms = "xxx"; // numer telefonu, pod który trzeba wysłać SMS
  85. $wartosc_sms = "200"; // kwota NETTO w groszach za wysłanie SMS
  86. // KONIEC danych wejściowych
  87.  
  88. // pokaz formularz
  89.  
  90. ?>
  91. <DIV style="text-align: center; margin-left: 90px; border: green 1px solid; width:600px;">
  92.  
  93. <FORM name="form_sms" method="POST">
  94. Aby miec dostep do serwisu, wyslij SMS o tresci <?php print $prefix; ?>.<?php print $sufix; ?> na numer <?php print $numer_sms; ?> <BR>
  95. <BR>
  96. Koszt wysłania wiadomosci SMS wynosi <?php print number_format($wartosc_sms/100*1.23,2,',',' ') ?> PLN brutto. <BR>
  97. <BR>
  98. W odpowiedzi otrzymasz SMS z kodem aktywacyjnym. Kod aktywacyjny wpisz w to pole:
  99. <input type="text" name="sms_code" autocomplete="off" value="" style="width:90px;" maxlength="10"/>
  100.  
  101. a nastepnie kliknij: <a class="style_a" onclick="java script:document.form_sms.submit();" href="#"><B>Sprawdz</B></a>
  102.  
  103. <BR><BR>Możesz skorzystać z FOTOKODU do pobrania danych SMS.<BR> Zeskanuj telefonem komórkowym poniższy fotokod:<BR>
  104. <img src="http://chart.apis.google.com/chart?cht=qr&chs=150x150&choe=UTF-8&chl=smsto:<?php print $numer_sms; ?>:<?php print $prefix; ?>.<?php print $sufix; ?>">
  105. <input type="hidden" name="valsms" value="200">
  106. <input type="hidden" name="sufsms" value="BIOLA06">
  107. </FORM>
  108.  
  109. <BR>
  110. Usluga SMS jest dostępna w sieci T-Mobile, Plus GSM, Orange i Play.<BR>
  111. <BR>
  112. Własciciel serwisu: <a style="cursor:pointer;" href="mailto:"></a><BR>
  113. <BR>
  114. Usługę Premium SMS dostarcza i obsluguje <a href="http://www.platnosci-online.pl" target="_blank">Płatnosci-Online.pl</a><BR>
  115. <BR><a href="http://platnosci-online.pl"><img src="http://www.platnosci-online.pl/pliki_pdf/images/pay8.jpg" target="_blank" border="0"></a><BR>
  116. <BR>
  117. Regulamin usługi jest dostępny <a href="http://www.platnosci-online.pl/regulamin_sms.html" target="_blank">na tej stronie</a>.<BR>
  118. <BR>
  119. </DIV>
  120.  
  121. <?php
  122. }
  123. ?>


stworzylem plik kwota.php

  1. if $punkty >= $koszt
  2. $punkty= $punkty - $koszt;
  3. header("Location:aplikacja.apk");
  4. else
  5. echo ("BRAK PUNKTÓW");



Dobrze zrobiłem?
Coś jeszcze potrzeba?
Xart
W portfelu masz $punkty wyświetlanie
pamiętaj że najpierw musisz pobrać z bazy z tej tabeli rekord dla użytkownika i przypisać mu zmienną $punkty
maylomoneycash
Odbywa się to za pomocą funkcji include o tak? :

  1. <?php include("config.php"); ?>
  2. <?php
  3. echo("Punkty:".$punkty);
  4. ?>


Dobry kod na baze?


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.