Jump to content
php.lv forumi

SMS apmaksa. Realizācija.


pilots

Recommended Posts

Painteresējos par fortumo.lv sms apmaksas sistēmu. Cepuri nost, ka viņiem ir diezgan labi aprakstīts par pakalpojumu mājaslapā.

 

Sāku būvēt kodu lapai un atdūros pie tā, ka var dažādi realizāt pakalpojuma apmaksu:

 

A) Lietotājs aizsūta sms TXT ABC uz pakalpojuma numuru, uz servera uzģenerējam random kodu un aizsūtam lietotājam, kurš šo kodu ievada web lapā lai saņemtu pakalpojumu.

Mīnusi - jāģenerē tie random kodi, jāskatās lai tie ir unikāli. Tiem kodiem vajag atsevišķu datubāzi..

Plusi - Var uzreiz neizmantot kodu

 

B) Lietotājs aizsūta sms TXT ABC 1234 (skaitlis ir lietotāja profila ID) uz pakalpojuma numuru, uz servera datubāzes lietotāju tabulā updeitojam attiecīgajam profilam pakalpojuma statusu un aizsūtam lietotājam tekstu - "pakalpojums apmaksāts".

Mīnusi - ??

Plusi - nav jāģenerē nekādi kodi, pakalpojums stājas spēkā nekavējoties.

 

Kas notiek, ja lietotājs kļūdās ar ID iekš sms, viņam noskaita naudu, viņš nesaņem pakalpojumu ..?

 

 

Saistībā ar šo visu gribētu pajautāt - Am I talking sense in here? Proti, vai es kaut ko neesmu palaidis garām un kuru variantu, jūsuprāt, labāk lietot?

Link to comment
Share on other sites

  • Replies 31
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Vēl viena lieta, ko neesi uzsvēris:

A) Tas, kas saņem labumu no šī koda var būt anonīms (ja tas ir vienreizējs, nedalāms pakalpojums, kā piemēram dabūt failu).

Faktiski pie mainīgām pakalpojuma cenām šo sistēmu iespējams izmantot spekulācijām (šī vārda labajā nozīmē), kas nozīmē, ka par zemāku cenu nopirktie kodi ir izmantojami maksāšanai arī tad, kad cena uz pakalpojumu ir pacelta. Tādēļ faktiski ir iespējams izveidot šo kodu tirgu - kā piemēram ar ZZ atjaunošanas kodiem. Sūtītājs ir anonīms, saņēmējs var būt kā anonīms, tā reģistrēts lietotājs

B) Tas, kas saņem labumu no šī koda ir reģistrēts lietotājs (jo citādi nezinās to ID, kam sūtīt). Pakalpojumam nav jāstājas spēkā momentā (ar domu, ka nav obligāti tā, ka laikā ierobežots pakalpojums obligāti sākas ar koda saņemšanu) - var izveidot kredītu sistēmu, kad ar SMS tu sev vai kāds cits tev ieskaiti virtuālās naudiņas, kuras vari pēc tam brīvi izmantot piedāvāto pakalpojumu pirkšanai. Sūtītājs ir anonīms (ja anonīms var redzēt ID, kuram jāsūta) saņēmējs NAV anonīms, bet gan tikai reģistrēts lietotājs.

Link to comment
Share on other sites

waplet, dod šurp droši. :)

 

Es gan ne kodu prasu, bet viedokli par to, kurš variants ir labāks no lietojamības viedokļa. Uzbūvēt var gan A, gan B variantu bez bēdu.

Edited by pilots
Link to comment
Share on other sites

Paldies, Aleksej.

 

Diezgan labi argumenti. "A" varianta labumi manuprāt nav diez ko "labi", ja tā padomā. Kodu tabulā var mētāties neizmantoti kodi. Bardaks var sanākt. Savukārt "B" variants gan man sāk likties lietojams. ID redzams būtu reģistrētiem lietotājiem, tai pat laikā draugs draugam var paprasīt lai nosūta sms viņa vietā iedodot savu profila ID un nebūs jāgaida kamēr tas otrs saņems kodu,.. aizsūtīs profila īpašniekam,.. tas savukārt ievadīs portālā.

 

Īsāk sakot B variants - Makes sense.

Link to comment
Share on other sites

B variants būtu vienkāršāks no lietotāja puses, jo nav jādara divi darbi. Bez tam A) varianta mīnusu grūti pat uzskatīt par mīnusu, tāds sīkums.

Vairāk izvēlē domā par lietotāja, nevis par programmēšanas pusi. Arī A variantā lietotājs var nepareizi to uzrakstīt.

Ja B) variantā uzraksta nepareizu id, var manuāli salīdzināt telefona nummurus ar lietotāju db (ja tur tāds ir), ja galīgi sirdsapziņa spiež.

 

