If Else PHP & Mysql

Dear Admin,

Mau bertanya. Jika saya memiliki data mysql. Tabel Rate. Di dalam nya ada field Periode dan Price. Jika di Price terdapat price 10 - 100. Lalu saya ingin mengambil nilai seperti di bawah ini : 1. Jika Price 0-30 maka di kali (*) 2. 2. Jika Price 30-60 maka di kali (*) 3. 3. Jika Price 60-100 maka di kali (*) 4.

Price tersebut di ambil di database. Bagaimana ya memunculkan nilai tersebut di php dengan mengambil Price dari database mysql. Mohon bantuan nya untuk codding nya ya Admin.

Terima kasih

avatar FitriR
@FitriR

109 Kontribusi 2 Poin

Diperbarui 7 tahun yang lalu

7 Jawaban:

Kondisi price dan perkaliannya sudah pasti, atau dinamik? Misalkan setiap price kelipatan 30 dari kelipatan sebelumnya, perkaliannya akan ditambah 1.

avatar beckbella
@beckbella

68 Kontribusi 38 Poin

Dipost 7 tahun yang lalu

Ini contoh sesuai kondisi yang agan jelasin :

 foreach($data as $key => $row){
  //range 0 - 30 -> * 2
  if($row['price'] >= 0 && $row['price'] <= 30)
    echo $row['price'] * 2;

  //range 30 - 60 -> * 3
  elseif($row['price'] >= 30 && $row['price'] <= 60)
    echo $row['price'] * 3;

  //range 60 - 100 * 4
  elseif($row['price'] >= 60 && $row['price'] <= 100)
    echo $row['price'] * 4;
}
avatar beckbella
@beckbella

68 Kontribusi 38 Poin

Dipost 7 tahun yang lalu

@FeryR kyknya lbh mudah pk case dhe, dicoba dl aja

select (
CASE
WHEN price >= 0 && price < 31 THEN price*2
WHEN price > 30 && price < 61 THEN price*3
WHEN price > 59 && price < 101 THEN price*4
ELSE 1
END) as price from table;

avatar blackarch
@blackarch

101 Kontribusi 35 Poin

Dipost 7 tahun yang lalu

@beckbella

Terima kasih atas jawaban nya. Apakah foreach berjalan jika terletak di dalam mysql_fetch_array ? Atau di letakkan di luar mysql_fetch_array? Mohon masukan nya ya

avatar FitriR
@FitriR

109 Kontribusi 2 Poin

Dipost 7 tahun yang lalu

Jawaban Terpilih

@blackarch

Akan saya coba ya om. Terima kasih atas masukkan nya om. Mau tanya lg om. jika seperti di bawah ini. $rat = $_POST('txtRange');

Bisa gak price×2 tadi di ganti pricex$rat ?? Mohon masukkan nya om.

avatar FitriR
@FitriR

109 Kontribusi 2 Poin

Dipost 7 tahun yang lalu

@FeryR hemmm.... bisa aja sih di declare menjadi variable di query sqlnya

// for number or int
$number = $_POST('txtRange'); // make sure this is number
$rat = intval($number); // set to int value
$sql = "select (
CASE
WHEN price >= 0 && price < 31 THEN price*$rat
WHEN price > 30 && price < 61 THEN price*3
WHEN price > 59 && price < 101 THEN price*4
ELSE 1
END) as price from table";

//for string or text
$text     = 'FeryR';
$name     = mysql_real_escape_string($text); // escape the string

$sql    = "SELECT * FROM TABLE WHERE name = '$name'";

sy blm test sih tp di coba dl aja. oh iya berhubung sudah di accept jika mau bertanya lagi lbh baik di buat baru saja(karena sudah ada peraturannya).

avatar blackarch
@blackarch

101 Kontribusi 35 Poin

Dipost 7 tahun yang lalu

Om @blackarch sudah saya upload di bawah ini dan mohon masukkan nya ya om.

https://www.sekolahkoding.com/forum/if-else-php-mysql-2

Terima kasih

avatar FitriR
@FitriR

109 Kontribusi 2 Poin

Dipost 7 tahun yang lalu

Login untuk ikut Jawaban