formulier met iDeal?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 volgende »

Rob Tel

rob Tel

26/04/2009 15:43:00
Quote Anchor link
Beste php-ers.

Ik ben op zoek naar een formulier met een soort ingebouwde iDeal/betaal functie.
Het idee is dat mensen een formulier kunnen invoeren en deze pas kunnen versturen nadat er een bepaald bedrag is betaald met iDeal.

Weet iemand waar ik zoiets kan vinden?
Alvast enorm bedankt voor je tijd.
Vriendelijk Groet.
wz
 
PHP hulp

PHP hulp

08/11/2024 13:57:01
 
Jesper Diovo

Jesper Diovo

26/04/2009 15:47:00
 
Rob Tel

rob Tel

26/04/2009 15:50:00
Quote Anchor link
bedankt, had zelf ook al wel het e.e.a. gevonden maar vroeg me af of er niet ergens een voorbeeld formulier is die op bovenstaande wijze werkt.

ik kan een beetje php qua editen maar om het zelf te schrijven heb ik niet de skills, dus vandaar dat ik wel een voorbeelde kan gebruiken;-)

mvg
 
Martijn Wieringa

Martijn Wieringa

26/04/2009 16:08:00
Quote Anchor link
Ik wil je best helpen met een dergelijk script ("iDEAL" is my middle name); maar mag ik vragen hoe jij bezoekers zo gek krijgt om geld te betalen voor het verzenden van een formulier?

Hoe zie je dat voor je?
 
Rob Tel

rob Tel

26/04/2009 16:10:00
Quote Anchor link
He Pholeron,

Nou het betreft een formulier voor een vertaalbureau.
mensen kunnen een tekst opgeven die vertaald moet worden en als ze hem willen versturen, moeten ze eerst afrekenen alvorens het formulier daadwerkelijk verstuurd wordt.

Kan je me bij zoiets helpen of heb je een voorbeeldje?
mvg.
Gewijzigd op 01/01/1970 01:00:00 door rob Tel
 
Martijn Wieringa

Martijn Wieringa

26/04/2009 16:13:00
Quote Anchor link
Gebeurt het aanleveren van de tekst via een FILE_UPLOAD, of is het een tekstarea o.i.d?

-- edit --
hoe wordt de prijs bepaald? Per woord? Of per tekst?
Gewijzigd op 01/01/1970 01:00:00 door Martijn Wieringa
 
Rob Tel

rob Tel

26/04/2009 16:16:00
Quote Anchor link
nou een file upload of invulveld mag beide eigenlijk, weet niet wat het makkelijkst is? (veld lijkt mij als leek handiger?)

Prijs wordt bepaald per ingevoerd woord + een vast starttarief
 
Martijn Wieringa

Martijn Wieringa

