*DELETEME*

Overzicht

Sponsored by: Vacatures door Monsterboard

SQL Developer

Functie omschrijving We are looking for a dutch native speaker Jij gaat in deze functie aan de slag met uitdagende projecten en het creëren van maatwerk software, vooral middels SQL. Iedere klant/project is weer anders, maar dat maakt dit bedrijf en de functie erg uniek & uitdagend. Verder heb je de volgende taken: Ontwikkelen en ontwerpen van SQL databases. T-SQL wordt hierbij gebruikt als programmeer laag; Optimalisatie van query's, voor een verbeterde efficiency; Begeleiden van junior developers, mits je dit leuk vindt; Heb je meer interesse in een rol als consultant, dan is dit ook mogelijk. Je heb hier meer

Bekijk vacature »

Senior PHP developer/ Software Architect

Functie Momenteel zijn ze op zoek naar een ervaren PHP developer die zichzelf graag bezighoudt met zaken als architectuur en de algehele verbetering van structuren en standaarden. Het is eigenlijk meer operationeel als uitvoerend omdat je bezig gaat met zaken als het verder uitrollen en verbeteren van testautomatisering, codereviews, tickets en de doorloop hiervan en architectuurkeuzes. Mocht je hiernaast ook wat DevOps kennis meenemen is dit mooi meegenomen! Vanwege het kleine team maar de wereldwijde impact die zij leveren is er veel focus op kwaliteit. In deze functie werk je aan één van hun belangrijkste applicaties. Hierin werk je nauw

Bekijk vacature »

Software Developer C# / ASP .Net

Functie omschrijving Ben jij een software ontwikkelaar die bekend is met termen ASP .NET, C# en SQL? Lees dan snel verder! Voor een bedrijf binnen de agrarische sector zijn wij namelijk op zoek naar een zelfstandige, enthousiaste en proactieve Software Developer die open staat voor een afwisselende functie met veel uitdaging. Binnen deze organisatie ben jij als Software Developer samen met één andere collega verantwoordelijk voor de ontwikkeling en modificatie van het support en controle programma dat binnen dit bedrijf gebruikt wordt. Hierbij draag jij bij aan de vertaling van klantwensen naar effectieve softwareoplossingen. Daarnaast ben je verantwoordelijk voor: Schatten

Bekijk vacature »

Low code Developer

Dit ga je doen Je richt je op het doorontwikkelen van bestaande applicaties en het geheel van scratch af aan opzetten van nieuwe applicaties binnen een low code platform; Je beoordeelt technisch ontwerpen en maakt de vertaalslag naar de technische oplossingen binnen het platform; Je voert testwerkzaamheden uit; Je adviseert de organisatie op jouw vakgebied; Je schakelt met business analisten en de architect om tot mooie oplossingen te komen; Je lost bugs op en denkt mee over een structurele oplossing. Hier ga je werken Het gaat om een bekend internationaal handelsbedrijf met ruim 800 medewerkers, verdeeld over verschillende deelbedrijven. Deze

Bekijk vacature »

Applicatieontwikkelaar Java EE

Bedrijfsomschrijving De IV- organisatie van de Belastingdienst is verantwoordelijk voor en verzorgt de ICT- voorzieningen. Het merendeel van de applicaties wordt op dit moment door de IV- organisatie zelf ontwikkeld, onderhouden en beheerd in het eigen data center. Naast de zorg voor continuïteit op de massale heffing- en inningsprocessen die plaatsvinden binnen een degelijke, stabiele omgeving, wordt er tevens volop gewerkt aan modernisering van het IV- landschap. Dit gebeurt deels intern door gebruik te maken van de expertise die intern aanwezig is, maar ook door het aantrekken van (kant-en-klaar) oplossingen en expertise uit de markt. Functieomschrijving De afdeling IV –

Bekijk vacature »

Full Stack .NET Developer C# ASP.NET

Samengevat: Deze werkgever is gespecialiseerd in het op afstand bewaken en besturen van machines en processen. Ben jij een ervaren Full Stack .NET Developer? Heb je ervaring met C# en ASP.NET? Vaste baan: .Net Developer C# ASP.NET HBO €3.300 - €4.500 Deze werkgever is een snel groeiende onderneming gespecialiseerd in het op afstand bewaken en besturen van machines en processen, IoT (Internet of Things). Deze werkgever is een veelzijdige organisatie. Je werkt voor de eigen IT organisatie. Zij werken met moderne technologie en staan open voor innovatie. Wil jij bij de top specialisten horen? Ben jij op zoek naar een

Bekijk vacature »

Senior Front-end developer (React)

