60
Universitas Kisten Petra
4.
IMPLEMENTASI APLIKASI
Pada bab ini akan dibahas tentang implementasi aplikasi sesuai dengan
analisis dan desain sistem yang dibuat pada bab sebelumnya. Implementasi
aplikasi terdiri dari pengaturan koneksi database dan implementasi program.
Daftar hubungan fitur,
data flow diagram
,
flowchart
, dan segmen program dapat
dilihat pada Tabel 4.1.
Tabel 4.1. Daftar Hubungan Fitur,
Data Flow Diagram
,
Flowchart
, dan Segmen
Program
Nama Fitur
Data Flow
Diagram
(DFD)
Flowchart
Segmen
Program
Login dan mengelola data
user
Proses 1.1
Login
and
Manage
User
3.9., 3.11.
4.2., 4.4., 4.5.
Mengelola data produk
Proses 1.2.
Mengelola Data
Produk
3.24.
4.16.
Mengelola data
user
Proses 1.3.
Mengelola Data
User
3.11.
4.4., 4.5.
Membuat
form
konfirmasi
top up
Proses 1.4.
Top Up User
3.15.
4.8., 4.9.
Mengelola data
top up
admin
Proses 1.5.
Manage Top Up
Admin
3.15.
-
Membuat
request third
party
Proses 1.6.
Third Party
3.45.
4.19., 4.20.
Membuat
chat third party
antara
user
(pembeli dan
penjual) dan
admin
Proses 1.7.
61
Universitas Kisten Petra
Implementasi sistem yang dibuat adalah sebagai berikut:
Website aplikasi marketplace untuk mahasiswa dan alumni Universitas
Kristen Petra ini didesain menggunakan
bootstrap framework
Untuk bahasa pemrograman yang digunakan adalah
PHP
,
AJAX
, dan
SOAP
dengan metode REST
.
Server yang digunakan menggunakan
cPanel
versi 60.0 (
build
28) dengan
sistem operasi
linux
Untuk dapat login sebagai user pada aplikasi ini user harus terdaftar pada
server
john.petra.ac.id
(Mahasiswa dan Alumni Universitas Kristen Petra).
Domain yang digunakan beralamat pada
www.petra-commerce.com
pada
domain ini sudah tersetifikasi menggunakan
HTTPS
oleh
COMODO CA
Limited.
Pada setiap segmen program yang vital juga telah dilengkapi
dengan pengamanan menggunakan Anti
XSS
(
Cross Site Scripting
) dan
Anti
SQL Injection.
Main flowchart
aplikasi
marketplace
untuk mahasiswa dan alumni
Universitas Kristen Petra dapat dilihat pada Gambar 4.1. Pada
flowchart
tersebut
ada 2 hak akses user yang dapat login yaitu
admin
dan
user
.
62
Universitas Kisten Petra
Gambar 4.1.
Main Flowchart
Aplikasi
Marketplace
untuk Mahasiswa dan Alumni Universitas Kristen Petra
63
Universitas Kisten Petra
4.1.
Pengaturan Koneksi Database
Untuk dapat mengakses, menambah, dan mengelola data yang tersimpan
diperlukan pengaturan koneksi yang menghubungkan antara program dengan
database.
Pengaturan koneksi
database
dilakukan pada
file
“connect.php”.
Source
code
pengaturan koneksi program dengan
database
dapat dilihat pada Segmen
Program 4.1.
Segmen Program 4.1.
Source Code
Pengaturan Koneksi Program dengan
Database
4.2.
Implementasi Program
Implementasi program merupakan tahap penerapan rancangan sistem
sesuai dengan desain yang telah dibuat pada bab sebelumnya menjadi sebuah
program. Pembuatan program dilakukan secara bertahap, mulai dari pembuatan
menu
Login
sampai dengan fungsi
HTTPS
4.2.1.
Menu
Login
Untuk melakukan proses
login
pengguna harus mengisi
username
dan
mengisi
password
di dalam menu
Login
. Setiap pengguna memiliki status atau
hak akses yang berbeda-beda. Khusus untuk pengguna berstatus user jika baru
pertama kali
login
maka otomatis akan menambah data di
database
. Source
code
fungsi
login
dapat dilihat pada Segmen Program 4.2.
mysqli_connect('101.50.1.32','wwwpetra_user','PetraCommerce123' ,'wwwpetra_pcom');
64
Universitas Kisten Petra
Segmen Program 4.2.
Source Code
fungsi
login
4.2.2.
Tampilan Utama (
Main Layout
)
Tampilan utama aplikasi menampilkan gambar barang koleksi terakhir
yang dijual oleh pengguna. Koleksi terakhir ditampilkan di tampilan utama
aplikasi baik pengguna sudah melakukan
login
atau belum (
by default
). Jumlah
koleksi terbaru yang ditampilkan sebanyak 5 (lima) buah gambar barang.
Source
$fp = fsockopen($host = 'john.petra.ac.id',$port = 110,$errno,$errstr,$timeout); $errstr = fgets($fp); if(substr($errstr,0,1) =='+'){ fputs($fp,"USER ".$username."\n"); $errstr = fgets($fp); if(substr($errstr,0,1) == '+'){ fputs($fp,"PASS ".$password."\n"); $errstr = fgets($fp); if(substr($errstr,0,1) == '+'){ $benar = true; } } } if($benar == false){
$Q = "select * from admin where useradmin = '$username' and '$password' = password";
$hasil = mysqli_query($con,$Q) or die ("asda"); if(mysqli_num_rows($hasil) == 1) { $_SESSION['admin'] = $username; header("location: adminindex.php"); } else {echo "<script>alert('WrongUsername/Password')</script>";} }
else if($benar == true){
$que = mysqli_query($con,"select * from user where Username = '".$_POST['username']."'");
$terdaftar = mysqli_num_rows($que); if($terdaftar<1)
{
$tanggal = date('y-m-d');
$key = mysqli_query($con,"insert into user(Username, ExpiredPremium) values ('$username', '$tanggal')") or die ("gagal");
}
$_SESSION['user'] = $username; header("location: account.php"); }
65
Universitas Kisten Petra
code
fungsi tampilan utama aplikasi dan koleksi terakhir dapat dilihat pada
Segmen Program 4.3.
Segmen Program 4.3.
Source Code
fungsi tampilan utama aplikasi dan koleksi
terakhir
4.2.3.
Menu
Edit Profile
(
My Account
)
Di dalam menu
Edit Profile
pengguna dapat melengkapi data diri. Apabila
pengguna berstatus
user
maka ketika
login
akan terarahkan ke halaman ini. Pada
menu ini akan menampilkan semua data diri
user
yang dapat dirubah.
Source code
fungsi untuk mengambil data user dapat dilihat pada Segmen Program 4.4.,
sedangkan
Source code
untuk memperbaharui data user dapat pada Segmen
Program 4.5.
mysqli_query($con, "SELECT DISTINCT p.Nama, p.Harga, p.Deskripsi, ph.IDPath, p.IDProduk
FROM produk p JOIN photo ph
ON p.IDProduk = ph.IDProduk WHERE p.Status <> 2
GROUP BY ph.IDProduk ORDER BY p.IDProduk DESC LIMIT 5
66
Universitas Kisten Petra
Segmen Program 4.4.
Source Code
fungsi
edit profile
Segmen Program 4.5.
Source Code
fungsi
edit profile picture
move_uploaded_file($In_Photo['tmp_name'],'img/ProfilePic/'.$idu sername.'_'.$In_Photo['name']);
$In_ProfilePic = $idusername.'_'.$In_Photo['name']; mysqli_query($con,"update user set
PhotoProfile='$In_ProfilePic' where Username='$idusername'") or die ("Failed");
echo "<script type='text/javascript'>alert('Berhasil mengupdate photo!');</script>";
header("Refresh:0");} //view
$que = mysqli_query($con,"select * from user where Username = '$idusername'
");
if ($ac_City != NULL) {
$mas = mysqli_query($con,"select r.namaregional, c.namakota, c.idregional
from regional r join city c on (c.idregional = r.idregional) where c.idcity = $ac_City
");
if(!$mas){
echo "Gagal: ".mysqli_error($con)."<br>";die; } while($row = mysqli_fetch_array($mas)){ $ac_NamaReg = $row['0']; $ac_NamaCity = $row['1']; $ac_IDReg = $row['2']; } } else{ $ac_NamaReg ='REGIONAL'; $ac_NamaCity = 'KOTA'; $ac_IDReg = 0; } //save or update
mysqli_query($con,"update user set Email='$In_Email',
FirstName='$In_FName', LastName='$In_LName', BBM='$In_BBM', Zip='$In_Zip', city='$In_City', Phone='$In_Phone',
Line='$In_Line', WA='$In_WA', Address='$In_Address' where Username='$idusername'") or die ("Failed");
echo "<script type='text/javascript'>alert('Berhasil mengupdate data diri!');</script>";
67
Universitas Kisten Petra
4.2.4.
Menu Tambah Iklan
Di dalam menu tambah iklan pengguna dapat membuat iklan produk atau
barang yang dimiliki untuk dijual atau diiklankan. Untuk membuka menu ini
pengguna diwajibkan untuk melengkapi data diri pada menu
edit profile
.
Source
code
untuk fungsi tambah iklan dapat pada Segmen Program 4.6.
Segmen Program 4.6.
Source Code
fungsi tambah iklan
4.2.5.
Menu
Wishlist
Di dalam menu
wishlist
pengguna dapat melihat dan menghapus nama,
harga, dan gambar dari barang yang termasukpada
wishlist user. Source code
fungsi untuk mengambil dan menghapus data
wishlist
dapat dilihat pada Segmen
Program 4.7.
//insert produk
mysqli_query($con,"insert into produk (Nama, Harga, Deskripsi, idkategorik, TanggalUpdate, Username, ExpireDate) values
('$In_Nama', $In_Harga, '$In_Deskrispi', $In_Kategori, '$In_Tanggal', '$idusername', '$In_Expired')") or die ("Faileds"); //insert gambar $images_arr = array(); foreach($_FILES['images']['name'] as $key=>$val){ $image_name = $_FILES['images']['name'][$key]; $tmp_name = $_FILES['images']['tmp_name'][$key]; $target_dir = "img/jual/"; $nama_file = $idusername.'_'.$_FILES['images']['name'][$key]; $target_file = $target_dir.$idusername.'_'.$_FILES['images']['name'][$key] if(move_uploaded_file($_FILES['images']['tmp_name'][$key]
,$target_file)){ $images_arr[] = $target_file; }
mysqli_query($con,"insert into photo (IDProduk,IDPath) values ($idprod, '$nama_file')") or die ("Failed");}
echo "<script
type='text/javascript'>alert('Success');</script>"; header("Refresh:0");}
68
Universitas Kisten Petra
Segmen Program 4.7.
Source Code
fungsi
wishlist
4.2.6.
Menu
Top Up
Di dalam menu
top up
digunakan pengguna untuk konfirmasi apabila telah
melakukan pembayaran guna pengguna yang ini meningkatkan status
member
nya
menjadi
premium member.Source code
fungsi untuk menginput data konfirmasi
top up
(Paypal) dapat dilihat pada Segmen Program 4.8. dan
Source code
fungsi
untuk menginput data konfirmasi
top up
(Transfer) dapat dilihat pada Segmen
Program 4.9.
Segmen Program 4.8.
Source Code Top Up
(
Paypal
)
$In_IDPackage = $_POST['reg_IDPackage'];mysqli_query($con,"insert into topup (Username, IDPackage, DariBank) values ('$idusername', '$In_IDPackage', 'PAYPAL')") or die ("Faileds");
$IDHistory = mysqli_insert_id($con); $_SESSION["IDHistory"] = $IDHistory;
$resP = mysqli_query($con,"select Nama, Harga from package where IDPackage='$In_IDPackage'"); $rowP = mysqli_fetch_array($resP); $querystring .= "return=".urlencode(stripslashes($return_url))."&"; $querystring .= "cancel_return=".urlencode(stripslashes($cancel_url))."&"; $querystring .= "notify_url=".urlencode($notify_url);*/ header("location: ".$querystring); } elseif(_GET('token')!=''&&_GET('PayerID')!=''){ $paypal->DoExpressCheckoutPayment(); } else{ order form } //view
$buka = mysqli_query($con,"select idproduk,idwishlist from wishlist where username='$idusername'");
while ($rows = mysqli_fetch_array($buka)){ $idwishlist = $rows["idwishlist"];
$idprdk[$cont] = $rows[0]; $cont++;
$brg = mysqli_query($con,"select distinct ph.IDPath, p.Nama, p.Harga
from produk pjoin photo ph on p.IDProduk = ph.IDProduk where p.IDProduk = $rows[0] GROUP BY ph.IDProduk
");
//delete wishlist
mysqli_query($con,"delete from wishlist where
69
Universitas Kisten Petra
Segmen Program 4.9.
Source Code Top Up
(Transfer)
4.2.7.
Menu
Product
Di dalam menu
product
pengguna dapat melihat semua barang yang dijual
oleh pengguna lain ataupun pengguna itu sendiri. Selain itu pada halaman ini
dilengkapi fitur search, sort, dan show/page.
Source
fungsi menampilkan
product
dapat dilihat pada Segmen Program 4.10.
Segmen Program 4.10.
Source Code
fungsi menampilkan
product
//tampilan<div class="aa-product-catg-body" id="product-body"> </div> //get ajax $.get("ajaxproduct.php",{ "sortby": sortby, "idkategorib": idkategorib, "idkategorik": idkategorik, "pricelower": pricelower, "priceupper": priceupper, "showpage": showpage, "cari": cari, "page": page, "list": list, },function(hasil){ $("#product-body").html(hasil); }); //ajax
$q=mysqli_query($con, "SELECT DISTINCT p.Nama, p.Harga, p.Deskripsi, ph.IDPath, p.IDProduk
FROM produk p JOIN photo ph
ON p.IDProduk = ph.IDProduk LEFT JOIN kategorik kk
ON p.idkategorik=kk.idkategorik LEFT JOIN user u
ON p.Username=u.Username $filter
GROUP BY ph.IDProduk $sort
");
mysqli_query($con,"insert into topup (Username, IDPackage, NamaRekening, DariBank, NomorRekening, TanggalTransfer) values ('$idusername', $In_IDPackage, '$In_NamaRekening',
'$In_DariBank', '$In_NomorRekening', '$In_TanggalTransfer')") or die ("Faileds");
70
Universitas Kisten Petra
4.2.8.
Fungsi Search Product
Di dalam menu
search product
pengguna dapat melakukan pencarian
pertama berdasarkan nama dan
id username.
Kedua pengguna dapat memfilter
pencarian berdasar kategori besar dan kategori kecil. Terakhir pengguna dapat
memfilter barang berdasarkan harga minimal dan harga maksimal dari barang.
Source
fungsi
searchproduct
dapat dilihat pada Segmen Program 4.11.
Segmen Program 4.11.
Source Code
fungsi
searchproduct
4.2.9.
Fungsi Sort
Di dalam menu sort terdapat pilihan
sorting
barang berdasarkan tanggal,
nama dan harga. Secara
default
barang tersorting berdasarkan tanggal dan status
user
pemilik barang. Khusus untuk barang dari
user premium member
akan tampil
selalu diatas.
Source
fungsi
sortproduct
dapat dilihat pada Segmen Program 4.12.
Segmen Program 4.12.
Source Code
fungsi
sortproduct
4.2.10.
Fungsi
Pagination
dan
Show Page
Fungsi ini akan menampilkan produk sesuai dengan keinginan user yaitu
(6,12, dan 24 produk). Halaman akan menyesuaikan dengan fungsi
pagination
jika jumlah produk melebihi dari 1 halaman.
Source Code
fungsi
pagination
dan
show page
dapat dilihat pada Segmen Program 4.13.
if($sortby == "name"){
$sort = " order by p.Nama asc "; }
else if($sortby == "price"){ $sort = " order by p.Harga asc "; }
else if($sortby == "date"){
$sort = " order by u.MemberStatus desc, p.IDProduk desc "; }
$filter = $filter." and (p.Nama like '%".$cari."%' or p.Username like '%".$cari."%')";
71
Universitas Kisten Petra
Segmen Program 4.13.
Source Code
fungsi
pagination
dan
show page
4.2.11.
Fungsi
Filter
Kategori dan Harga
Fungsi ini akan menampilkan produk sesuai dengan keinginan kategori
user. Terdapat 2 kategori yaitu kategori besar dan kategori kecil.
Source Code
fungsi
filter
kategori dan harga dapat dilihat pada Segmen Program 4.14.
if(isset($_GET["showpage"])){ $showpage =
antixss(mysqli_real_escape_string($con,$_GET["showpage"]));} $q=mysqli_query($con, "SELECT DISTINCT p.Nama, p.Harga, p.Deskripsi, ph.IDPath, p.IDProduk
FROM produk p JOIN photo ph
ON p.IDProduk = ph.IDProduk LEFT JOIN kategorik kk
ON p.idkategorik=kk.idkategorik LEFT JOIN user u
ON p.Username=u.Username $filter GROUP BY ph.IDProduk $sort "); $jumlah_data = mysqli_num_rows($q);
$jumlah_halaman = ceil($jumlah_data / $showpage); if($jumlah_halaman == 0){ $jumlah_halaman = 1;} if($page > $jumlah_halaman-1){ $page = $jumlah_halaman-1;} if($page < 0){ $page = 0;}
72
Universitas Kisten Petra
Segmen Program 4.14.
Source Code
fungsi
filter
kategori dan harga
4.2.12.
Menu
Product Detail
Di dalam menu
product detail
user pengguna dapat melihat detail info
mengenai produk. Detail tersebut termasuk data dan kontak pemilik barang.
Terdapat juga fitur
add to wishlist
dan
add rating user
pada halaman ini.
Source
Code
menampilkan menu
product detail
dapat dilihat pada Segmen Program 4.15.
$pricelower = ""; if(isset($_GET["pricelower"])){ $pricelower = antixss(mysqli_real_escape_string($con,$_GET["pricelower"])); } $priceupper = ""; if(isset($_GET["priceupper"])){ $priceupper = antixss(mysqli_real_escape_string($con,$_GET["priceupper"])); }
$filter = " where p.Status='1' "; if($idkategorib != ""){
$filter = $filter." and kk.idkategorib='$idkategorib' "; }
if($idkategorik != ""){
$filter = $filter." and p.idkategorik='$idkategorik' "; }
if($pricelower != ""){
$filter = $filter." and p.Harga >= '$pricelower' "; }
if($priceupper != ""){
$filter = $filter." and p.Harga <= '$priceupper' "; }
73
Universitas Kisten Petra
Segmen Program 4.15.
Source Code
fungsi menampilkan
product detail
4.2.13.
Menu
Edit Product
Di dalam menu
edit product
hanya dapat muncul dan diakses oleh
pengguna pemilik
dari
barang tersebut. Pada menu ini pengguna juga dapat
menghapus dan merubah status barang menjadi terjual. Pengguna juga dapat
merubah detail info dari barang tersebut.
Source Code
menu edit product dapat
dilihat pada Segmen Program 4.16.
if (isset($_GET['IDProduk'])){ $IDPro = $_GET['IDProduk'];
$cekbarang = mysqli_query($con, "SELECT count(*) from produk where IDProduk = $IDPro and Status=1");
$adabarang = mysqli_fetch_array($cekbarang); $adab = $adabarang[0]; if ($adab !=1){ header("location: product.php");} $Nama = 'A'; $Harga = 0; $Deskripsi = 'B';
$q=mysqli_query($con, "SELECT p.Nama, p.Harga, p.Deskripsi, ph.IDPath, p.IDProduk, u.FirstName, u.LastName, u.Phone, u.Line, u.WA, u.BBM, u.Address, u.PhotoProfile, u.Rating, c.namakota, r.namaregional, p.Username, u.JumlahOrangRating FROM produk p JOIN photo ph ON p.IDProduk = ph.IDProduk JOIN user u ON p.Username = u.Username JOIN city c ON u.city = c.idcity JOIN regional r ON c.idregional = r.idregional WHERE p.IDProduk = '$IDPro' GROUP BY ph.IDProduk
");
//gambar
$gmbr=mysqli_query($con, "SELECT IDPath FROM photo
74
Universitas Kisten Petra
Segmen Program 4.16.
Source Code
fungsi menampilkan
edit product
4.2.14.
Fungsi
Add Rating User
Di dalam menu
add rating user
pengguna dapat melakukan rating bintang
1-5 (1 sampai dengan 5) kepada sesama pengguna. Menu ini dapat ditemukan
ketika membuka halaman menu
product detail
. Pengguna hanya dapat melakukan
rating
satu kali terhadap pengguna lain, dan tidak dapat memberikan
rating
pada
diri sendiri.
Source Code
fungsi
add rating user
dapat dilihat pada Segmen
Program 4.17.
Segmen Program 4.17.
Source Code
fungsi add rating
$input = mysqli_query($con,"insert into cekrating (usernamea,usernameb,jumlahrating) values('$usernamea','$usernameb',$rating)");
$Rating = (($Rating * $JumlahOrangRating) + $rating) / ($JumlahOrangRating+1);
$JumlahOrangRating = $JumlahOrangRating + 1; $input = mysqli_query($con,"update user set
Rating='$Rating',JumlahOrangRating='$JumlahOrangRating' where Username='$usernameb'");
$(function(){
isirating = function(r){ for(i=1; i<=r; i++){
if($("#star"+i.toString()).hasClass("fa-star-o")){ $("#star"+i.toString()).removeClass("fa-star-o"); }
$("#star"+i.toString()).addClass("fa-star"); }
for(i=r+1; i<=5; i++){
if($("#star"+i.toString()).hasClass("fa-star")){ $("#star"+i.toString()).removeClass("fa-star"); } $("#star"+i.toString()).addClass("fa-star-o"); }}}); $que = mysqli_query($con,"
select p.Username, p.Nama, p.Harga, p.Deskripsi, kk.nama, kb.nama, p.TanggalUpdate, p.Status, p.ExpireDate,
kk.idkategorik, kb.idkategorib from produk p join kategorik kk on p.idkategorik = kk.idkategorik join kategorib kb on kk.idkategorib = kb.idkategorib where p.IDProduk = $IDProduk
");
//editproduct
mysqli_query($con,"update produk set Status = 2 where IDProduk=$IDProduk and Username = '$idusername'");
75
Universitas Kisten Petra
4.2.15.
Fungsi
HTTPS
HTTPS (Hypertext Transfer Protocol Secure) berguna untuk melindungi
integritas dan kerahasiaan data pengguna antara komputer pengguna dan situs.
Misalnya, saat pengguna memasukkan data diri ke
form login
guna membeli
produk, HTTPS melindungi informasi pribadi pengguna antara pengguna tersebut
dan
website
. Pengguna mengharapkan pengalaman online yang aman saat
memberikan data melalui situs web.
Source Code
fungsi
add rating user
dapat
dilihat pada Segmen Program 4.18.
Segmen Program 4.18.
Source Code
Fungsi HTTPS
4.2.16.
Fungsi Third Party
Di dalam menu
third party
pengguna dapat melakukan permohonan
bantuan
third party
untuk bertransaksi melalui
admin
atau
paypal
. Menu ini dapat
ditemukan ketika membuka halaman menu
product detail
. Pengguna hanya dapat
melakukan
request
satu kali terhadap barang yang sama.
Source Code
fungsi
third
party
(Transfer) dapat dilihat pada Segmen Program 4.19. dan
Source code
fungsi
third party
(
paypal
) dapat dilihat pada Segmen Program 4.20.
Segmen Program 4.19.
Source Code
Fungsi Third Party (Transfer)
$adathird=mysqli_query($con,"select count(*) from thirdparty where IDProduk='$IDProduk' and UsernamePembeli='$idusername'") or die ("Failed");$rowas = mysqli_fetch_array($adathird); $thirdada = $rowas['0'];
if ($thirdada < 1){
$path = $_FILES['reg_BuktiTransfer']['name'];
$ext = strtolower(pathinfo($path, PATHINFO_EXTENSION)); }
RewriteCond %{HTTPS} off
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] RewriteCond %{HTTP_HOST} !^www.
76
Universitas Kisten Petra while($rowChat = mysqli_fetch_array($resultChat)){
$rowChat["Pesan"] =
str_replace("\n","<br/>",$rowChat["Pesan"]);
echo "<div class=\"alert $type\"><span style=\"font-size: 10px;\">".date("d/m/Y
H:i",strtotime($rowChat["TanggalChat"]))."</span><br/>".$rowCha t["Username"]." (".$rowChat["Status"].") :
".$rowChat["Pesan"]."</div>";}
Segmen Program 4.20.
Source Code
Fungsi Third Party (Paypal)
4.2.17.
Fungsi
Chat Third Party
Di dalam menu
chat
third party
pengguna yang mendapati masalah
mengenai transaksi antara pembeli dan penjual dapat meminta bantuan admin
untuk memulai obrolan agar masalah dapat terselesaikan melalui
online chat
.
Source Code
fungsi
chat third party
dapat dilihat pada Segmen Program 4.21.
Segmen Program 4.21.
Source Code
Fungsi
Chat Third Party
$paypal= new MyPayPal();$httpParsedResponseAr =
$paypal->PPHttpPost('SetExpressCheckout', $padata, PPL_API_USER, PPL_API_PASSWORD, PPL_API_SIGNATURE, PPL_MODE);
if("SUCCESS" == strtoupper($httpParsedResponseAr["ACK"]) || "SUCCESSWITHWARNING" == strtoupper($httpParsedResponseAr["ACK"])){ $paypalurl ='https://www.'.PPL_MODE.'.paypal.com/cgi- bin/webscr?cmd=_express-checkout&token='.$httpParsedResponseAr["TOKEN"].''; header('Location: '.$paypalurl); }else{
echo '<div style="color:red"><b>Error :
</b>'.urldecode($httpParsedResponseAr["L_LONGMESSAGE0"]).'</div >'; echo '<pre>'; print_r($httpParsedResponseAr); echo '</pre>'; }}}
if(isset($_GET["token"]) && isset($_GET["PayerID"])){ //get session variables
//set item info here, otherwise we won't see product details later
//We need to execute the "DoExpressCheckoutPayment" at this point to Receive payment from user.
$paypal= new MyPayPal();
$httpParsedResponseAr =
$paypal->PPHttpPost('DoExpressCheckoutPayment', $padata, PPL_API_USER, PPL_API_PASSWORD, PPL_API_SIGNATURE, PPL_MODE);
//Check if everything went ok..
if("SUCCESS" == strtoupper($httpParsedResponseAr["ACK"]) || "SUCCESSWITHWARNING" ==