Merhaba web sitemde e-fatura kesebilmek adına sipariş geçen kullanıcılardan tc kimlik, doğum yılı ve adres bilgilerini alamıyorum. Gerekli kodlar aşağıda sorunun nerede olduğunu veya nasıl yapılacağını anlayan bilen biri bakabilirmi.
<div class="col-md-6">
<label><?= line('Name Surname') ?>:</label>
<input value="<?= isset($error) && isset($_POST['name']) ? htmlspecialchars($_POST['name']) : '' ?>" type="text" name="name" required placeholder="<?= htmlspecialchars(line('Enter your name')) ?>.">
</div>
<div class="col-md-6">
<label><?= line('Phone Number') ?>:</label>
<input value="<?= isset($error) && isset($_POST['phone']) ? htmlspecialchars($_POST['phone']) : '' ?>" type="tel" name="phone" required placeholder="<?= htmlspecialchars(line('Enter your phone number')) ?>.">
</div>
<div class="col-md-6">
<label><?= line('Email Address') ?>:</label>
<input value="<?= isset($error) && isset($_POST['email']) ? htmlspecialchars($_POST['email']) : '' ?>" type="email" name="email" required placeholder="<?= htmlspecialchars(line('Enter your email address')) ?>.">
</div>
<div class="col-md-6">
<label><?= line('Billing Address') ?>:</label>
<input value="<?= isset($error) && isset($_POST['address']) ? htmlspecialchars($_POST['address']) : '' ?>" type="text" name="address" required placeholder="<?= htmlspecialchars(line('Enter your billing')) ?>.">
</div>
<div class="col-md-6">
<label><?= line('TR Identity') ?>:</label>
<input value="<?= isset($error) && isset($_POST['identity']) ? htmlspecialchars($_POST['identity']) : '' ?>" type="number" name="identity" required placeholder="<?= htmlspecialchars(line('Enter your tc')) ?>.">
</div>
<div class="col-md-6">
<label><?= line('Year Birth') ?>:</label>
<input value="<?= isset($error) && isset($_POST['birth']) ? htmlspecialchars($_POST['birth']) : '' ?>" type="number" name="birth" required placeholder="<?= htmlspecialchars(line('Enter your year')) ?>.">
</div> public function pay($token, $id)
{
$Order = $this->OrderModel->find($id);
if(!isset($Order['id']) || md5($Order['name'].$Order['phone'].$Order['email'].$Order['address'].$Order['identity'].$Order['birth'].$this->request->getIPAddress()) !== $token) {
header('Location:'.base_url(line('products', 'Route')));
exit;
}
if($Order['status'] == 1) {
header('Location:'.base_url(line('payment', 'Route').'/'.line('success', 'Route')));
exit;
}
if($Order['payment'] == 'bank' && getConfig('bankPayment') == 'system') {
$this->data['BankAccounts'] = model('BankAccountModel')->orderBy('id', 'desc')->findAll();
if($this->request->getMethod() === 'post') {
if(!empty($this->request->getVar('bank')) && is_numeric($this->request->getVar('bank')) && strtotime($this->request->getVar('date')) !== false) {
$bank = intval($this->request->getVar('bank'));
foreach($this->data['BankAccounts'] as $BankAccount) {
if($BankAccount['id'] == $bank) {
$bank = $BankAccount['title'];
break;
}
}
$data = json_encode([
'bank' => $bank,
'name' => strip_tags($this->request->getVar('name')),
'date' => date('d/m/Y', strtotime($this->request->getVar('date'))),
'order' => $Order['id'],
'amount' => $Order['amount'],
'order' => $Order['address'],
'order' => $Order['identity'],
'order' => $Order['birth']
]);
model('FormMessageModel')->insert([
'name' => $Order['name'],
'phone' => $Order['phone'],
'email' => $Order['email'],
'email' => $Order['address'],
'email' => $Order['identity'],
'email' => $Order['birth'],
'subject' => 'Payment Notification',
'message' => $data,
'seen' => 0,
'form' => 'payment-notification'
]);
if(getConfig('formEmail') == 1) {
$EmailContent = view('email/admin', [
'title' => line('New Payment Notification').'!',
'message' => sprintf(line('Someone named "%s" sent a get payment notification<br/><br/>You can find details in the admin panel'), strip_tags($this->request->getVar('name'))).'.'
]);
sendEmail(line('New Payment Notification').'!', $EmailContent, getConfig('adminEmail'));
}
$this->data['paid'] = true;
}
}
}
$this->data['title'] = sprintf('%s - %s', line('Safe Payment'), getConfig('title'));
$this->data['pageDetails'] = [];
$this->data['UserIP'] = $this->request->getIPAddress();
$Order['amount'] += ($Order['amount']/100)*floatval(getConfig($Order['payment'].'Commission'));
$Order['amount'] = floatval(number_format(floatval($Order['amount']), 2, '.', ''));
$this->data['Order'] = $Order;
return $this->layout('payment');
} public function buy_product($id, $slug)
{
$PaymentMethods = ['card', 'crypto', 'mobile', 'bank'];
$Page = model('ProductModel')->find($id);
if (!isset($Page['id']) || !empty(trim($Page['buy_link']))) {
$this->pageNotFound();
}
helper('text');
$RealSlug = url_title(convert_accented_characters($Page['title']), '-', true);
if($RealSlug != $slug) {
header('Location: '.base_url(line('products', 'Route').'/'.$RealSlug.'-'.$Page['id']).'/'.line('buy', 'Route'));
exit;
}
if ($this->request->getMethod() === 'post') {
if (!empty($this->request->getVar('name')) && !empty($this->request->getVar('address')) && !empty($this->request->getVar('identity')) && !empty($this->request->getVar('birth')) && !empty($this->request->getVar('phone')) && is_numeric(str_replace(['+', ' '], '0', $this->request->getVar('phone'))) && filter_var($this->request->getVar('email'), FILTER_VALIDATE_EMAIL) && in_array($this->request->getVar('payment'), $PaymentMethods) && (($this->request->getVar('payment') == 'card' && getConfig('cardEnabled') == 1) || ($this->request->getVar('payment') == 'crypto' && getConfig('cryptoEnabled') == 1) || ($this->request->getVar('payment') == 'mobile' && getConfig('mobileEnabled') == 1) || ($this->request->getVar('payment') == 'bank' && getConfig('bankEnabled') == 1))) {
$OrderModel = model('OrderModel');
$fields = [];
$Page['fields'] = preg_split("/(\r\n|\n|\r)/", $Page['fields']);
foreach ($Page['fields'] as $field) {
if (!empty(trim($field))) {
if (is_array($this->request->getVar('fields')) && isset($this->request->getVar('fields')[md5($field)])) {
$fields[$field] = $this->request->getVar('fields')[md5($field)];
}
}
}
if($this->request->getVar('payment') == 'card' && getConfig('cardPayment') == 'weepay') {
$fields[line('City')] = $this->request->getVar('city');
$fields[line('Country')] = $this->request->getVar('country');
$fields[line('Address')] = $this->request->getVar('address');
}
$OrderModel->insert([
'name' => strip_tags($this->request->getVar('name')),
'phone' => strip_tags($this->request->getVar('phone')),
'email' => strip_tags($this->request->getVar('email')),
'ip' => $this->request->getIPAddress(),
'address' => $this->request->getVar('address'),
'identity' => $this->request->getVar('identity'),
'birth' => $this->request->getVar('birth'),
'fields' => json_encode($fields),
'amount' => $Page['price'],
'payment' => $this->request->getVar('payment'),
'product' => $Page['id'],
'status' => 0
]);
header('Location:' . base_url(line('payment', 'Route') . '/' . md5($this->request->getVar('name') . $this->request->getVar('phone') . $this->request->getVar('email') . $this->request->getVar('address') . $this->request->getVar('identity') . $this->request->getVar('birth') . $this->request->getIPAddress()) . '/' . $OrderModel->insertId()));
exit;
} else {
$this->data['error'] = line('Please fill the fields correctly');
}
}
$this->data['title'] = sprintf('%s - %s', line('Buy Product'), getConfig('title'));
$this->data['pageDetails'] = $Page;
return $this->layout('buy-product');
} Döngü boş olarak dönüyor