Functie Met een ontwikkelafdeling van ruim 20 collega’s is dit zo ongeveer de helft van alle medewerkers. De software(ontwikkeling) is dan ook de drijvende kracht binnen de organisatie. Ze werken aan het verbeteren dan de bestaande, maar zeker ook nieuwe producten. De software bestaat uit verschillende (React) webapplicaties, maar ook een mobile (React native) app. Hierdoor kom je met verschillende uitdagingen in aanraking en is Mobile kennis natuurlijk mooi meegenomen. De software wordt door vele duizenden professionals dagelijks gebruikt en bevatten grote hoeveelheden data. Aan het team de uitdaging om hierin de best mogelijke gebruiksvriendelijkheid neer te zetten door gebruik

Bekijk vacature »

Junior .NET developer

Functie Als junior .NET ontwikkelaar start jij in een ontwikkelteam met 7 .NET developers. In ons team werken er drie senior .NET developer, twee medior .NET developers en twee junior .NET developers. Er is dan ook genoeg senioriteit in ons team om jou te kunnen bieden wat jij nodig hebt! Wij werken in scrum en hebben drie wekelijkste sprints. Daarnaast doen wij minimaal vier keer per jaar een release. Ons platform is ontzettend complex en groot. Het is dan ook in het begin belangrijk dat jij de processen gaat begrijpen. Jij krijgt dan ook een cursus om beter te begrijpen

Bekijk vacature »

Team Lead/ Lead developer gezocht (Hands-on, PHP,

Functie Als Team Lead ben je de leider van één van de ontwikkelteams binnen de organisatie. Je leidt als lead developer een goed draaiend team dat werkt aan complexe en duurzame applicaties en API’s. Vanuit je kennis en ervaring ben je in staat het grote plaatje te blijven overzien, en kritisch mee te denken over bijvoorbeeld de architectuur, maar ook de algehele aanpak binnen het project. Je laat je team niet alleen technisch goed functioneren maar ben ook betrokken bij het menselijke aspect. Zo weet jij je collega’s te motiveren en begeleiden in hun dagelijkse werk. Buiten het team ben

Bekijk vacature »

.Net ontwikkelaar - Het schoolsysteem verbeteren!

Bedrijfsomschrijving Onze klant is een prettige en kleinschalige organisatie waar hard gewerkt wordt om het onderwijs te verbeteren. Daarom werken ze aan complexe om administratieve, financiële en facilitaire processen te versnellen en te verbeteren. Dit doen ze vanuit een platte organisatie voor klanten die door geheel Nederland verspreid zitten, hier horen vanzelfsprekend een aantal aansprekende HBO scholen en universiteiten toe. Functieomschrijving Je komt terecht in een organisatie waar op dit moment 2 scrumteams werken. Jij zal als .Net developer binnen 1 van deze scrumteams functioneren, iedereen binnen dit team heeft zijn/haar eigen expertise waardoor er met verschillende invalshoeken aan een

Bekijk vacature »

SQL database developer

Functie omschrijving Voor een softwarebedrijf gespecialiseerd in het ontwikkelen van logistieke software in omgeving Tilburg zijn wij op zoek naar een ervaren SQL database developer. Je gaat werken aan uitdagende, complexe projecten. Iedere klant/project betekent maatwerk in de database. Jouw werkzaamheden zullen er als volgt uit zien: Je bent verantwoordelijk voor de gehele ontwikkelstraat. Van architectuur tot ontwikkeling Je gaat je bezig houden met het ontwerpen en ontwikkelen van MS SQL server databases. Je gebruikt hiervoor T-SQL als programmeer laag. Je begeleidt als lead developer de projecten bij klanten van A – Z. Je sluit aan bij meetings met klanten,

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

C# .NET Software Ontwikkelaar

Functie omschrijving C# .NET Developer gezocht. Ben jij een full stack developer die op zoek is naar een nieuwe uitdaging binnen een leuk snel groeiend bedrijf? Lees dan snel verder! Wij zijn op zoek naar een Developer met ervaring op het gebied van .NET die een organisatie in de regio Arnhem gaat versterken. Jij gaat je binnen dit bedrijf vooral bezighouden met het verbeteren van de functionaliteiten van hun dataplatform. Samen met andere ontwikkelaars denk je mee in oplossingsrichtingen, architectuur en nieuwe technologieën. Als C# .NET Developer binnen dit bedrijf houd je je niet alleen bezig met het verbeteren van

Bekijk vacature »

OutSystems Developer

Dit ga je doen Het van scratch af aan ontwikkelen van applicaties met OutSystems; Het aanhaken bij diverse projecten binnen de organisatie; Schakelen met de business; Meedenken over de mogelijkheden van het platform binnen de organisatie. Hier ga je werken Deze organisatie is een toonaangevende speler in de vastgoedbranche en telt momenteel ruim 500 medewerkers. Met meer dan 150 applicaties staat er een complex applicatielandschap, bestaande uit standaard- en maatwerkapplicaties. De maatwerkapplicaties worden ontwikkeld door een inhouse development team. Het doel voor de komende periode is het verder vernieuwen en optimaliseren van het huidige applicatielandschap. Zo staat de organisatie aan

Bekijk vacature »

Back end developer Digital Agency

Functie Wij zijn van origine een wordpress bureau, maar sinds 2006 zijn wij dit wel redelijk ontgroeid. Naar mate de jaren verstreken zijn we gegroeid in omvang, maar ook in de complexiteit van opdrachten waarin wij onze klanten kunnen bedienen. Momenteel bestaat onze organisatie uit 4 front end developers, 12 back end developer 3 projectmanagers en een 2 koppig management. Wij zijn een hele informele, bijna familiaire organisatie. Geen strak pak of overhemd, nee gewoon dragen waar jij je prettig bij voelt. De gemiddelde leeftijd ligt tussen de 25 en 30 en wij doen er veel aan om onze hechte

Bekijk vacature »

Pagina: 1 2 volgende »

11/04/2011 22:29:27
Anchor link
Niet meer nodig :)
Gewijzigd op 12/04/2011 16:55:34 door
 
