Cara membuat Invoice

Saya mau bertanya

saya kan memiliki form order http://gmnetgrup.id/jasagb/order_char.php nah pas klik order saya kirim ke page http://gmnetgrup.id/jasagb/suksesexp.php

Pertanyaannya cara memangil atau menampilkan Kode Order yang tertera di form dan di tampilkan di halaman Invoice, itu caranya bagai mana ?

avatar gilangrsm
@gilangrsm

12 Kontribusi 1 Poin

Diperbarui 7 tahun yang lalu

12 Jawaban:

Jawaban Terpilih

tinggal sertakan kode order itu di form aja gan.

order_char.php

<form method="post" action="suksesexp.php">
  <input name="kode_order" value="ORDER_123" readonly>
  <button type="submit">Order</button>
</form>

suksesexp.php

<?php
if(isset($_POST))
{
  $kode_order = $_POST["kode_order"];
}
?>
<span>Nomor Invoice: <?php echo $kode_order; ?></span> // Nomor Invoice: ORDER_123

avatar rachmatsasongko
@rachmatsasongko

410 Kontribusi 426 Poin

Dipost 7 tahun yang lalu

Eror Pak,

sebelum ke http://gmnetgrup.id/jasagb/suksesexp.php saya membuat page http://gmnetgrup.id/jasagb/proses.php untuk memproses data dari form ke data base,

Jadi alurnya begini mengisi form di http://gmnetgrup.id/jasagb/order_char.php terus memproses http://gmnetgrup.id/jasagb/proses.php untuk mengirim data ke database terus ke http://gmnetgrup.id/jasagb/suksesexp.php untuk meberikan intruksi ke buyer ( invocie order )

avatar gilangrsm
@gilangrsm

12 Kontribusi 1 Poin

Dipost 7 tahun yang lalu

nah dari 'proses.php' ke 'suksesexp.php' itu redirectnya gimana? kalo buka melalui post ya pasti eror kalo pake kode diatas. paling gampang setelah penyimpanan di database sukses, disimpan di $_SESSION kode ordernya.

$_SESSION['kode_order'] = 'ORDER_123';

jadi pas redirect ke 'suksesexp.php' tinggal panggil

$kode_order = $_SESSION['kode_order'];

avatar rachmatsasongko
@rachmatsasongko

410 Kontribusi 426 Poin

Dipost 7 tahun yang lalu

Detail kode proses.php

 <?php
include('koneksi.php');
if(isset($_POST['orderclan'])){ //nama form
	$id	= $_POST['id'];
	$nama	= $_POST['nama'];
	$nohp	= $_POST['nohp'];
	$linkfb	= $_POST['linkfb'];
	$idpb	= $_POST['idpb'];
	$nick	= $_POST['nick'];
	$itujuan = $_POST['itujuan'];
	$ijumlah = $_POST['ijumlah'];
	$itujuan2	= $_POST['itujuan2'];
	$ijumlah2	= $_POST['ijumlah2'];
	$ohasil	= $_POST['ohasil'];
	$ototall	= $_POST['ototall'];
	$opulsa	= $_POST['opulsa'];
	$otoken	= $_POST['otoken'];
	$oindo	= $_POST['oindo'];

	$sql	= 'insert into pesanclan (id,nama,nohp,linkfb,idpb,nick,itujuan,ijumlah,itujuan2,ijumlah2,ohasil,ototall,opulsa,otoken,oindo) values	("'.$id.'","'.$nama.'","'.$nohp.'","'.$linkfb.'","'.$idpb.'","'.$nick.'","'.$itujuan.'","'.$ijumlah.'","'.$itujuan2.'","'.$ijumlah2.'","'.$ohasil.'","'.$ototall.'","'.$opulsa.'","'.$otoken.'","'.$oindo.'")';
	$query	= mysqli_query($db_link,$sql);

	if($query){
		header('location: suksesexp.php'); //di proses setelah terkirim ke data base
	}
	else{
		echo 'Gagal';
	}
}

?>

kalo begini kodenya simpan sebelah mana $_SESSION['id'] = 'ini di isi dengan apa ?';

avatar gilangrsm
@gilangrsm

12 Kontribusi 1 Poin

Dipost 7 tahun yang lalu

Menarik

avatar wandifrog
@wandifrog

274 Kontribusi 56 Poin

Dipost 7 tahun yang lalu

coba ini gan

if($query){
	$_SESSION['id'] = $id;
	header('location: suksesexp.php'); //di proses setelah terkirim ke data base
}

NOTE: agan harus pastikan di awal script php sudah muncul session_start()

avatar rachmatsasongko
@rachmatsasongko

410 Kontribusi 426 Poin

Dipost 7 tahun yang lalu

Masih eror pak

113                   <?php
114                    session_start();
115                    if(isset($_POST))
116                    {
117                      $id = $_SESSION['id'];
118                    }
119                  ?>
120                  <div class="panel-heading">
121                      <b>#<?php echo id; ?></b> <i class="fa fa-hand-o-left"></i>  Silahkan Kirim <b>Kode Order</b> di samping ke kontak di bawah ini
122                  </div>
avatar gilangrsm
@gilangrsm

12 Kontribusi 1 Poin

Dipost 7 tahun yang lalu

nah makanya saya kasih NOTE tadi diatas. error itu karena agan taruh session_start() di suksesexp.php yang mana merupakan redirect dari proses.php via header. session_start() hanya bisa dijalankan sebelum PHP mengirim konten ke browser. coba agan pindah session_start() di awal script php agan. script pertama misalnya init.php, atau file apapun yang agan include di awal script. sebagai referensi coba agan buka juga manual dari php tentang session_start();

avatar rachmatsasongko
@rachmatsasongko

410 Kontribusi 426 Poin

Dipost 7 tahun yang lalu

gagal paham saya pak bingung heheh...

avatar gilangrsm
@gilangrsm

12 Kontribusi 1 Poin

Dipost 7 tahun yang lalu

Berhasil pak,

solusi dari saya barusan

 	if($query){
		header('location: suksesexp.php'); //di proses setelah terkirim ke data base
	}
	else{
		echo 'Gagal';
	}

di hapus,

dan koding di suksesexp.php saya copy ke proses.php

:D

Makasih om dah bantu

avatar gilangrsm
@gilangrsm

12 Kontribusi 1 Poin

Dipost 7 tahun yang lalu

Masalah kedua pak,

bagai mana caranya agar buyer tidak dapat mengakes langsung ke page http://localhost/pro1/proses.php

jadi logikanya jika kode order kosong maka akan di alihkan ke index.php

avatar gilangrsm
@gilangrsm

12 Kontribusi 1 Poin

Dipost 7 tahun yang lalu

kalau liat code di proses php, mestinya agan bisa bikin begini

if(isset($_POST['orderclan'])){
  //koding yang sudah ada berjalan biasa
}
else
{
  header('location: index.php'); //kalau bukan post redirect ke index.php
  exit;
}

avatar rachmatsasongko
@rachmatsasongko

410 Kontribusi 426 Poin

Dipost 7 tahun yang lalu

Login untuk ikut Jawaban