Menampilkan angka secara berurut.


Status
Not open for further replies.

xphones

Expert 1.0
<? $acakan=rand(0,10); ?>

Kode di atas adalah untuk menampilkan angka 0-10 secara acak.

Pertanyaannya. Bagaimana jika kita ingin menampilkannya secara urut mulai dari 0,1,2,3,4,5-10 ?

Kalau soal beginian yakin deh kalau mas vkios paling jago :) nongol dong mas :D
 

perdhanahost

Hosting Guru
Walaupun ngga' sejago mas vKios, saya coba bantu jawab yah mas :)

Code:
<?php

$jumlahData = 7;
$angkaTerkecil = 0;
$angkaTerbesar = 10;
$tempArray = array();
$strTidakUrut = "";
$strSudahUrut = "";

for( $i=0; $i < $jumlahData; $i++ )
{
	$tempArray[$i] = rand($angkaTerkecil, $angkaTerbesar);
}

for($i=0; $i < count($tempArray); $i++)
{
	$strTidakUrut .= $tempArray[$i] .", ";
}

sort($tempArray);

for($i=0; $i < count($tempArray); $i++)
{
	$strSudahUrut .= $tempArray[$i] .", ";
}

echo "Sebelum diurut : ". substr($strTidakUrut, 0, -2) ."<br/>\n";
echo "Setelah diurut : ". substr($strSudahUrut, 0, -2) ."<br/>\n";

?>
 

vkios01

Expert 1.0
yup, betul sekali yang disampaikan om perdhana..

PHP:
sort($Array); //sort array dari kecil ke besar
sort($Array); //sort array dari besar ke kecil

contoh hasil
PHP:
<?php
$urut='';
$rurut='';
$tempArray = array(3,2,5,10,6,1,9,8,7,4);

sort($tempArray);
foreach ($tempArray as $key => $val) {
    $urut.= $val.' ';
}

rsort($tempArray);
foreach ($tempArray as $key => $val) {
    $rurut.= $val.' ';
}


echo $urut.'<br />'.$rurut;
?>

cukup simple saat ini karena sudah di build function dari php sendiri. tidak perlu lagi membandingkan pervalue array (jadi inget pas kuliah dulu, ada banyak cara mengurutkan data array :D).
nostalgia Sorting algorithm - Wikipedia, the free encyclopedia :D

FYI:
- function sort() tidak bisa digunakan untuk array multi dimensi akan di urutkan index ke 1 nya saja.
- ow iya, pengurutan ini berdasarkan kode ASCII. misal A dengan a beda kode ASCIInya.
 
Last edited:

xphones

Expert 1.0
Hehehe akhirnya datang juga :D
Trims mas dp dan mas vkios

Tapi maksud saya seperti ini.
Output dari script yang saya maksud nantinya akan ditaruh di posisi header(tetap di bagian body). Nah ketika pertama kali buka index utama (home)
akan tampil angka 1, setelah klik page/menu berikutnya akan tampil angka 2 page berikutnya angka 3 dan seterusnya

Barusan ada ide untuk mencoba pake script hit counter saja karena cara kerjanya hampir sama dengan yang saya maksud. Tapi rasanya kurang sempurna karena yang kita
inginkan cuma hitungan 0-100 saja untuk tiap sesi. sesi visit berikutnya harus kembali mulai dari 0
 

PusatHosting

Hosting Guru
Bikin saja 1 table yang di isi field IP ADDRESS + hit

PHP:
$ip=$_SERVER['REMOTE_ADDR'];
$limit_hit = 100;
$rs = mysql_query("select ipaddr,hit from tb_ip WHERE ipaddr='$ip'");
if (!$rs) {
    die('Could not query:' . mysql_error());
}else{
     if(mysql_result($rs,0,1)>=$limit_hit){
           $new_hit = 0;      
     }else{
           $new_hit = mysql_result($rs,0,1) + 1;
     }
     mysql_query("update tb_ip set hit='$new_hit' where ipaddr='$ip'");
}

semoga ga salah scriptnya, selamat mencoba
 

vkios01

Expert 1.0
Hehehe akhirnya datang juga :D
Trims mas dp dan mas vkios

Tapi maksud saya seperti ini.
Output dari script yang saya maksud nantinya akan ditaruh di posisi header(tetap di bagian body). Nah ketika pertama kali buka index utama (home)
akan tampil angka 1, setelah klik page/menu berikutnya akan tampil angka 2 page berikutnya angka 3 dan seterusnya

Barusan ada ide untuk mencoba pake script hit counter saja karena cara kerjanya hampir sama dengan yang saya maksud. Tapi rasanya kurang sempurna karena yang kita
inginkan cuma hitungan 0-100 saja untuk tiap sesi. sesi visit berikutnya harus kembali mulai dari 0

btw kok pakai sort om kalau hit saja? :D
hemmm bisa diakali pakai cookies sih kalau untuk hit record seperti om maksudkan.. cookies bisa diset masa hidupnya (jika habis bisa diset ke 0 lagi).. bisa dari javascript/jquery biar clientside runningnya. tapi kalau mau pakai sesi ya tidak apa2 juga.. tinggal diset saja masa aktif per sesinya supaya ke 0 lagi hitnya..
 

perdhanahost

Hosting Guru
mastah yang diatas sekalian dong tolongin saya. saya pengen bikin nama tapi setiap refresh itu ganti ganti misal: "DWH Keren" nanti setelah di refresh ganti jadi "Kerennya DWH" tolongin dalam html dan phpnya yah mastah :help:

nah, dasarnya tulisan "DWH Keren" atau "Kerennya DWH" itu dari mana mas? Di isi manual? Ada sumbernya (mungkin dari web lain)? Atau random?

Tinggal diulik sedikit codenya mas vKios itu. Tinggal ganti $tempArray yang sebelumnya diisi integer, sekarang diisi dengan string. Tidak perlu di sort, tapi sekarang justru diacak dengan shuffle().
 

dikijawil

Apprentice 1.0
Asli puyeng baca scirptnya...

gak mudeng php....

tapi ikutan aja dah... lumayan.. ilmu baru...

Salam
ABBH
 
Status
Not open for further replies.

Top