PHP hulp

PHP hulp

19/05/2024 17:12:17
 

11/04/2011 22:54:10
Anchor link
Ik heb je script gekopierd en uitgevoerd en bij mij werkt alles prima?!
 

11/04/2011 23:03:32
Anchor link
Als ik een mail krijg in mijn inbox krijg ik enkel dit:

Quote:
Beste,

Er is een nieuwe betaling gedaan op ******* met de volgende gegevens:

Naam:
Adres:
Postcode:
Woonplaats:
Telefoonnummer:
E-mailadres:
Land:
Opmerking door klant:
Betaalmethode:
Aantal producten:
Betaald bedrag:

Met vriendelijke groet,

*******
Gewijzigd op 12/04/2011 17:08:51 door
 

11/04/2011 23:06:31
Anchor link
Ik krijg namelijk netjes een e-mail met alle waardes van het formulier.
 

11/04/2011 23:24:32
Anchor link
Vreemd, want dat krijg ik dus gewoon niet..
 

11/04/2011 23:38:46
Anchor link
Wat is je:

Webbrowser?
Webserver en OS?

Kijk anders in firefox (4) die heeft een speciale console waarin je kunt zien welke post waardes er verstuurd zijn (Ctrl+Shift+K) en dan rechtermuisknop -> Verzoek en antwoord...
 

12/04/2011 00:58:18
Anchor link
Daar word ikzelf niet echt wijzer van..
 

12/04/2011 09:10:26
Anchor link
Henk Schepers op 12/04/2011 00:58:18:
Daar word ikzelf niet echt wijzer van..


Nee, maar dan kun je in ieder geval kijken of het ligt aan het versturen van het formulier of aan je PHP script.
 

12/04/2011 09:32:55
Anchor link
Zover ik dat kan zien wordt alles correct doorgestuurd.
 

12/04/2011 13:26:19
Anchor link
De ene sufferd (Dillen Meijboom) helpt de andere sufferd (Henk Schepers)?
(Met sufferd bedoel ik iemand die nog niet echt veel verstand heeft van php.)

