TargetPay Bel API

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Wouter Lolz

Wouter Lolz

05/01/2012 00:44:52
Quote Anchor link
hey,

Ik heb dit
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
<?php

if(isset($_GET['bedrag']))
{

    if(isset($_GET['check']))
    {

        $rtlo = 73809;
        $paycode = $_GET['paycode'];
        $payline = $_GET['nummer'];
        $country = $_GET['c'];
        $check = file_get_contents('http://api.targetpay.nl/payment/checkpayment.asp?rtlo=74353&paycode='.$paycode.'&payline='.$payline.'&country='.$country.'&test=0');
        if($check == 'NOT OK')
        {

            echo 'De betaling is (nog) niet afgerond.';
        }

        else
        {
            $coins = $_GET['bedrag'] * 10;
        
            mysql_query('UPDATE leden SET krijg_coins = krijg_coins + '.$coins.' WHERE naam = "'.getGeg('naam').'" ');
            
            if(getGeg('rank') < 3 && $coins >= 20000)
            {

                mysql_query('UPDATE leden SET rank = 3 WHERE naam = "'.getGeg('naam').'" ');
                echo 'Je hebt betaald, <br/>Log nu 1 keer in & uit en je hebt je Hero & Euros ontvangen.';
            }

            elseif(getGeg('rank') == 1 && $coins >= 5000)
            {

                mysql_query('UPDATE leden SET rank = 2 WHERE naam = "'.getGeg('naam').'" ');
                echo 'Je hebt betaald, <br/>Log nu 1 keer in & uit en je hebt je VIP & Euros ontvangen.';
            }

            else
            {
                echo 'Je hebt betaald, <br/>Log nu 1 keer in & uit en je hebt je Euros ontvangen.';
            }
        }
    }

    else
    {
        if(getGeg('naam') == "Error")
        {

            die('Er is iets fout gegaan met het ophalen van je minecraft naam.<br/><a href="javascript:javascript:history.go(-1)">Klik hier om terug te gaan</a>');
        }


        if(!isset($_GET['bedrag']) || $_GET['bedrag'] == "")
        {

            die('Er is iets fout gegaan met het ophalen van het bedrag.<br/><a href="javascript:javascript:history.go(-1)">Klik hier om terug te gaan</a>');
        }


        if(strpos($_GET['bedrag'], ',') > 0)
        {

            $_GET['bedrag'] = str_replace(",", ".", $_GET['bedrag']);
        }


        if(strpos($_GET['bedrag'], '.') == 0)
        {

            $_GET['bedrag'] = $_GET['bedrag'].'.00';
        }


        if($_GET['bedrag'] < 0.30 || $_GET['bedrag'] > 9999999999999.00)
        {

            die('Uw bedrag moet tussen de 0.30 euro of hoger zijn (Je had '.$_GET['bedrag'].')<br/><a href="javascript:javascript:history.go(-1)">Klik hier om terug te gaan</a>');
        }

        
        $rtlo = 73809;
        $ct = 'PM';
        if(!isset($_GET['c']))
        {

            $co = '31';
        }

        else
        {
            $co = $_GET['c'];
        }

        $tb = '80'; //tijd
        $cd = $_GET['bedrag'] * 100; //cent
        $ip = $_SERVER['REMOTE_ADDR'];
        $test = '0';
        $homepage = file_get_contents('http://api.targetpay.nl/payment/startpayment.asp?rtlo='.$rtlo.'&ct='.$ct.'&co='.$co.'&tb='.$tb.'&cd='.$cd.'&iphash='.$ip.'&test='.$test);    
        $bel = explode('|', $homepage);
        echo 'Bel naar '.$bel[2].' ('.$tb.' cent per minuut, het gesprek duurt '.$cd.' seconden).
            <br />
            Intotaal kost het je '
.$cd.' cent ('.$_GET['bedrag'].' euro)<br/>
            Toets tijdens het bellen de betaalcode '
.$bel[1].' in. Klik na betaling op de knop "verder".
            <br /><a href="?bedrag='
.$cd.'&check&paycode='.$bel[1].'&nummer='.$bel[2].'&c='.$co.'&vip=Bellen&soort=bel">Verder</a>';
    }
}

else
{
?>

    <form action="" method="GET">
        <B>Bedrag:</b><br/>
        <input name="bedrag" id="bedrag" type="text" value="5.00" onkeyup="javascript:this.value=this.value.replace(/[^.0-9]/g, '');" /><br/>
        <select name="c">
            <option value="31">NL</option>
            <option value="32">BE</option>
        </select>
        <input type="hidden" name="vip" value="Bellen" id="vip"><input type="hidden" name="soort" value="bel" id="soort">
        <input type="submit" value="Koop!">
    </form>
<?php
}
    
?>

Als Bel API.
Alleen hij return altijd dat de betaling niet gelukt is.
Ik krijg hem wel binnen op TargetPay.
Ik weet het, het is een beetj eslecht gecodeerd, maar als hij werkt dan werkt hij ;P.

Alvast bedankt.
Wouter
 
PHP hulp

PHP hulp

12/11/2024 20:45:09
 
- Ariën  -
Beheerder

- Ariën -

05/01/2012 09:18:14
Quote Anchor link
Pas gewoon fatsoenlijke foutafhandeling toe. En uiteraard moet je geen die() gebruiken.
Als je weet dat het script niet netjes is, waarom doe je het niet meteen goed? Nu zie je consequenties...

Waar komt de functie: getGeg() vandaan?
Gewijzigd op 05/01/2012 10:48:24 door - Ariën -
 
Wouter Lolz

Wouter Lolz

05/01/2012 10:55:26
Quote Anchor link
Ow, uhm, Daar krijg ik een variable uit de database van de ingelogde user.
Afgekort van getGegevens..
En getGegE is voor een andere speler, Met op het begin de naam veriable.
En ik gebruik die() alleen voor de betaling ;S
Gewijzigd op 05/01/2012 11:00:41 door Wouter Lolz
 
- Ariën  -
Beheerder

- Ariën -

05/01/2012 10:56:50
Quote Anchor link
dan alsnog is die() overbodig.
Lees dit eens door, en pas je script aan ;-)

http://www.phphulp.nl/php/tutorial/data-verwerking/foutafhandeling-query-sql/735/
Gewijzigd op 05/01/2012 10:57:21 door - Ariën -
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.