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
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
|
<?php session_start(); $ItemName=$_SESSION['ItemName'] ; //Item Name $ItemPrice=$_SESSION['ItemPrice']; //Item Price $ItemNumber=$_SESSION['ItemNumber']; //Item Number $ItemDesc=$_SESSION['ItemDesc']; //Item Number $ItemQty=$_SESSION['ItemQty']; // Item Quantity $ItemTotalPrice=$_SESSION['ItemTotalPrice']; //(Item Price x Quantity = Total) Get total amount of product; $TotalTaxAmount=$_SESSION['TotalTaxAmount']; //Sum of tax for all items in this order. $HandalingCost=$_SESSION['HandalingCost']; //Handling cost for this order. $InsuranceCost=$_SESSION['InsuranceCost']; //shipping insurance cost for this order. $ShippinDiscount=$_SESSION['ShippinDiscount']; //Shipping discount for this order. Specify this as negative number. $ShippinCost =$_SESSION['ShippinCost']; //Although you may change the value later, try to pass in a shipping amount that is reasonably accurate. $GrandTotal=$_SESSION['GrandTotal']; $padata=$_SESSION['padata']; $token=$_SESSION['token']; if($_SESSION['lang'] == 'de'){ include 'http://patterns.bplaced.net/templates/header_w_nav.php'; echo '<div class="contentpp"><br/><p><h1 align="center">Vielen Dank für deinen Einkauf!<br/></h1></p>'; } else {include 'http://patterns.bplaced.net/templates/header_w_nav_en.php'; echo '<div class="contentpp"><br/><p><h1 align="center">Thank you for your purchase!<br/></h1></p>'; } /*?>
<div class="contentpp"><br/><p><h1 align="center">Vielen Dank für deinen Einkauf!</h1></p> <!-- <p>Du wirst in Kürze zu deinem Download wietergeleitet!</p>--> <?php*/ include("../schnitte/connect.php"); include("paypal.class.php"); include("config.php");
/*echo 'Bis hierher!!!!';*/ //We need to execute the "DoExpressCheckoutPayment" at this point to Receive payment from user. $paypal= new MyPayPal(); $httpParsedResponseAr = $paypal->PPHttpPost('DoExpressCheckoutPayment', $padata, $PayPalApiUsername, $PayPalApiPassword, $PayPalApiSignature, $PayPalMode); /*sleep(3);*/ //Check if everything went ok.. if("SUCCESS" == strtoupper($httpParsedResponseAr["ACK"]) || "SUCCESSWITHWARNING" == strtoupper($httpParsedResponseAr["ACK"])) {
/*echo '<h2>Success</h2>';*/ if($_SESSION['lang'] == 'de'){ echo '<br/><br/>Deine Transaktions-ID : '.urldecode($httpParsedResponseAr["PAYMENTINFO_0_TRANSACTIONID"].'<br/>'); } else { echo '<br/><br/>Your Transaction-ID : '.urldecode($httpParsedResponseAr["PAYMENTINFO_0_TRANSACTIONID"].'<br/>');} /* //Sometimes Payment are kept pending even when transaction is complete. //hence we need to notify user about it and ask him manually approve the transiction */ if('Completed' == $httpParsedResponseAr["PAYMENTINFO_0_PAYMENTSTATUS"]) { $padata = '&TOKEN='.urlencode($token); $paypal= new MyPayPal(); $httpParsedResponseAr = $paypal->PPHttpPost('GetExpressCheckoutDetails', $padata, $PayPalApiUsername, $PayPalApiPassword, $PayPalApiSignature, $PayPalMode); $buyerName = $httpParsedResponseAr["FIRSTNAME"].' '.$httpParsedResponseAr["LASTNAME"]; $buyerEmail = $httpParsedResponseAr["EMAIL"]; $transactionID = $httpParsedResponseAr["PAYMENTREQUESTINFO_0_TRANSACTIONID"]; $ItemName = $httpParsedResponseAr["L_PAYMENTREQUEST_0_NAME0"]; $ItemNumber = $httpParsedResponseAr["L_PAYMENTREQUEST_0_NUMBER0"]; $_SESSION['txid'] = $transactionID; $str_buyer1 = str_replace('%40','@',$buyerEmail); $str_buyer_mail = str_replace('%2e','.',$str_buyer1); /*echo $str_buyer_mail;*/ $timestamp = time(); $datum = date("Y.m.d H:i:s",$timestamp); /*$uhrzeit = date("H:i",$timestamp);*/ include("../schnitte/connect.php"); MYSQL_SELECT_DB($datenbank) or die ( "<H3>Datenbank nicht vorhanden</H3>"); $insert_row = MYSQL_QUERY("INSERT INTO BuyerTable (BuyerName,BuyerEmail,TransactionID,ItemName,ItemNumber,delivered,DatePurchase,pending) VALUES ('$buyerName','$str_buyer_mail','$transactionID','$ItemName','$ItemNumber','0','$datum','0')"); /*MYSQL_QUERY("UPDATE `BuyerTable` SET `BuyerEmail` = REPLACE(`BuyerEmail`, '%40' , '@')"); MYSQL_QUERY("UPDATE `BuyerTable` SET `BuyerEmail` = REPLACE(`BuyerEmail`, '%2e' , '.')"); */ if($_SESSION['lang'] == 'de'){echo '<br/><br/><div style="color:green">Bezahlvorgang erfolgreich abgeschlossen!</div>'; echo '<br/><br/><a href="pp_download.php">Sollte der Download nicht automatisch starten, bitte hier klicken...</a><br/><br/>'; } else { echo '<br/><br/><div style="color:green">Payment successful!</div>'; echo '<br/><br/><a href="pp_download.php">If download does not start automatically, please click here...</a><br/><br/>'; } /* TEST! E-MAIL AN MICH BEI ERFOLGREICHEM KAUF!!!!! */ //$empfaenger = "art.domino@aon.at"; $empfaenger = $buyerEmail; $absendername = "Black Snail"; $absendermail = "blacksnailpatterns@gmx.at"; $bcc = "art.domino@aon.at"; $crypted = hash('sha512', $transactionID); $link = "http://patterns.bplaced.net/pp/getpattern.php?code=$crypted&id=$transactionID"; $betreff = "!!!!!Kauf erfolgreich!"; $betreff_en = "Purchase successful!"; $text = "Vielen Dank für deinen Einkauf!\r\nDeine Bestellung mit der Transaktions-ID $transactionID war erfolgreich!\r\nViel Erfolg und Spaß!"; $text_en = "Thank you very much for your purchase!\r\nYour order with the transaction-ID $transactionID was successful!\r\nHappy sewing!"; if($_SESSION['lang'] == 'de') { mail($buyerEmail, $betreff, $text, "From: $absendername <$absendermail>\r\n"."MIME-Version: 1.0\r\n"."Content-type:text/plain;charset=utf-8\r\n"."BCC: $bcc"); } else { mail($buyerEmail, $betreff_en, $text_en, "From: $absendername <$absendermail>\r\n"."MIME-Version: 1.0\r\n"."Content-type:text/plain;charset=utf-8\r\n"."BCC: $bcc");} /* ENDE TEST E-MAIL */ echo '<meta http-equiv="REFRESH" content="2; URL=pp_download.php">'; } elseif('Pending' == $httpParsedResponseAr["PAYMENTINFO_0_PAYMENTSTATUS"]) { $padata = '&TOKEN='.urlencode($token); $paypal= new MyPayPal(); $httpParsedResponseAr = $paypal->PPHttpPost('GetExpressCheckoutDetails', $padata, $PayPalApiUsername, $PayPalApiPassword, $PayPalApiSignature, $PayPalMode); $buyerName = $httpParsedResponseAr["FIRSTNAME"].' '.$httpParsedResponseAr["LASTNAME"]; $buyerEmail = $httpParsedResponseAr["EMAIL"]; $transactionID = $httpParsedResponseAr["PAYMENTREQUESTINFO_0_TRANSACTIONID"]; $ItemName = $httpParsedResponseAr["L_PAYMENTREQUEST_0_NAME0"]; $ItemNumber = $httpParsedResponseAr["L_PAYMENTREQUEST_0_NUMBER0"]; $_SESSION['txid'] = $transactionID; $str_buyer1 = str_replace('%40','@',$buyerEmail); $str_buyer_mail = str_replace('%2e','.',$str_buyer1); echo $str_buyer_mail; $timestamp = time(); $datum = date("Y.m.d H:i:s",$timestamp); include("../schnitte/connect.php"); MYSQL_SELECT_DB($datenbank) or die ( "<H3>Datenbank nicht vorhanden</H3>"); $insert_row = MYSQL_QUERY("INSERT INTO BuyerTable (BuyerName,BuyerEmail,TransactionID,ItemName,ItemNumber,delivered,DatePurchase,pending) VALUES ('$buyerName','$str_buyer_mail','$transactionID','$ItemName','$ItemNumber','0','$datum','1')"); /*MYSQL_QUERY("UPDATE `BuyerTable` SET `BuyerEmail` = REPLACE(`BuyerEmail`, '%40' , '@')"); MYSQL_QUERY("UPDATE `BuyerTable` SET `BuyerEmail` = REPLACE(`BuyerEmail`, '%2e' , '.')"); */ if($_SESSION['lang'] == 'de') { echo '<div style="color:red">Bestellung erfolgreich abgeschlossen, Bezahlung noch ausständig!<br/> '.'Bitte bestätige die Bezahlung in deinem <a target="_new" href="http://www.paypal.com">Paypal Konto</a> Danke!</div>'; } else { echo '<div style="color:red">Payment successful, payment pending!<br/> '.'Please confirm payment at your <a target="_new" href="http://www.paypal.com">Paypal Account</a> Thank you!</div>'; } /*echo '<div style="color:red">Transaction Complete, but payment is still pending! '. 'You need to manually authorize this payment in your <a target="_new" href="http://www.paypal.com">Paypal Account</a></div>';*/ }
// we can retrive transection details using either GetTransactionDetails or GetExpressCheckoutDetails // GetTransactionDetails requires a Transaction ID, and GetExpressCheckoutDetails requires Token returned by SetExpressCheckOut /* $padata = '&TOKEN='.urlencode($token); $paypal= new MyPayPal(); $httpParsedResponseAr = $paypal->PPHttpPost('GetExpressCheckoutDetails', $padata, $PayPalApiUsername, $PayPalApiPassword, $PayPalApiSignature, $PayPalMode); */ /* if("SUCCESS" == strtoupper($httpParsedResponseAr["ACK"]) || "SUCCESSWITHWARNING" == strtoupper($httpParsedResponseAr["ACK"])) { echo '<br /><b>Stuff to store in database :</b><br /><pre>'; #### SAVE BUYER INFORMATION IN DATABASE ### //see (http://www.sanwebe.com/2013/03/basic-php-mysqli-usage) for mysqli usage /* $buyerName = $httpParsedResponseAr["FIRSTNAME"].' '.$httpParsedResponseAr["LASTNAME"]; $buyerEmail = $httpParsedResponseAr["EMAIL"]; $transactionID = $httpParsedResponseAr["PAYMENTREQUESTINFO_0_TRANSACTIONID"]; $ItemName = $httpParsedResponseAr["L_PAYMENTREQUEST_0_NAME0"]; $ItemNumber = $httpParsedResponseAr["L_PAYMENTREQUEST_0_NUMBER0"]; /* TEST! E-MAIL AN MICH BEI ERFOLGREICHEM KAUF!!!!! */ /* $empfaenger = "art.domino@aon.at"; $absendername = "Black Snail"; $absendermail = "blacksnailpatterns@gmx.at"; $crypted = hash('sha512', $transactionID); $link = "http://patterns.bplaced.net/$crypted"; $betreff = "Kauf erfolgreich!"; $text = "Hallo! Deine Bestellung mit der Transaktions-ID $transactionID war erfolgreich! Vielen Dank! Zum Download deiner Datei folge bitte dem Link: $link"; mail($empfaenger, $betreff, $text, "From: $absendername <$absendermail>");
/* ENDE TEST E-MAIL */ //Open a new connection to the MySQL server /*$mysqli = new mysqli('host','username','password','database_name');*/ /*$mysqli = new mysqli('.$server.','.$user.','.$passwort.','.$datenbank.'); //Output any connection error if ($mysqli->connect_error) { die('Error : ('. $mysqli->connect_errno .') '. $mysqli->connect_error); } */ /* include("../schnitte/login.php"); include("../schnitte/connect.php"); MYSQL_SELECT_DB($datenbank) or die ( "<H3>Datenbank nicht vorhanden</H3>");
$insert_row = MYSQL_QUERY("INSERT INTO BuyerTable (BuyerName,BuyerEmail,TransactionID,ItemName,ItemNumber,delivered) VALUES ('$buyerName','$buyerEmail','$transactionID','$ItemName','$ItemNumber','1')"); /* (BuyerName,BuyerEmail,TransactionID,ItemName,ItemNumber, ItemAmount,ItemQTY) VALUES ('$buyerName','$buyerEmail','$transactionID','$ItemName',$ItemNumber, $ItemTotalPrice,$ItemQTY)");*/ /* SONDERZEICHEN ERSETZEN!!!! */ /* MYSQL_QUERY("UPDATE `BuyerTable` SET `BuyerEmail` = REPLACE(`BuyerEmail`, '%40' , '@')"); MYSQL_QUERY("UPDATE `BuyerTable` SET `BuyerEmail` = REPLACE(`BuyerEmail`, '%2e' , '.')"); if($insert_row){ print 'Success! ID of last inserted record is : <br />'; }else{ die('Error : '); } */ /* echo '<pre>'; print_r($httpParsedResponseAr); echo '</pre>'; } else { echo '<div style="color:red"><b>GetTransactionDetails failed:</b>'.urldecode($httpParsedResponseAr["L_LONGMESSAGE0"]).'</div>'; echo '<pre>'; print_r($httpParsedResponseAr); echo '</pre>';
} */ }else{ echo '<div style="color:red"><b>Error : </b>'.urldecode($httpParsedResponseAr["L_LONGMESSAGE0"]).'</div>'; echo '<pre>'; print_r($httpParsedResponseAr); echo '</pre>'; } /* echo 'Your Transaction ID : '.urldecode($httpParsedResponseAr["PAYMENTREQUESTINFO_0_TRANSACTIONID"]); echo 'Deine Artikelnummer : #'.$ItemNumber;*/ ?>
</div> </div> <div class="footer"><div align="center" style="font-size:70%">Impressum:<br/>Black Snail Patterns<br/>R. Kohlberger<br/>Kreutern 249, A-4820 Bad Ischl<br/> <a href="mailto:blacksnailpatterns@gmx.at">blacksnailpatterns@gmx.at</a> </div> </div> <?php include("../templates/foot.html"); ?>
|