Beide scripts zijn niet goed.
- Bouw foutafhandeling in. Kijk wat elke functie (zoals mysql_connect teruggeeft) en gebruik dat voor de foutafhandeling (let op 'or die' is geen foutafhandeling).
- Selecteer wat je wilt hebben, gebruik geen *.
- Als je toch de assoc manier van array gebruikt, gebruik dan gewoon direct myslq_fetch_assoc.
- Misschien eerst html leren? Jij bedoelt vast geen header.
- Gebruik niet de directe manier (document.betaal.*), maar maak gebruik van bijvoorbeeld getElementsById.
- Tabellen hoor je niet te gebruiken voor lay-out / styling. Ook niet voor forms (gebruik div's, labels, etc.)
- Maak geen gebruik van inline css. Is niet handig.
- Zet nooit error reporting en display errors aan op een productie omgeving.
- Misschien is het slim om eerst te kijken of alle gegevens er zijn in de $_GET voordat je queries doet en connectie gaat maken?
- Bedenk of je POST of GET doet. Door elkaar tegelijkertijd werkt niet handig.
- Controleer of een formulier gepost is met if($_SERVER['REQUEST_METHOD'] == 'POST')
- $prijs vs $bedrag ...?
 
Arjan -

Arjan -

12/04/2011 14:45:58
Anchor link
@Karl: Dat standaard lijstje van jou kennen wij zo onderhand wel. Ook al is het allemaal juist wat je zegt, kom je nooit "to the point". De TS vraagt waarom de POST array geen waarden bevat. En anderen met sufferd betitelen is ook een beetje kinderachtig. Deze mensen proberen andere mensen te helpen (ook al zijn de antwoorden niet altijd juist).

"Bedenk of je POST of GET doet. Door elkaar tegelijkertijd werkt niet handig."

Als je even verder had gekeken maakt het script gebruik van een externe betaal api, waardoor je soms niet anders kan dan GET en POST door elkaar gebruiken (aangezien de externe api dit eenmaal voorschrijft). Lijkt mij verder ook niets mis mee wanneer je het overzichtelijk houdt.

Ontopic: Je probleem zit 'm in de pagina die opgevraagd wordt nadat mollie de betaling heeft afgerond. De case 'return' binnen je switch wordt opgevraagd na de betaling. De ingevoerde gegevens die ingevoerd zijn voor de betaling bestaan dan niet meer. De ingevoerde gegevens in het formulier zijn alleen toegankelijk op de pagina die je aanroept wanneer het formulier wordt gesubmit.

Een oplossing kan zijn om de gegevens direct na het submitten van het formulier op te slaan in de database en te koppelen aan de transactieid of iets dergelijks. Hierdoor kan je op een later tijdstip (bijvoorbeeld op de return pagina) de gegevens opvragen.

Voor een beter overzicht kan je misschien beter alles in aparte bestanden opslaan (betaling, afhandeling, return, etc.). Zo zie je in één opslag dat wat je probeert te doen niet gaat werken.
Gewijzigd op 12/04/2011 14:48:51 door Arjan -
 

12/04/2011 16:23:49
Anchor link
Arjan - op 12/04/2011 14:45:58:
@Karl: Dat standaard lijstje van jou kennen wij zo onderhand wel. Ook al is het allemaal juist wat je zegt, kom je nooit "to the point".

Tja, waarom gebruiken zoveel mensen het dan niet. Als ze het gewoon eens gaan gebruiken hoef ik het niet te plaatsen en zijn zo ontzettend veel scripts beter geworden. Het zijn maar zulke simpele dingen.
Arjan - op 12/04/2011 14:45:58:
De TS vraagt waarom de POST array geen waarden bevat.
Omdat er verschrikkelijk slecht gescript is. Zoals jij straks tot de conclusie komt dat de data gewoon weggegooid wordt omdat de molie api meerdere keren aangeroepen moet worden, had hij dat zelf kunnen uitvinden door alles netjes op te delen en dus kijken of er een post is gedaan. Hij wilt post data benaderen zonder dat hij weet of er een post is gedaan. Als je dat niet weet, dan weet je ook niet of er gegevens zijn. Verder weet je dat als je meerdere keren die api aan moet roepen en altijd moet controleren of er post data is geweest dat er iets niet goed is.
Arjan - op 12/04/2011 14:45:58:
En anderen met sufferd betitelen is ook een beetje kinderachtig. Deze mensen proberen andere mensen te helpen (ook al zijn de antwoorden niet altijd juist).

Ik vind het wel wat ver gaan als je "test" en denkt dat het aan het OS moet liggen. PHP is geen hogere wiskunde. PHP is simpel, er is geen hout aan. Je hoeft niks echt te programmeren. Bijna altijd is het je eigen schuld dat als er iets mis gaat en niet van het OS (uitzonderingen daargelaten).

Arjan - op 12/04/2011 14:45:58:
"Bedenk of je POST of GET doet. Door elkaar tegelijkertijd werkt niet handig."

Als je even verder had gekeken maakt het script gebruik van een externe betaal api, waardoor je soms niet anders kan dan GET en POST door elkaar gebruiken (aangezien de externe api dit eenmaal voorschrijft). Lijkt mij verder ook niets mis mee wanneer je het overzichtelijk houdt.

Ontopic: Je probleem zit 'm in de pagina die opgevraagd wordt nadat mollie de betaling heeft afgerond. De case 'return' binnen je switch wordt opgevraagd na de betaling. De ingevoerde gegevens die ingevoerd zijn voor de betaling bestaan dan niet meer. De ingevoerde gegevens in het formulier zijn alleen toegankelijk op de pagina die je aanroept wanneer het formulier wordt gesubmit.

Een oplossing kan zijn om de gegevens direct na het submitten van het formulier op te slaan in de database en te koppelen aan de transactieid of iets dergelijks. Hierdoor kan je op een later tijdstip (bijvoorbeeld op de return pagina) de gegevens opvragen.

Voor een beter overzicht kan je misschien beter alles in aparte bestanden opslaan (betaling, afhandeling, return, etc.). Zo zie je in één opslag dat wat je probeert te doen niet gaat werken.

Tja, kijk, nu scheid jij zelf het post en get gedoe ook....
Natuurlijk is get en post door elkaar wel mogelijk, maar zoals ik zeg het is niet handig. Hier wordt er ook zeker een probleem veroorzaakt door het door elkaar halen van beiden.

Verder is het ook zo dat mollie ook al voorbeeld code aanbied... Gebruik dat dan.
Gewijzigd op 12/04/2011 16:40:48 door
 

12/04/2011 16:54:15
Anchor link
Ik wil er meteen even bijzeggen dat ik geen plannen heb om dit script live te gebruiken, dus een simpel formulier met tables kan geen kwaad. En als ik Karl was zou ik me daar al helemaal niet druk over maken. Want echt helpen doe je niet, enkel standaard suggesties geven..


Bedankt voor je tip Arjan, ik heb het ook kunnen oplossen met een database en een script dat het controleerd.
 

12/04/2011 17:03:59
Anchor link
Flauw dat je alles nu weer weghaalt, maar goed ik heb alles nog:
Henk Schepers op 11/04/2011 22:29:27:
Ik ben bezig met een script waarbij ik bepaalde ingevoerde gegevens wil mailen na het betalen. Echter lijkt het dat de $_POST[""] op een of andere manier vergeten wordt..

Het resultaat is dus dat ik mails krijg zonder de ingevoerde gegevens..

Hier de code:

index.php:http://pastebin.com/UPt8V0zJ

betaal.php: http://pastebin.com/HiK4QRpH

Ik heb vanalles geprobeert, maar het mocht niet baten.


Zoals je ziet heb ik errorlogging aanstaan dit geef als output:
Quote:
Notice: Undefined index: naam in /home/ihs/domains/jediah.nl/public_html/scripts/mollie/betaal.php on line 143

Notice: Undefined index: adres in /home/ihs/domains/jediah.nl/public_html/scripts/mollie/betaal.php on line 144

Notice: Undefined index: postcode in /home/ihs/domains/jediah.nl/public_html/scripts/mollie/betaal.php on line 145

Notice: Undefined index: woonplaats in /home/ihs/domains/jediah.nl/public_html/scripts/mollie/betaal.php on line 146

Notice: Undefined index: telefoon in /home/ihs/domains/jediah.nl/public_html/scripts/mollie/betaal.php on line 147

Notice: Undefined index: email in /home/ihs/domains/jediah.nl/public_html/scripts/mollie/betaal.php on line 148

Notice: Undefined index: land in /home/ihs/domains/jediah.nl/public_html/scripts/mollie/betaal.php on line 149

Notice: Undefined index: opmerking in /home/ihs/domains/jediah.nl/public_html/scripts/mollie/betaal.php on line 150

Notice: Undefined index: betaalmethode in /home/ihs/domains/jediah.nl/public_html/scripts/mollie/betaal.php on line 151

Notice: Undefined index: aantal in /home/ihs/domains/jediah.nl/public_html/scripts/mollie/betaal.php on line 152

Notice: Undefined index: betaaldbedrag in /home/ihs/domains/jediah.nl/public_html/scripts/mollie/betaal.php on line 153


Henk Schepers op 12/04/2011 16:54:15:
Ik wil er meteen even bijzeggen dat ik geen plannen heb om dit script live te gebruiken, dus een simpel formulier met tables kan geen kwaad. En als ik Karl was zou ik me daar al helemaal niet druk over maken. Want echt helpen doe je niet, enkel standaard suggesties geven..

Tja, als je fietst, dan hoef je natuurlijk niet je hand uit te steken om naar links te gaan, maarja, dan blijkt er net zo'n Toyota Prius geruisloos achter je te zitten, dan lig je er mooi bovenop.
Het lijkt misschien triviaal om het slecht en niet goed te doen, maar het is beter om je gewoon aan te leren. Je leert het dan altijd goed te doen en het is een goede oefening. Waarom zou je dat dan niet doen?
Verder vraag ik mij nog steeds af waarom je dan, als je mijn standaard antwoorden toch kent, ze niet implementeert. Zoals ik al uitgelegd heb zorgen ze ervoor dat je een heel aantal problemen minder hebt. En ook gelijk de oplossing hebt.
 
TJVB tvb

TJVB tvb

12/04/2011 17:04:38
Anchor link
Henk, waarom haal je het topic leeg? Hierdoor wordt het geheel onlogisch en nutteloos.

De standaard suggesties van Karl zijn blijkbaar nog steeds nodig. Ook al zijn ze standaard, als ze al toegepast werden zou hij ze niet noemen.

Toevoeging, topics worden normaal gesproken niet gesloten of verwijderd om dat de TS zijn/haar antwoord gekregen heeft.
Gewijzigd op 12/04/2011 17:05:50 door TJVB tvb
 

12/04/2011 17:06:26
Anchor link
De reden dat ik dit script verwijderd heb is dat verder niemand iets van doen heeft met dit script omdat er bepaalde gegevens van mij in staan.

Verder heb ik hier niets aan toe te voegen.
Gewijzigd op 12/04/2011 17:08:08 door
 
TJVB tvb

TJVB tvb

12/04/2011 17:11:01
Anchor link
Nare instelling, hulp vragen en na het krijgen van het antwoord de gegevens weghalen zodat niemand anders er van kan leren.
 

12/04/2011 17:11:13
Anchor link
Henk Schepers op 12/04/2011 17:06:26:
Karl Karl op 12/04/2011 17:03:59::
Unknown Paste ID!


Ja, ik had gezien dat je die paste als gebruiker hebt gemaakt en dus dat je die kan verwijderen. Maar die heb ik dus ook nog:
index.php:
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
<?

include('db.php');

mysql_connect($server, $username, $password);
mysql_select_db($database);
$select = mysql_query("SELECT * FROM config");
$regel = mysql_fetch_array($select);
 
##################
## Instellingen ##
##################

 
$max = 10; //max aantal
$prijs = $regel['Prijs']; // prijs / stuk
$verzendkost = $regel['Verzendkosten']; // verzendkost
 
?>

<html>
    <header>
        <script type="text/javascript">
        function bereken()
        {
            var aantal = parseInt(document.betaal.aantal.value);
            var verzendkost = parseInt(document.betaal.verzendkosten.value);
            var prijs = parseInt(document.betaal.prijs.value);
            var kost = prijs * aantal;
            var total = kost + verzendkost;
            total = total / 100;
            total = " " + total;
            document.betaal.total.value = total;    
        }
        
        </script>
    </header>
    <body onload="javascript:bereken()">
        <form name="betaal" id="betaal" action="betaal.php" method="post">
            <table width="420">
                <tr>
                    <td align="left"><strong>Naam</strong></td>
                    <td align="left"><input size="20" type="text" name="naam" value="" /></td>
                </tr>
                
                <tr>
                    <td align="left"><strong>Adres</strong></td>
                    <td align="left"><input size="20" type="text" name="adres" value="" /></td>
                </tr>
                
                
                <tr>
                    <td align="left"><strong>Postcode</strong></td>
                    <td align="left"><input type="text" name="postcode" value="" size="10" maxlength="7"/></td>
                </tr>
                
                <tr>
                    <td align="left"><strong>Woonplaats:</strong></td>
                    <td align="left"><input size="15" type="text" name="woonplaats" value="" /></td>
                </tr>
                
                <tr>
                    <td align="left"><strong>Telefoon:</strong></td>
                    <td align="left"><input size="15" type="text" name="telefoon" value=""  /></td>
                </tr>
                
                <tr>
                    <td align="left"><strong>E-Mail:</strong></td>
                    <td align="left"><input size="15" type="text" name="email" value=""  /></td>
                </tr>
                
                <tr>
                    <td align="left"><strong>Land:</strong></td>
                    <td align="left"><input size="15" type="text" name="land" value=""  /></td>
                </tr>
                <tr>
                    <td align="left"><strong>Opmerking:</strong></td>
                    <td><textarea name="opmerking" cols="20" rows="4"  ></textarea></td>
                </tr>
                <tr>
                    <td align="left"><strong>Betaalmethode</strong></td>
                    <td>
                        <select name="betaalmethode">
                            <option value="ideal" />iDeal</option>                                
                        </select>
                    </td>
                </tr>
                <tr>
                    <td align="left"><strong>Aantal</strong></td>
                    <td>
                        <select name="aantal" id="aantal" onchange="javascript:bereken();">
                        <?php
                        $aantal
= 1;
                        while($aantal <= $max){
                            echo '<option value="'.$aantal.'">'.$aantal.'</option>';
                            $aantal ++;
                        }

                        ?>

                        </select>
                        <input style="display:none" type="text" name="prijs" id="prijs" value="<?=$prijs?>">
                        <input style="display:none" type="text" name="verzendkosten" id="verzendkosten" value="<?=$verzendkost?>">
                    </td>
                </tr>
                <tr>
                    <td align="left"><strong>Totaal:</strong></td>
                    <td><input name="total" id="total" type="text" readonly="readonly" size="10" value="lol" tabindex="-1"></td>
                </tr>
                <tr>
                    <td align="left"><strong></strong></td>
                    <td align="left"><input type="checkbox" name="AV" value="ja" id="akkoord"  />&nbsp;Ik accepteer de <a href="Algemene Voorwaarden.html" onclick="window.open('Algemene Voorwaarden.html','Algemene Voorwaarden',
                    'width=auto,height=auto,scrollbars=auto,toolbar=no,location=no'); return false">Algemene Voorwaarden</a>.</td>  
                </tr>
                <tr>
                    <td>&nbsp;</td>
                    <td align="left"><input type="submit" name="" value="Bestellen" /></td>
                </tr>
            </table>
        </form>
    </body>
