Bepaald item slechts 1 keer laten bestellen.
Op onze website kunnen pakketten worden aangeschaft met Credits om alle functies van de website te kunnen gebruiken.
Nu heb ik een test pakket geactiveerd zodat men het eerst uit kan proberen zonder al te veel kosten. Echter ik wil dat ze dit pakket slechts 1 keer kunnen bestellen, vervolg bestelling moeten dan de reguliere pakketten zijn.
Wij werken met Paymentwall als betaalprovider en uiteraard dient men zich eerst te hebben geregistreerd als Lid van onze website.
Er zou dus een koppeling kunnen worden gemaakt op user-id of op IP adres.
Is er iemand die mij een beetje op weg kan helpen om dit voor elkaar te krijgen.
Bestelscript±
Quote:
<h1></h1>
<div id="result"></div>
<div class="contenttitel">
<script>
window.addEventListener('message', function(event) {
if(event.origin !== 'https://api.paymentwall.com') return;
var data = eval('(' + event.data + ')');
},false);
function PaymentwallWidgetSuccessHandler() {
window.location.replace("./my-profile");
alert('lorem');
}
</script>
<p></p>
<div id="Accordion1" class="Accordion" tabindex="0">
<div id="result"></div>
<div class="contenttitel">
<script>
window.addEventListener('message', function(event) {
if(event.origin !== 'https://api.paymentwall.com') return;
var data = eval('(' + event.data + ')');
},false);
function PaymentwallWidgetSuccessHandler() {
window.location.replace("./my-profile");
alert('lorem');
}
</script>
Code (php)
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
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
<?php
if(isset($_GET['package_id'])){
//print_r($meta);
//exit();
$pay = get_stat("SELECT * from `message_package` WHERE package_id ='".$db->escape_string($_GET['package_id'])."'");
Paymentwall_Config::getInstance()->set(array(
'api_type' => Paymentwall_Config::API_GOODS,
'public_key' => $meta['api_key'] ,
'private_key' =>$meta['api_secret']
));
$widget = new Paymentwall_Widget(
$_SESSION['user_id'],
$meta['wcode'],
array(
new Paymentwall_Product(
$pay->package_id,
$pay->price,
'EUR',
$pay->package_name,
Paymentwall_Product::TYPE_FIXED
)
),
array('email' => $user->email, 'history[registration_date]' => $user->time_registered)
);
echo $widget->getHtmlCode();
}else{
?>
if(isset($_GET['package_id'])){
//print_r($meta);
//exit();
$pay = get_stat("SELECT * from `message_package` WHERE package_id ='".$db->escape_string($_GET['package_id'])."'");
Paymentwall_Config::getInstance()->set(array(
'api_type' => Paymentwall_Config::API_GOODS,
'public_key' => $meta['api_key'] ,
'private_key' =>$meta['api_secret']
));
$widget = new Paymentwall_Widget(
$_SESSION['user_id'],
$meta['wcode'],
array(
new Paymentwall_Product(
$pay->package_id,
$pay->price,
'EUR',
$pay->package_name,
Paymentwall_Product::TYPE_FIXED
)
),
array('email' => $user->email, 'history[registration_date]' => $user->time_registered)
);
echo $widget->getHtmlCode();
}else{
?>
<p></p>
<div id="Accordion1" class="Accordion" tabindex="0">
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
$sql ="SELECT * FROM `message_package` order by price asc";
$result = $db->query($sql);
while($row = $result->fetch_object()){
$span = $row->primary== 1 ?'span3':'span2';
echo ' <div class="AccordionPanel AccordionPanelClosed">
<div class="AccordionPanelTab">
<table width="100%" border="0">
<tbody><tr>
<td>
<div style="margin-top:0px">
<span style="font-weight:bold; font-size:18px">'.$row->package_name.'</span>
<strong>€ '.$row->price.' / '.$row->n_of_message.' chips</strong>
- '.strip_tags(stripcslashes($row->desc)).'<br>
<span style="padding:0 3px 1px 3px; color:#000; font-size:10px; font-weight:bold; display:inline-block; margin-top:4px; margin-left:2px; margin-bottom:4px">
<a class="btn radius"href="upgrade.php?package_id='.$row->package_id.'" data="'.$row->package_id.'"><i class="icon-shopping-cart"></i> jetzt kaufen</a></span>[/quote]
$sql ="SELECT * FROM `message_package` order by price asc";
$result = $db->query($sql);
while($row = $result->fetch_object()){
$span = $row->primary== 1 ?'span3':'span2';
echo ' <div class="AccordionPanel AccordionPanelClosed">
<div class="AccordionPanelTab">
<table width="100%" border="0">
<tbody><tr>
<td>
<div style="margin-top:0px">
<span style="font-weight:bold; font-size:18px">'.$row->package_name.'</span>
<strong>€ '.$row->price.' / '.$row->n_of_message.' chips</strong>
- '.strip_tags(stripcslashes($row->desc)).'<br>
<span style="padding:0 3px 1px 3px; color:#000; font-size:10px; font-weight:bold; display:inline-block; margin-top:4px; margin-left:2px; margin-bottom:4px">
<a class="btn radius"href="upgrade.php?package_id='.$row->package_id.'" data="'.$row->package_id.'"><i class="icon-shopping-cart"></i> jetzt kaufen</a></span>[/quote]
Is het niet makkelijker om te kijken of een gebruiker dit pakket al heeft besteld, ik neem aan dat alle bestellingen van een gebruiker wordt opgeslagen.
Als je die koppeling kan ophalen kan je aan de hand daarvan het item tonen of aangeven dat dit niet meer besteld kan worden.