26/04/2009 16:21:00
Quote Anchor link
Via een textarea is veel eenvoudiger (anders moet je een parser bouwen die het geüploade bestand kunnen uitlezen e.d... lastig/onmogelijk :P

Ik heb zo'n script niet liggen, en een dergelijk script kost veel tijd om te maken; dus als jij er geld mee verdient verwacht ik ook een (kleine) vergoeding van mijn tijd?
 
Rob Tel

rob Tel

26/04/2009 16:29:00
Quote Anchor link
Hmm ja het mag me niet te veel gaan kosten, vandaar dat ik me er zelf ook wel in wil verdiepen. Maar als jij, zoals je zelf zegt, alles afweet van iDeal is het misschien efficienter als jij het script in elkaar zet. Hangt er een beetje af aan wat voor een vergoeding je zat te denken.

mvg
 
Martijn Wieringa

Martijn Wieringa

26/04/2009 17:17:00
Quote Anchor link
Wat heb je er voor over?
 
Rob Tel

rob Tel

26/04/2009 17:22:00
Quote Anchor link
Ja nouja, wat ik net al aangaf eigenlijk niet zo veel. Het is meer een ideetje wat ik eens zou willen uitproberen dan dat ik denk dat er meteen geld in zit. (dan was het voor mij ook makkelijker geweest om er een bedrag voor uit te trekken). Dus ik weet niet wat je wil voorstellen?

mvg
 
Martijn Wieringa

Martijn Wieringa

26/04/2009 17:38:00
Quote Anchor link
Als je aan een klein opzetje genoeg hebt kost het niets.. als je een volledig uitgewerkt script verwacht € 75,00
 
Rob Tel

rob Tel

26/04/2009 17:42:00
Quote Anchor link
ik hoop dat een klein opzetje voldoende is dan want €75 vind ik toch een beetje veel (voor mij dan)

dus als je me een beetje op weg zou kunnen helpen dan zou je me enorm helpen.

mvg
 
Martijn Wieringa

Martijn Wieringa

27/04/2009 09:13:00
Quote Anchor link
Kijk hier maar eens na ter inspiratie:

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
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
<?php

    include('ideal.cfg.php');
    include('ideal.cls.php');

    $html = '';

    if(isset($_GET['trxid']) && isset($_GET['ec']))
    {

        $sTransactionId = $_GET['trxid'];
        $sEntranceCode = $_GET['ec'];

        // Lookup order using TransactionID and EntranceCode.
        // ...


        $oStatusRequest = new StatusRequest();
        $oStatusRequest->setTransactionId($sTransactionId);

        $sTransactionStatus = $oStatusRequest->doRequest(); // Possible status: SUCCESS, CANCELLED, FAILURE, OPEN or EXPIRED

        if($oStatusRequest->hasErrors())
        {

            die('Error in iDEAL Status Request');
        }

        else
        {
            // Update order status in database
            // ...


            if(strcasecmp($sTransactionStatus, 'SUCCESS') === 0)
            {

                // Send e-mail to webmaster & customer to confirm order
                // ...


                $html = '<p>Uw betaling is met succes ontvangen. Uw bestelling wordt zo spoedig mogelijk in behandeling genomen.</p>';
            }

            else
            {
                // Cancel order
                // ...


                $html = '<p>U betaling is (nog) niet ontvangen, en heeft als status "' . $sTransactionStatus . '".<br><br><a href="index.php">Start uw aanrvaag opnieuw.</a></p>';
            }


            $_CORE['rsPage']['page_title'] = 'Afrekenen met iDEAL';
            $_CORE['rsPage']['content'] = $html;
        }
    }

    elseif(isset($_POST['text']) && isset($_POST['issuer_id'])) // Start transaction
    {
        $sText = $_POST['text'];
        $iWordCount = countWords($sText);


        $sOrderId = 'REF_' . rand(1000000, 9999999);
        $sOrderDescription = 'Order: ' . $sOrderId;
        $fOrderPrice = 9.99 + (0.075 * $iWordCount);
        $sIssuerId = $_POST['issuer_id'];
        $sEntranceCode = sha1($sOrderId . '_' . rand(1000000, 9999999));

        $oTransactionRequest = new TransactionRequest();

        $oTransactionRequest->setOrderId($sOrderId);
        $oTransactionRequest->setOrderDescription($sOrderDescription);
        $oTransactionRequest->setOrderAmount($fOrderPrice);

        $oTransactionRequest->setIssuerId($sIssuerId);
        $oTransactionRequest->setEntranceCode($sEntranceCode);
        $oTransactionRequest->setReturnUrl('http://www.php-solutions.nl/projects/ideal-form/index.php');

        $sTransactionId = $oTransactionRequest->doRequest();

        if($oTransactionRequest->hasErrors())
        {

            die('Error in iDEAL Transaction Request');
        }

        else
        {
            // Save order data, TransactionID and EntranceCode in database
            // ...


            $oTransactionRequest->doTransaction();
        }
    }

    else // Load form
    {
        $oIssuerRequest = new IssuerRequest();
        $aIssuerList = $oIssuerRequest->doRequest();
        $sIssuerOptions = '';

        if($oIssuerRequest->hasErrors())
        {

            die('Error in iDEAL Issuer Request');
        }

        else
        {
            foreach($aIssuerList as $k => $v)
            {

                $sIssuerOptions .= '<option value="' . $k . '">' . htmlentities($v) . '</option>';
            }
        }


        $html .= '<form action="" method="post">
<table border="1" cellpadding="3" cellspacing="0">
<tr>
<td width="150">Uw tekst</td>
<td><textarea name="text" cols="80" rows="12" onkeyup="javascript: calcPrice(this.value);" onblur="javascript: calcPrice(this.value);"></textarea></td>
</tr>
<tr>
<td>Woorden</td>
<td><input id="count" disabled="disabled" value="0"></td>
</tr>
<tr>
<td>Bedrag</td>
<td><input id="price" disabled="disabled" value="9.99"></td>
</tr>
<tr>
<td>Uw bank</td>
<td><select name="issuer_id">'
. $sIssuerOptions . '</select></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><input type="submit" value="verzenden"></td>
</tr>
</table>
</form>

<script type="text/javascript">

    function calcPrice(f_string)
    {
        var iWordCount = countWords(f_string);
        document.getElementById(\'count\').value = iWordCount;
        document.getElementById(\'price\').value = (Math.round((9.99 + (0.075 * iWordCount)) * 100) / 100);
    }

    function countWords(f_string)
    {
        var re = /([a-z][^\s]+)/gi;
        var a = f_string.match(re);
        return a.length;
    }

</script>'
;

    }


    echo $html;




    // General functions
    function countWords($sText)
    {

        $aWords = array();
        preg_match_all('/([a-z][^\\s]+)/i', $sText, $aWords);
        return sizeof($aWords[0]);
    }


?>


Voorbeeldje: http://www.php-solutions.nl/projects/ideal-form/
Alle code downloaden: http://www.php-solutions.nl/projects/ideal-form/script.zip
 
Arjan Kapteijn

Arjan Kapteijn

27/04/2009 09:25:00
 
Rob Tel

rob Tel

27/04/2009 16:54:00
Quote Anchor link
Pholeron heb je een pm gestuurd.

graag je reactie;)
 
Milcoi

Milcoi

28/04/2009 08:42:00
Quote Anchor link
Ik haak hier even aan. Ben bezig met een soort ibood site waar men 1 artikel per dag kan kopen.

- klant ziet artikel
- klant kiest aantal
- klant klikt op kopen
- klant krijgt formulier voor adres / aflever gegevens
- klant moet accoord gaan met voorwaarden (anders geen betaal mogelijkheid)
- klant krijgt betaal mogelijkheid
- klant heeft betaald, bedankt scherm en gegevens / bestelling worden verzonden.
(klant betaald niet, melding niet betaald, auto redirect naar eerste pagina)
 
Rob Tel

rob Tel

28/04/2009 10:01:00
Quote Anchor link
Oke, en heb je het formulier verzend script voor mij? haha.. maar ik begrijp dat dat een beetje overeenkomt met wat ik wil?

mvg
 
Arjan Kapteijn

Arjan Kapteijn

28/04/2009 10:08:00
Quote Anchor link
Milcoi, wat is precies jouw vraag? Of zoek je iemand om het te maken? Het is werkelijk geen lastig probleem, als je mijn mollie iDEAL implementatie gebruikt hoef je eigenlijk alleen maar een simpele query in de database te plaatsen met een bedrag en korte omschrijving.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$query
= "INSERT INTO payments (payment_id, amount, description, ipadress) VALUES ('".$code."', ".rand(1000,2500).", 'Dit is een omschrijving!', '".$_SERVER['REMOTE_ADDR']."')";
?>


De rest is gewoon wat eenvoudige HTML formulierwerk en een simpele query. En als je slim bent zet je die producten met een 'datum' in de DB zodat je niet iedere dag een product hoeft toe te voegen.
 
Rob Tel

rob Tel

28/04/2009 10:15:00
Quote Anchor link
Zou iemand mij misschien ook nog kunnen helpen?
Pholeron ik hoor niks van je?
eventueel iemand anders die het kan maken? zoja prijsindicatie?

mvg.
 
Arjan Kapteijn

Arjan Kapteijn

28/04/2009 10:21:00
Quote Anchor link
Robbert, wat lukt je dan niet? Je hebt een praktisch werkend voorbeeld gekregen. Waar kom je niet uit?

Als je wilt dat iemand het voor je gaat maken had je er een vacature van moeten vragen, maargoed. Hoeveel heb je er voor over? Anders wil ik wel even wat maken.
 

Pagina: 1 2 volgende »



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.