</html>


betaal.php:
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
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
<?php
ini_set('display_errors', 'On');
error_reporting(E_ALL);
require("db.php"); //Database connectie config
$url        = 'http://www.jediah.nl/scripts/mollie/betaal.php'; //exacte locatie van het script volledig geschreven
$partnerID  = 536497; //Het partnerID van mollie
$testmode   = true; //De mollie ideal-api in testmode draaien
                                
$ipadresses = array ('82.94.203.80', '82.94.203.81', '82.94.203.82', '82.94.203.83', '82.94.203.84', '82.94.203.85', '82.94.203.86');

$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

if(mysql_connect($server, $username, $password))
{

    if(mysql_select_db($database))
    {

        if(!empty($_GET['payment_id']) && ctype_alnum($_GET['payment_id']))
        {

            $payment_id = mysql_real_escape_string($_GET['payment_id']);
            
            $query  = "SELECT transaction_id, amount, description, paid FROM payments WHERE payment_id = '".$payment_id."'";
            $result = mysql_query($query);
            
            if($result && mysql_num_rows($result) == 1)
            {

                $transaction = mysql_fetch_assoc($result);
                
                if(!empty($_GET['action']))
                {

                    switch($_GET['action'])
                    {
                        case
'start':
                            if($transaction['paid'] == 0)
                            {

                                echo '<p>Er is een betaling aangemaakt voor <b>&euro; '.number_format($transaction['amount']/100, 2, ', ', '.').'</b> met als beschrijving <b>'.$transaction['description'].'</b>.</p>';
                                
                                if($testmode)
                                {

                                    curl_setopt($ch, CURLOPT_URL, "http://www.mollie.nl/xml/ideal?a=banklist&testmode=true");
                                }
else{
                                    curl_setopt($ch, CURLOPT_URL, "http://www.mollie.nl/xml/ideal?a=banklist");
                                }


                                $xml = new SimpleXMLElement(curl_exec($ch));
                                
                                echo '<form method="post" action="?action=redirect&payment_id='.$payment_id.'">';
                                echo '<label for="bank_id">Uw bank:</label><br />';
                                echo '<select name="bank_id">';
                                foreach($xml->bank as $bank)
                                {

                                    echo '<option value="'.$bank->bank_id.'">'.$bank->bank_name.'</option>';
                                }

                                echo '</select>';
                                echo '<input type="submit" name="verwerken" value="Verwerken"/>';
                                echo '</form>';
                            }
else{
                                echo '<p>Sorry, deze transactie is reeds betaald!</p>';
                            }

                        break;
                    
                        case
'redirect':
                            if($transaction['paid'] == 0)
                            {

                                if($_SERVER['REQUEST_METHOD'] == "POST")
                                {

                                    if(!empty($_POST['bank_id']) && ctype_digit($_POST['bank_id']))
                                    {

                                        curl_setopt($ch, CURLOPT_URL, "http://www.mollie.nl/xml/ideal?a=fetch&partnerid=".$partnerID."&description=".urlencode($transaction['description'])."&reporturl=".urlencode($url.'?action=report&payment_id='.$payment_id)."&returnurl=".urlencode($url.'?action=return&payment_id='.$payment_id)."&amount=".$transaction['amount']."&bank_id=".$_POST['bank_id']."");
        
                                        $xml = new SimpleXMLElement(curl_exec($ch));
    
                                        if($xml->order->amount == $transaction['amount'])
                                        {

                                            $query = "UPDATE payments SET transaction_id = '".$xml->order->transaction_id."' WHERE payment_id = '".$payment_id."'";
                                            $result = mysql_query($query);
    
                                            if($result && mysql_affected_rows() == 1)
                                            {

                                                header('Location: '.$xml->order->URL);
                                            }
else{
                                                echo '<p>Sorry, er is iets mis gegaan met het updaten van de database!</p>';
                                            }
                                        }
else{
                                            echo '<p>Sorry, er is iets mis gegaan met de aanvraag van deze betaling!</p>';
                                        }
                                    }
else{
                                        echo '<p>Sorry, er word een bank_id verwacht en deze dient numeriek te zijn!</p>';
                                    }
                                }
                            }
else{
                                echo '<p>Sorry, deze transactie is reeds betaald!</p>';
                            }

                        break;
                    
                        case
'report':
                            if(in_array($_SERVER['REMOTE_ADDR'], $ipadresses))
                            {

                                if(!empty($_GET['transaction_id']) && ctype_alnum($_GET['transaction_id']))
                                {

                                    if($testmode)
                                    {

                                        curl_setopt($ch, CURLOPT_URL, "http://www.mollie.nl/xml/ideal?a=check&partnerid=".$partnerID."&transaction_id=".$_GET['transaction_id']."&testmode=true");
                                    }
else{
                                        curl_setopt($ch, CURLOPT_URL, "http://www.mollie.nl/xml/ideal?a=check&partnerid=".$partnerID."&transaction_id=".$_GET['transaction_id']."");
                                    }

                                    
                                    $xml = new SimpleXMLElement(curl_exec($ch));

                                    if((string) $xml->order->payed == 'true')
                                    {

                                        $query = "UPDATE payments SET paid = 1 WHERE payment_id = '".$payment_id."' AND transaction_id = '".mysql_real_escape_string($_GET['transaction_id'])."'";
                                        $result = mysql_query($query);
                                    }
                                }
                            }

                        break;
                    
                        case
'return':
                            if(!empty($_GET['transaction_id']) && ctype_alnum($_GET['transaction_id']))
                            {

                                $query   = "SELECT paid FROM payments WHERE payment_id = '".$payment_id."' AND transaction_id = '".mysql_real_escape_string($_GET['transaction_id'])."' AND paid = 1";
                                $result  = mysql_query($query);
                                
                                if($result && mysql_num_rows($result) == 1)
                                {

                                    echo '<p>Gelukt! De betaling is succesvol ontvangen!</p>';
                                    
                                    
                                                                  $select = mysql_query("SELECT * FROM config");
                                     $regel = mysql_fetch_array($select);                              
                                     $Amail  = $regel['Email'];
                                     $website = str_replace('www.', '', $_SERVER['HTTP_HOST']);
                                     $vanwie = str_replace('www.', 'noreply@', $_SERVER['HTTP_HOST']);

                                    
            
            // Mail versturen
            $aan = $Amail;
            $onderwerp = "Nieuwe order op ".$website." geplaatst!";
            $bericht = "Beste,<br /><br />Er is een nieuwe betaling gedaan op ".$website." met de volgende gegevens:<br />
            <br />Naam:"
.$_POST["naam"]."<br />
            Adres:"
.$_POST["adres"]."<br />
            Postcode:"
.$_POST["postcode"]."<br />
            Woonplaats:"
.$_POST["woonplaats"]."<br />
            Telefoonnummer:"
.$_POST["telefoon"]."<br />
            E-mailadres:"
.$_POST["email"]."<br />
            Land:"
.$_POST["land"]."<br />
            Opmerking door klant:"
.$_POST["opmerking"]."<br />
            Betaalmethode:"
.$_POST["betaalmethode"]."<br />
            Aantal producten:"
.$_POST["aantal"]."<br />
            Betaald bedrag:"
.$_POST["betaaldbedrag"]."<br />
                
            <br />Met vriendelijke groet,<br /><br />"
.$website;
            $headers = "MIME-Version: 1.0\r\n";
            $headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
            $headers .= "From: ".$vanwie." \r\n";
            mail($aan, $onderwerp, $bericht, $headers);


                                }
else{
                                    echo '<p>Sorry, de betaling is niet succesvol ontvangen!</p>';
                                }
                            }
else{
                                echo '<p>Sorry, er word een transaction_id verwacht en deze dient alphanumeriek te zijn!</p>';
                            }

                        break;
                    
                        default:

                            echo 'Sorry, deze actie word niet herkend!';
                        break;
                    }
                }
else{
                    echo '<p>Sorry, er word een actie verwacht!</p>';
                }
            }
else{          
                echo '<p>Sorry, dit payment_id bestaat niet!</p>';
            }
        }
else{
         //   echo '<p>Sorry, er word een payment_id verwacht en deze dient alphanumeriek te zijn!</p>';
            

                        
            $code = md5(rand(000000,999999).microtime());
            $select = mysql_query("SELECT * FROM config");
            $regel = mysql_fetch_array($select);
            $Omschrijving  = $regel['Omschrijving'];
            $Bedrag = $regel['Prijs'] * $_POST['aantal'];
            $Verzendkosten = $regel['Verzendkosten'];
            $Prijs = $Bedrag + $Verzendkosten;
            $query = "INSERT INTO payments (payment_id, amount, description, ipadress) VALUES ('".$code."', ".$Prijs.", '".$Omschrijving."', '".$_SERVER['REMOTE_ADDR']."')";
            $result = mysql_query($query);
            
            if($result && mysql_affected_rows() == 1)
            {

                header('Location: '.$url.'?action=start&payment_id='.$code.'');
            }
        }
    }
else{
        echo '<p>Sorry, er kon geen verbinding gemaakt worden met de database!</p>';
    }
}
else{
    echo '<p>Sorry, er kon geen verbinding gemaakt worden met de databaseserver!</p>';
}


curl_close($ch);
?>
 

12/04/2011 17:14:28
Anchor link
Als jij daar beter van wordt Karl, mag je hiermee het hele forum volspammen :)
 

12/04/2011 17:16:54
Anchor link
Henk Schepers op 12/04/2011 17:14:28:
Als jij daar beter van wordt Karl, mag je hiermee het hele forum volspammen :)


Ik plaats het hier omdat jij het weggehaald hebt. Zie ook TJBV. Die geeft ook uitleg waarom dat slecht is.
 
Ben Van de Voorde

Ben Van de Voorde

12/04/2011 17:21:05
Anchor link
Henk jij wilt toch ook graag geholpen worden waarom mogen andere hier niet nog eens wat aan hebben vieze ego!
 

Pagina: 1 2 volgende »

 

Dit topic is gesloten.



Overzicht

 
 

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.