Tolong pilih kategori sesuai, jenis posting (diskusi atau bukan) dan sertakan tag/topik yang sesuai seperti komputer, java, php, mysql, dll. Promosi atau posting tidak pada tempatnya akan kami hapus!
- Bagi Anda yang ingin mendaftar, baca link berikut:
http://diskusiweb.com/discussion/50491/how-to-registrasi-diskusiweb-com-baca-ini-terlebih-dahulu
- Cara menyisipkan kode program supaya tampil rapi dan terformat dengan baik di diskusiweb.com: http://www.diskusiweb.com/discussion/50415/cara-menyisipkan-kode-program-di-diskusiweb-com
- Cara posting gambar/image di post Anda: http://www.diskusiweb.com/discussion/47345/cara-menyisipkan-menyertakan-image-pada-posting/p1

Bagaimana cara menghilangkan $_POST setelah halaman di refresh ?

Saya punya file, voucher_generator.php,
file ini berisi form action="" method="post"
pola perintah PHP pada file :
--------------------------------------------------------------------------
if isset($_POST['submit]) {
    # code
}
--------------------------------------------------------------------------
apabila halaman dibuka dan menekan submit, halaman tetap berada di voucher_genarator.php karena action="" dan #code dalam kalimat if secara otomatis dieksekusi oleh server, namun apabila halaman di refresh #code dalam kalimat if tereksekusi lagi, jadi #code tereksekusi  2 kali.
kebetulan #code berisi perintah untuk memasukkan data ke database mysql, jadi hal ini menjadi fatal karena data yang dimasukkan juga sebanyak 2 kali
Pertanyaannya :
Bagaimana cara membuat #code dalam kalimat if tidak tereksekusi apabila halaman di refresh ?
mohon pencerahannya^^
Arigato^^
ini isi filenya secara utuh :
<?php
$root = $_SERVER['DOCUMENT_ROOT'];
include "$root/resource/header_caaa85819s0kmmwoxp10spa024jjs81jsuvnn2iszi2m_492_xoq_3910193949105902758919.php";
include "$root/resource/mysql_connect.php";
session_start();
$username = $_SESSION['username'];
if ($username!="ammarfaizi2") {
    header("location:/");
}
?>
<!DOCTYPE html>
<html>
<head>
    <title>Cash Generator</title>
</head>
<body>
<center>
    <table style="margin-top: 100px;">
        <form action="" method="post" enctype="form/multipart-data">
            <tr><td>Value<td></td><td>:</td><td><select name="value">
                <option>1000</option>
                <option>2000</option>
                <option>3000</option>
                <option>4000</option>
                <option>5000</option>
                <option>6000</option>
                <option>7000</option>
                <option>8000</option>
                <option>9000</option>
                <option>10000</option>
                <option>11000</option>
                <option>12000</option>
                <option>13000</option>
                <option>14000</option>
                <option>15000</option>
            </select></td><td><input type="submit" name="submit" value="Generate !"></td></tr>
        </form>
    </table>
</center>
</body>
</html>
<?php
$textaaa = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ123457890';
$panjaaa = 5;
$txtlaaa = strlen($textaaa)-1;
$resultaaa = '';
for($iaaa=1; $iaaa<=$panjaaa; $iaaa++){
 $resultaaa .= $textaaa[rand(0, $txtlaaa)];
}
$textbbb = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ123457890';
$panjbbb = 5;
$txtlbbb = strlen($textbbb)-1;
$resultbbb = '';
for($ibbb=1; $ibbb<=$panjbbb; $ibbb++){
 $resultbbb .= $textbbb[rand(0, $txtlbbb)];
}
$textccc = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ123457890';
$panjccc = 5;
$txtlccc = strlen($textccc)-1;
$resultccc = '';
for($iccc=1; $iccc<=$panjccc; $iccc++){
 $resultccc .= $textccc[rand(0, $txtlccc)];
}
$textddd = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ123457890';
$panjddd = 5;
$txtlddd = strlen($textddd)-1;
$resultddd = '';
for($iddd=1; $iddd<=$panjddd; $iddd++){
 $resultddd .= $textddd[rand(0, $txtlddd)];
}
$texteee = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ123457890';
$panjeee = 5;
$txtleee = strlen($texteee)-1;
$resulteee = '';
for($ieee=1; $ieee<=$panjeee; $ieee++){
 $resulteee .= $texteee[rand(0, $txtleee)];
}

$fullvc = $resultaaa.$resultbbb.$resultccc.$resultddd.$resulteee;
$value = $_POST['value'];
if (isset($_POST['submit'])) {
    mysql_query("INSERT INTO `voucher` (`VC`, `Value`, `Status`) VALUES ('$fullvc', '$value', '1');");
    echo "<center><table style='margin-top: 5px'><tr><td>Value</td><td>:</td><td>$value</td><tr><td>New Vocuher<td>:</td><td>$resultaaa-$resultbbb-$resultccc-$resultddd-$resulteee</td></tr></table></center>";
}
?>


Tagged:

Comments

  • header location ke script tertentu, bisa ke dirinya sendiri lagi

    http://php.net/manual/en/function.header.php
  • edited May 2016
    ada masalah 1 lagi, kalau pake header("location:/voucher_generator.php"); memang dapat menghilangkan $_POST['submit'], tetapi $_POST['value'] masih saya butuhkan untuk menampilkan data pada halaman itu juga, bagaimana solusinya ?





    $value = $_POST['value'];
    if (isset($_POST['submit'])) {
        mysql_query("INSERT INTO `voucher` (`VC`, `Value`, `Status`) VALUES ('$fullvc', '$value', '1');");
       
    echo "<center><table style='margin-top:
    5px'><tr><td>Value</td><td>:</td><td>$value</td><tr><td>New

    Vocuher<td>:</td><td>$resultaaa-$resultbbb-$resultccc-$resultddd-$resulteee</td></tr></table></center>";
    }
  • ya dipindah to mas'e ...

    elo kan bisa pake session
  • edited May 2016
    oh iya gk kepikiran gitu :3
    tanya lagi, gimana caranya buat $_SESSION['value'] tidak dianggap isset lagi ?
  • edited May 2016
    ada ini kan :
    if (isset($_POST['submit'])) {

    $_SESSION[...] = ... itu di dalam if
    $var = $_POST[...] ... juga ada di dalam if

    if(isset($_SESSION[...])) { ... itu di luar if, sebelum if
    di dalamnya ada $var = $_SESSION[...]

    beres
  • problem solved, :D
    makasih :D
Sign In or Register to comment.