我正在开发电子商务网站。我几乎完成了。但是我在用美元显示产品价格时有一个问题。如果用户在印度打开的网站以卢比显示产品价格,而在国外访问网站则以美元显示产品价格。
我创建了产品详细信息页面,下面提供了我的代码:
public function getProductDetail($pro_code,$error_msg){
$showProDetail='';
$result =$this->connect()->query("SELECT * FROM wm_products WHERE pro_code='$pro_code'");
if($result->num_rows>0){
$row = $result->fetch_assoc();
$cate_id = $row['cate_id'];
$image = json_decode($row['pro_img']);
$showProDetail.='
<div class="page product_detail_wrapper">
<div class="panel-body">
<div class="row">
<div class="col-lg-4 col-mg-4 col-sm-4 col-xs-12">
<figure class="thumbnail">
<img src="../uploads/product_images/' .$image[0].'" alt="">
</figure>
</div>
<div class="col-lg-8 col-mg-8 col-sm-8 col-xs-12">
<div class="responsive-table">
<table class="table table-striped">
<tr>
<td><strong>Product Code</strong></td>
<td>:'.$row["pro_code"].'</td>
</tr>
<tr>
<td><strong>Name</strong></td>
<td>:'.ucfirst(str_replace("_", " ", $row["pro_name"])).'</td>
</tr>
<tr>
<td><strong>Price</strong></td>
<td>: Rs.'.$row["pro_price"].'</td>
</tr>
<tr>
<td><strong>Discount</strong></td>
<td>:'.$row["pro_discount"].'</td>
</tr>
<tr>
<td><strong>Available In</strong></td>
<td>:'.$row["pro_weight"].'</td>
</tr>
<tr>
<td><strong>Quantity</strong></td>
<td>:'.$row["pro_quantity"].'</td>
</tr>
<tr>
<td><strong>Short Description</strong></td>
<td>:'.$row["short_disc"].'</td>
</tr>
</table>
</div>
</div>
</div><br>
</div>
</div>';
}
else{
$showProDetail = '<div class="alert alert-danger">Product Detail Not Found</div>';
}
return $showProDetail;
}
那么,如何设置印度的卢比产品价格和印度以外的美元价格?
答案 0 :(得分:3)
要设置产品价格,您需要执行以下4个步骤:
1. 获取访问者位置。。因此,您可以使用HTML Geolocation API查找访问者的当前位置。在https://www.codexworld.com/get-visitor-location-using-html5-geolocation-api-php/处,您可以找到有关如何使用PHP中的HTML5地理位置API获取访问者位置的教程。
2. 将货币从INR转换为USD。因为您需要将非印度访客的产品价格设置为USD。因此,要将INR转换为USD,您可以使用以下源代码:
.carousel {
min-height: 100%;
}
在 getProductDetail 函数中,您可以检查访问者的位置。在$ showProDetail语句上方,可以通过以下过程对其进行检查:
function currency($amount) {
$from_currency = "INR";
$to_currency = "USD";
$from_currency = urlencode($from_currency);
$to_currency = urlencode($to_currency);
$url = "https://www.google.com/search?q=".$from_currency."+to+".$to_currency;
$get = file_get_contents($url);
$data = preg_split('/\D\s(.*?)\s=\s/',$get);
$exhangeRate = (float) substr($data[1],0,7);
$converted_amount = $amount*$exhangeRate;
return $converted_amount;
}
最后,您可以直接在价格td中放置产品价格。
if($location == 'India') {
$price = "Rs.".$row["pro_price"];
} else {
$price = "USD.".currency($row["pro_price"]);
}
答案 1 :(得分:1)
$amount=100; //Your ammount
$from_currency = "INR";
$to_currency = "USD";
$from_currency = urlencode($from_currency);
$to_currency = urlencode($to_currency);
$url = "https://www.google.com/search?q=".$from_currency."+to+".$to_currency;
$get = file_get_contents($url);
$data = preg_split('/\D\s(.*?)\s=\s/',$get);
$exhangeRate = (float) substr($data[1],0,7);
$converted_amount = $amount*$exhangeRate;
please use $url = "https://www.google.com/search?q=".$from_currency."+to+".$to_currency;