[code]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Pincode betaallijn - Targetpay</title>
<style type="text/css">
body{
	background-color:#cccccc;
	font-family:Arial, Helvetica, sans-serif;
	color:#2a2a2a;
	}
	.betaling{
	background-color:#ff8800;
	width:400px;
	border: 1px solid #2a2a2a;
	text-align:center;
	padding:10px;
	font-size:12px;
	}
	.call{
	font-size:16px;
	}
	.allert{
	background-color:#fff000;
	font-weight:bold;
	}
</style>
</head>
<body>
<?php
// Gegevens van Targetmedia
$nummer = '0900-2000027'; //Het targetpay betaalnummer zie:http://www.targetpay.com/advanced/ivr-pincode/lijn
$kosten_per_call = '1,30'; //(corresponderend met het betaalnummer - Dient correct te worden weergegeven op de site. Eventuele boetes komen voor uw eigen rekening.)
$layoutcode = '#####'; //Uw layoutcode waarop het tegoed moet worden bijgeschreven
$testmodule = '0'; //Is dit script nog in de testfase 1=ja, 0=nee


//Het script:
echo "<h1>Pincode betaallijn - Targetpay</h1>
		<div class='betaling'>";

// De bezoeker komt 'fris' op deze pagina. Er wordt gevraagt om het nummer te bellen en de voorgelezen code in te voeren in het invoerveld hieronder.
if($_SERVER['REQUEST_METHOD'] != "POST") {
echo "<form action='" . $_SERVER['PHP_SELF'] . "' method='post'>
	<span class='call'>Bel naar <b>$nummer</b> (&euro; $kosten_per_call per gesprek)</span><br><br>
	Tijdens het gesprek wordt een 6-cijferige pincode opgelezen.<br> Toets de pincode hieronder in en klik op 'verder'.<br><br>
	<input type='text' name='code' size='6'> <input type='submit' value='verder' name='betaal'>
	</form>";
}

// De betaalknop is ingedrukt. We controleren hieronder of de betaling is voldaan.
else{
	$paycode = $_POST['code'];
	
// Gegevens ophalen
	$url="http://www.targetpay.nl/api/ivr-pincode?rtlo=$layoutcode&code=$paycode&payline=$nummer&country=31&test=$testmodule";
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_URL,$url);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); // return into a variable
	curl_setopt($ch, CURLOPT_TIMEOUT, 10);
	$reactie = curl_exec($ch);
	
// Hier controleren we of de reactie 000 OK weergeeft, zo ja dan is de betaling voldaan.
switch ($reactie) {
    case "000 OK":
        echo "Oke! De betaling is voldaan.";
		// hier de actie die ondernomen moet worden
		echo "<br><br>Hier de betaalde content of iets dergelijks.";
    break;
    
    // Als niet de 000 OK code wordt teruggegeven hebben we hier een verdere Nederlandse vertaling van de foutcode.
	case "102 No layout code specified":
	echo "<span class='allert'>&nbsp;!&nbsp;</span> Er is geen layout code opgegeven. Hierdoor kan de betaling niet worden voltooid.";
	break;
	case "103 No pincode specified":
	echo "<span class='allert'>&nbsp;!&nbsp;</span> Er is geen pincode opgegeven. Probeer het nogmaals.";
	break;
	case "104 Pincode length incorrect":
	echo "<span class='allert'>&nbsp;!&nbsp;</span> De lengte van de ingevoerde pincode is niet correct.";
	break;
	case "105 Internal Error: no connection to IVR":
	echo "<span class='allert'>&nbsp;!&nbsp;</span> Er is een interne fout opgetreden. Er is geen connectie mogelijk met het betaalsysteem. Probeer het later nogmaals";
	break;
	case "106 Pincode already checked or not paid":
	echo "<span class='allert'>&nbsp;!&nbsp;</span> Deze pincode is al eerder gebruikt of nog niet betaald. Probeer het nogmaals";
	break;
	case "107 Layoutcode unknown":
	echo "<span class='allert'>&nbsp;!&nbsp;</span> Er is een onbekende layoutcode opgegeven. Hierdoor kan de betaling niet worden voltooid.";
	break;
	case "108 No country specified":
	echo "<span class='allert'>&nbsp;!&nbsp;</span> Er is geen land opgegeven. Hierdoor kan de betaling niet worden voltooid.";
	break;
	case "109 No payline specified":
	echo "<span class='allert'>&nbsp;!&nbsp;</span> Er is geen betaalnummer opgegeven. Hierdoor kan de betaling niet worden voltooid.";
	break;
	case "700 No pincode specified":
	echo "<span class='allert'>&nbsp;!&nbsp;</span> Er is geen pincode opgegeven. Hierdoor kan de betaling niet worden voltooid.";
	break;
	case "702 Incorrct pincode":
	echo "<span class='allert'>&nbsp;!&nbsp;</span> De ingevoerde pincode is niet correct. Probeer het nogmaals";
	break;
	case "703 Incorrect pincode":
	echo "<span class='allert'>&nbsp;!&nbsp;</span> De ingevoerde pincode is niet correct. Probeer het nogmaals";
	break;
	case "705 Incorrect payline":
	echo "<span class='allert'>&nbsp;!&nbsp;</span> Er is geen correcte betaallijn opgegeven. Hierdoor kan de betaling niet worden voltooid.";
	break;
	case "707 Payment not succesfull":
	echo "<span class='allert'>&nbsp;!&nbsp;</span> De betaling is niet succesvol verlopen. Probeer het nogmaals.";
	break;
	case "900 Invalid request":
	echo "<span class='allert'>&nbsp;!&nbsp;</span> Er is geen geldige aanvraag gedaan. Probeer het nogmaals";
	break;
	case "901 Incorrect affiliate code":
	echo "<span class='allert'>&nbsp;!&nbsp;</span> Er is geen geldige affiliate code opgegeven. Hierdoor kan de betaling niet worden voltooid.";
	break;
	case "902 Incorrect layoutcode":
	echo "<span class='allert'>&nbsp;!&nbsp;</span> Er is geen geldige layoutcode opgegeven. Hierdoor kan de betaling niet worden voltooid.";
	break;
}
	if($reactie != "000 OK"){echo "<br> <a href='" . $_SERVER['PHP_SELF'] . "'>&laquo; Terug</a>
	<br><br><font size='1'>Opmerking: Betaalde pincodes zijn circa 24 uur geldig!</font>";}
	
}

echo "</div>";
?>
</body>
</html>
[/code]