Bez tam neieteiktu lietot fortumo sms pakalpojumus, jo var būt tā, ka šie paziņo, ka sms ir ok, bet reāli nav apmaksāts, un to tikai pašā profilā uzrāda. Tajā pat laikā sms sūtītājs ir jau savu ieguvis, kaut arī nav apmaksājis. Viņi paļaujas uz pēcapmaksu, kas ne vienmēr notiek.

Iespējams, šie šo sistēmu ir pārtaisījuši, kas ir dikti maz ticams.

Edited by indoom
Link to comment
Share on other sites

Kāda būtu sagaidāma reakcija no lietotāja, ja viņš ir kļūdījies ar ID, proti, ievadījis nepareizu/neeksistējošu id. Ja tāds kadrs izdomā, ka viņam vajag naudu atpakaļ, tad reāli jau es pats nesaņemu 100%. Lietotājam nauda vējā, ja administrācija neņemās izmeklēt kurš īsti sūtījis sms.

 

Varētu tādā gadījumā aizsūtīt lietotājam atbildes īsziņā - "Paldies, Tu tikko izmaksāji man aliņu!" :)

 

Bet, ja nopietni, tad nepieciešams laikam rūpīgi atrunāt "terms of service"..

Link to comment
Share on other sites

<script>
function hidestatus(){
window.status=''
return true
}

if (document.layers)
document.captureEvents(Event.MOUSEOVER | Event.MOUSEOUT)

document.onmouseover=hidestatus
document.onmouseout=hidestatus
</script>
<!-- right click end -->
<style type="text/css">
body { font-family: Tahoma, "Lucida Grande", 'Trebuchet MS', verdana, arial, sans-serif; font-size: 12px;background-color:#C0C0C0; }
img { border: 0; }
table { text-align: left; }
a:visited { color: #FFSDFG; }
input { margin-left: 5px; margin-top: 3px; margin-bottom: 3px; background: url(images/inpbg.jpg); border: 0; padding: 2px; border: 1px solid #b6b6b6; font-size: 10px; }
</style>
<title>SHOP!</title>
<link rel="stylesheet" href="styles.css" type="text/css" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

	</head> 		
<body>
<style type="text/css">
body { font-family: Tahoma, "Lucida Grande", 'Trebuchet MS', verdana, arial, sans-serif; font-size: 12px;background-color:#C0C0C0; }
img { border: 0; }
table { text-align: left; }
a:visited { color: #2291FF; }
input { margin-left: 5px; margin-top: 3px; margin-bottom: 3px; background: url(images/inpbg.jpg); border: 0; padding: 2px; border: 1px solid #b6b6b6; font-size: 10px; }
</style>
<br>
<?
if(isset($_POST['prece'])) {

		if ($_POST['prece'] == '1') {
			$links = '/fails/';

		}
		elseif ($_POST['prece'] == '2') {
			$links = '/dooring/';

		}
		elseif ($_POST['prece'] == '3') {
			$links = '/dooring/';

		}}


$code = $_POST["kods"];
$price = 'cena';
//izvelas kodu datubazi, lai parbauditu, vai kods ir derigs
$con = mysql_connect("hosts","acc","pass");
if (!$con)
 {
 die('Could not connect: ' . mysql_error());
 }
$db_selected = mysql_select_db("db", $con);
if (!$db_selected) {
   die (mysql_error());
}
//parbauda vai der
if(mysql_result(mysql_query("SELECT COUNT(*) FROM code WHERE code = '$code'"),0,'COUNT(*)') > 0){
	echo "<b><body background-color:#C0C0C0><br>Kods ir derīgs! Lejupielādēt vari <a href='$links'>šeit</a>";
}
else{
   echo "<script>alert('Nepareizs kods!');window.back()</script>";
   unset($code);
   exit();
}
$delete = "DELETE FROM code WHERE code = '$code'";
mysql_query($delete) or die(mysql_error());
mysql_close();
?>

Edited by waplet
Link to comment
Share on other sites

vienoziimiigi A varints ...

Plusi :

praktiski nav jaraksta jauns kods ja pievieno papildus pakalpojumu , plasa iespeeja varieet ar cenaam , drosiiba ( Klienti 100% reiz pa reizei kljudisies --> un pasam buus problemas ..)

---

parasti ir 3 simboli tavs identifikators servisa sniedzeeja DB ...

parejie (peec atstarpes tavi varianti )

teiksim : ABC XX1 35 atpakal sanjemsi XX1 35 --> ar paris PHP funkcijam sadali 2 daljas un ieguusi ..

 

xx1 --> pakalpojums

35 cena ....

attieciigi generee kodu un suuti userim ..... ieprieks ierakstot kas par pakalpojumu ...

talak kad useris ievada unikalo kodu attieciigi dabuun savu pakalpojumu ...

---

otrais variants dazos gadijumos vispar nestradaas.... teiksim faila sanjemsanai --> nu izrakstiishu uz papirinja kas man jasuuta --> atpakalj sanjemsu SMS ...

un taalaak???

Link to comment
Share on other sites


×
×
  • Create New...