| |
Forum PHP IndonesiaDapatkan pertolongan pertama pada kebingungan PHP dan sekitarnya |
|
|
|
|
|
| |
|
|
All times are GMT + 7 Hours
|
|
Help Error paging mssql
 |
Fri Jun 25, 2010 18:05 |
 |
Author |
Message |
abhee PHPnewbie

Joined: 14 Jun 2010 Posts: 15 Location: d'kost
|
| Post subject: Help Error paging mssql |
|
|
para master php saya minta tolong donk koreksi script saya!!maklum masih newbie bgt!!
jadi saya buat script pencarian berdasarkan multi kategori,jadi klo saya input data nama dan saya submit namanya ada di dbase maka dia akan keluar data2 pelanggan tersebut,seandainya data tersebut tidak ada maka dia akan keluar warning "Data yang di cari tidak ada".
nah masalah adalah pas misalkan data blm ada yang saya isi/input tapi dah saya submit masih error, seharusnya klo data blm ada yg di isi pas di submit keluar error "Ada Data yg blm di isi"
nah ini scriptnya:
| Code: | <?php <?php
include('Connections/conn.php');
$warna1 = "#C8E7FB"; // baris genap berwarna hijau tua
$warna2 = "#a8e5FC"; // baris ganjil berwarna hijau muda
$warna = $warna1;
// -------------------------------
$bagianWhere = "";
$bagianParam = "";
if (isset($_POST['noCat']) || isset($_GET['no_pelanggan']))
{
if (isset($_POST['noCat'])) $no_pelanggan = $_POST['no_pelanggan'];
if (isset($_GET['no_pelanggan'])) $no_pelanggan = $_GET['no_pelanggan'];
if (empty($bagianWhere) && empty($bagianParam))
{
$bagianWhere .= "no_pelanggan = '$no_pelanggan'";
$bagianParam .= "no_pelanggan=".$no_pelanggan;
}
}
if (isset($_POST['namaCat']) || isset($_GET['nama_pelanggan']))
{
if (isset($_POST['namaCat'])) $nama_pelanggan = $_POST['nama_pelanggan'];
if (isset($_GET['nama_pelanggan'])) $nama_pelanggan = $_GET['nama_pelanggan'];
if (empty($bagianWhere) && empty($bagianParam))
{
$bagianWhere .= "nama_pelanggan LIKE '%$nama_pelanggan%'";
$bagianParam .= "nama_pelanggan=".$nama_pelanggan;
}
else
{
$bagianWhere .= " AND nama_pelanggan LIKE '%$nama_pelanggan%'";
$bagianParam .= "&nama_pelanggan=".$nama_pelanggan;
}
}
if (isset($_POST['alamatCat']) || isset($_GET['alamat_pelanggan']))
{
if (isset($_POST['alamatCat'])) $alamat_pelanggan = $_POST['alamat_pelanggan'];
if (isset($_GET['alamat_pelanggan'])) $alamat_pelanggan = $_GET['alamat_pelanggan'];
if (empty($bagianWhere) && empty($bagianParam))
{
$bagianWhere .= "alamat_pelanggan LIKE '%$alamat_pelanggan%'";
$bagianParam .= "alamat_pelanggan=".$alamat_pelanggan;
}
else
{
$bagianWhere .= " AND alamat LIKE '%$alamat%'";
$bagianParam .= "&alamat=".$alamat;
}
}
// -------------------------------
// jumlah data yang akan ditampilkan per halaman
$dataPerPage = 20;
// apabila $_GET['page'] sudah didefinisikan, gunakan nomor halaman tersebut,
// sedangkan apabila belum, nomor halamannya 1.
if(isset($_GET['page']))
{
$noPage = $_GET['page'];
}
else $noPage = 1;
// perhitungan offset
$offset = ($noPage - 1) * $dataPerPage;
// query SQL untuk menampilkan data perhalaman sesuai offset
//ini query yg masih errornya
$query = "SELECT top 20 * FROM pelanggan WHERE $bagianWhere and no_pelanggan not in (select top $offset no_pelanggan from pelanggan where $bagianWhere)";[/b]
$hasil = mssql_query($query);
$data=mssql_num_rows($hasil);
if($hasil==NULL)
{
echo " Ada data yg belum di isi";
}
else
{
if(empty($data))
{
echo " Data yang di cari tidak ada";
}
else
{
// menampilkan data
$no=$offset+1;
echo "<table><tr><th width='28'>No</th><th width='152'>No Sambung</th><th width='195'>Nama</th><th width='188'>Alamat</th><th>Detail</th></tr>";
while ($data = mssql_fetch_array($hasil))
{
$alamat = substr($data['alamat_pelanggan'],0,20);
echo "<tr bgcolor=$warna><td>$no</td><td>".$data['no_pelanggan']."</td><td>".$data['nama_pelanggan']."</td><td>".$alamat."</td><td><a href='detail.php?no_pelanggan=$data[no_pelanggan]'>Detail</a></td></tr>";
$no++;
}
echo "</table>";
echo "<br>";
// mencari jumlah semua data dalam tabel
$query = "SELECT COUNT(*) AS jumData FROM pelanggan WHERE ".$bagianWhere;
$hasil2 = mssql_query($query);
$data = mssql_fetch_array($hasil2);
$jumData = $data['jumData'];
// menentukan jumlah halaman yang muncul berdasarkan jumlah semua data
$jumPage = ceil($jumData/$dataPerPage);
// menampilkan link previous
if ($noPage > 1) echo "<a href='".$_SERVER['PHP_SELF']."?page=".($noPage-1)."&".$bagianParam."'><< Prev</a>";
// memunculkan nomor halaman dan linknya
for($page = 1; $page <= $jumPage; $page++)
{
if ((($page >= $noPage - 3) && ($page <= $noPage + 3)) || ($page == 1) || ($page == $jumPage))
{
if (($showPage == 1) && ($page != 2)) echo "...";
if (($showPage != ($jumPage - 1)) && ($page == $jumPage)) echo "...";
if ($page == $noPage) echo " <b>".$page."</b> ";
else echo " <a href='".$_SERVER['PHP_SELF']."?page=".$page."&".$bagianParam."'>".$page."</a> ";
$showPage = $page;
}
}
// menampilkan link next
if ($noPage < $jumPage) echo "<a href='".$_SERVER['PHP_SELF']."?page=".($noPage+1)."&".$bagianParam."'>Next >></a>";
echo "<p>Total Pelanggan : <b>$jumData</b> Pelanggan</p>";
}
}
?> ?> |
buat data errornya
| Code: | <?php Warning: mssql_query() [function.mssql-query]: message: Incorrect syntax near the keyword 'and'. (severity 15) in C:xampphtdocstokoproses.php on line 259
Warning: mssql_query() [function.mssql-query]: message: Line 1: Incorrect syntax near ')'. (severity 15) in C:xampphtdocstokoproses.php on line 259
Warning: mssql_query() [function.mssql-query]: Query failed in C:xampphtdocstokoproses.php on line 259
Warning: mssql_num_rows(): supplied argument is not a valid MS SQL-result resource in C:xampphtdocstokoproses.php on line 260
Ada data yg belum di isi ?> |
Mohon bantuanya ya para master  |
|
| |
|
|
 |
Tue Jul 06, 2010 20:21 |
 |
Author |
Message |
andriant Jagoan PHP


Joined: 31 Mar 2010 Posts: 911 Location: Jakarta
|
| Post subject: |
|
|
coba dibagian:
$query = "SELECT COUNT(*) AS jumData FROM pelanggan WHERE ".$bagianWhere;
$hasil2 = mssql_query($query);
ditambahin echo dulu biar gampang debuggingnya:
$query = "SELECT COUNT(*) AS jumData FROM pelanggan WHERE ".$bagianWhere;
echo($query);
$hasil2 = mssql_query($query);
jadi bisa keliatan fieldmana yang ga ketangkep ama if isset.
oh maaf, mau nanya. kenapa ga pake $_REQUEST aja gan dari pada harus jelimet pake $_POST terus diget lagi pake $_GET.
kalo $_REQUEST khan ketangkep sesuai dengan urutan $_GET,$_POST. |
|
| |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|
|
|
|
|
Powered by phpBB © 2001, 2002 phpBB Group
|
|
|
|
|
|
|
|
| |
|
|
|
|
|
|