الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

اريد اخفاء ناتج الاستعلام المتكرر

بدأه man in dark في 17 يوليو 2008 · 5 رد · 610 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

اخواني انا لدي قاعدة بيانات بهذا الشكل


-- version 2.9.1.1
-- http://www.phpmyadmin.net
--
-- المزود: localhost
-- أنشئ في: 17 يوليو 2008 الساعة 22:05
-- إصدارة المزود: 5.0.22
-- PHP إصدارة: 4.4.4
--
-- قاعدة البيانات: `x`
--

-- --------------------------------------------------------

--
-- بنية الجدول `newaj`
--

CREATE TABLE `newaj` (
`id` int(4) NOT NULL auto_increment,
`name` varchar(60) NOT NULL,
`user` varchar(60) NOT NULL,
`number` varchar(60) NOT NULL,
`moka` varchar(60) NOT NULL,
`reson` varchar(2000) NOT NULL,
`numcoust` varchar(60) NOT NULL,
`mokadate` date NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1256 AUTO_INCREMENT=77;

--
-- phpMyAdmin SQL Dump

كود عرض البيانات


<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1256">
<title>Add Employee</title>
<style type="text/css"/>
body {
font-family : Times New Roman;
}
</style>
</head>
<body>

<?php
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="x"; // Database name
$tbl_name="newaj"; // Table name

// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");


// how many rows to show per page
$userschoice1 = $_GET['$userschoice'];

if (isset($userschoice1))
{$rowsPerPage = $userschoice1;}
else
{$rowsPerPage = 10;}
echo "$rowsPerpage";


// by default we show first page
$pageNum = 1;

// if $_GET['page'] defined, use it as page number
if(isset($_GET['page']))
{
$pageNum = $_GET['page'];
}

// counting the offset
$offset = ($pageNum - 1) * $rowsPerPage;


$query ="SELECT * FROM $tbl_name order by id DESC LIMIT $offset, $rowsPerPage";
$result =mysql_query($query);
?>

<div align="center">
<div align="center">
<table width="568" border="0" cellspacing="1" cellpadding="0">
<tr>
<td>
<div align="center">
<table width="541" border="0" cellspacing="1" cellpadding="0">
<tr>
<td>
<div align="center">
<table width="393" border="0" cellspacing="1" cellpadding="0">
<tr>
<td>
<div align="center">
<div align="right">
<table border="1" cellspacing="0" cellpadding="5" style="border-style: solid; border-width: 0; " width="555" bordercolorlight="#252525" bordercolordark="#252525">
<tr>
<td align="center" width="483" bordercolorlight="#FFFFFF" bgcolor="#252525" colspan="6">
<font color="#FFFFFF" size="4"><b>اليوم    يوم أمس   
قبل 3 أيام      قبل أسبوع     
قبل شهر</b></font></td>
</tr>
<tr>
<td align="center" width="33" bordercolorlight="#FFFFFF" bgcolor="#252525">
<b><font color="#FFFFFF">حذف</font></b></td>
<td align="center" width="34" bordercolorlight="#FFFFFF" bgcolor="#252525">
<b><font color="#FFFFFF">تعديل</font></b></td>
<td align="center" width="56" bordercolorlight="#FFFFFF" bgcolor="#252525">
<span lang="ar-sa"><font color="#FFFFFF"><b>استعراض</b></font></span></td>
<td align="center" width="56" bordercolorlight="#FFFFFF" bgcolor="#252525">
<span lang="ar-sa"><font color="#FFFFFF"><b>امر</b></font></span></td>
<td align="center" width="59" bordercolorlight="#FFFFFF" bgcolor="#252525">
<span lang="ar-sa"><font color="#FFFFFF"><b>اليوزر</b></font></span></td>
<td align="center" width="245" bordercolorlight="#FFFFFF" bgcolor="#252525">
<strong><span lang="ar-sa"><font color="#FFFFFF">أسم</font></span></strong></td>
</tr>
<?php
while($rows=mysql_fetch_array($result)){

?>
<tr>

<td width="33" align="center" bgcolor="#FFFFFF" bordercolorlight="#FFFFFF" bordercolordark="#FFFFFF" bordercolor="#2868A7"><b>
<a href="delet.php?id=<? echo $rows['id']; ?>" style="text-decoration: none">
<font color="#000000">حذف</font></span></a><font color="#000000"> </font></b></td>
<td width="34" align="center" bgcolor="#FFFFFF" bordercolorlight="#FFFFFF" bordercolordark="#FFFFFF" bordercolor="#2868A7"><b>
<a href="update.php?id=<? echo $rows['id']; ?>" style="text-decoration: none">
<font color="#000000">تعديل</font></span></a><font color="#000000"> </font></b></td>
<td width="56" align="center" bgcolor="#FFFFFF" bordercolorlight="#FFFFFF" bordercolordark="#FFFFFF" bordercolor="#2868A7"><b>
<a href="View_ac.php?id=<? echo $rows['id']; ?>" style="text-decoration: none">
<font color="#000000">عرض</font></span></a><font color="#000000"> </font></b></td>
<td width="56" align="center" bgcolor="#FFFFFF" bordercolorlight="#FFFFFF" bordercolordark="#FFFFFF" bordercolor="#2868A7"><b><? echo $rows['moka']; ?></b></td>
<td width="59" align="center" bgcolor="#FFFFFF" bordercolorlight="#FFFFFF" bordercolordark="#FFFFFF" bordercolor="#2868A7"><b><? echo $rows['user']; ?></b></td>
<td width="245" align="center" bgcolor="#FFFFFF" bordercolorlight="#FFFFFF" bordercolordark="#FFFFFF" bordercolor="#2868A7"><b><? echo $rows['name']; ?></b></td>

</tr>
<?php
}

echo '<table>';





$maxPage = ceil($numrows/$rowsPerPage);


// how many rows we have in database
$query = "SELECT COUNT(id) AS numrows FROM newaj";
$result = mysql_query($query) or die("<b>Query Failed:</b> " . $query);
$row = mysql_fetch_array($result, MYSQL_ASSOC);
$numrows = $row['numrows'];

// how many pages we have when using paging?
$maxPage = ceil($numrows/$rowsPerPage);

// print the link to access each page
$self = $_SERVER['PHP_SELF'];
$nav = '';



//showOffset is the number of pages we show after the current page
$showOffset = 3;

//This says if the current pagenum + the offset is greater than the last page the offset_val = the last page
//otherwise offset_val equals the current pagenum plus the showoffset
//This then palces one of 2 values into a variable called $offset_val

if($pageNum + $showOffset > $maxPage)
{$offset_val = $maxPage;}
else
{$offset_val = ($pageNum + $showOffset);}

//for(initialize counter; condition until counter is reached; increment counter)
for($page = $pageNum; $page <= $offset_val; $page++ )



{
if ($page == $pageNum){
$nav .= " $page "; // no need to create a link to current page
}
else{
$nav .= " <a href=\"$self?page=$page\">$page</a> ";
}
}
//end of page links code


// creating previous and next link
// plus the link to go straight to
// the first and last page
?>
</div>
<table border="0" width="100%" id="table1" height="17">
<tr>
<td>
<b><font size="3">
<?php
if ($pageNum > 1)
{
$page = $pageNum - 1;
$prev = " <a href=\"$self?page=$page\">[السابق]</a> ";

$first = " <a href=\"$self?page=1\">[الصفحة الأولى]</a> ";
}
else
{
$prev = ' '; // we're on page one, don't print previous link
$first = ' '; // nor the first page link
}

if ($pageNum < $maxPage)
{
$page = $pageNum + 1;
$next = " <a href=\"$self?page=$page\">[التالي]</a> ";

$last = "<a href=\"$self?page=$maxPage\">[ الصفحة الأخيرة ]</a>";
}
else
{
$next = ' '; // we're on the last page, don't print next link
$last = ' '; // nor the last page link
}
// print the navigation link
echo $first . $prev . $nav . $next . $last;
?>

</font></b>
</td>
</tr>
</table>

</p>
</body>
</html>
<html dir="ltr">

الكود يعرض البيانات بشكل جيد و لكن اريد عندما يكون الحقل user مشابة لناتج آخر يظهر واحد و يخفي الاخر

مثال عند يكون لدي الناتج من الاستعلام 10 و 5 منها متشابة في حقل user

يظهر لي الخمس فقط

كيف احدد هذا الاستعلام

تم تعديل هذه المشاركة بواسطة man in dark في 18 يوليو 2008 في 08:59

#2

اخواني امر الاستعلام

SELECT DISTINCT

هل هو يمنع النتائج المتكررة

#3

قم بعمل مصفوفه جديده تقوم بتخزين القيم التي لا تريد ان تتكر, بعد ذلك عندما تريد طباعة نتيجه ما قم بفحص ما اذا كانت هذه نتيجه موجوده من قبل ام لا انظر مثال تالي

[color= #b1b100;]while[color= #009900;]([color= #000033;]$row[color= #339933;]=[color= #990000;]mysql_fetch_array[color= #009900;]([color= #000033;]$q[color= #009900;])[color= #009900;])

[color= #009900;]{

 

  [color= #b1b100;]if[color= #009900;]([color= #339933;]![color= #990000;]array_search[color= #009900;]( [color= #000033;]$row[color= #009900;][name[color= #009900;]][color= #339933;], [color= #000033;]$grab[color= #009900;])[color= #009900;])

    [color= #990000;]echo [color= #0000ff;]"new items "[color= #339933;].[color= #000033;]$row[color= #009900;][name[color= #009900;]][color= #339933;]; 

 

   [color= #000033;]$grab[color= #009900;][[color= #009900;]] [color= #339933;]= [color= #000033;]$row[color= #009900;][name[color= #009900;]][color= #339933;];

[color= #009900;]}

تم تعديل هذه المشاركة بواسطة ahmad123 في 19 يوليو 2008 في 16:34

#4

لم يعمل معي اخي ahmad123

ولكن عند وضع الاستعلام هكذا

SELECT DISTINCT user FROM $table_name

فهو لا يظهر الاستعلام المتكرر في خانة user و يعمل الكود 100%

و لكن لا يظهر ناتج الاستعلام الباقي

<?php
 while($rows=mysql_fetch_array($result)){

 ?>
 <tr>

 <td width="33" align="center" bgcolor="#FFFFFF" bordercolorlight="#FFFFFF" bordercolordark="#FFFFFF" bordercolor="#2868A7"><b>
 <a href="delet.php?id=<? echo $rows['id']; ?>" style="text-decoration: none">
 <font color="#000000">حذف</font></span></a><font color="#000000"> </font></b></td>
 <td width="34" align="center" bgcolor="#FFFFFF" bordercolorlight="#FFFFFF" bordercolordark="#FFFFFF" bordercolor="#2868A7"><b>
 <a href="update.php?id=<? echo $rows['id']; ?>" style="text-decoration: none">
 <font color="#000000">تعديل</font></span></a><font color="#000000"> </font></b></td>
 <td width="56" align="center" bgcolor="#FFFFFF" bordercolorlight="#FFFFFF" bordercolordark="#FFFFFF" bordercolor="#2868A7"><b>
 <a href="View_ac.php?id=<? echo $rows['id']; ?>" style="text-decoration: none">
 <font color="#000000">عرض</font></span></a><font color="#000000"> </font></b></td>
 <td width="56" align="center" bgcolor="#FFFFFF" bordercolorlight="#FFFFFF" bordercolordark="#FFFFFF" bordercolor="#2868A7"><b><? echo $rows['moka']; ?></b></td>
 <td width="59" align="center" bgcolor="#FFFFFF" bordercolorlight="#FFFFFF" bordercolordark="#FFFFFF" bordercolor="#2868A7"><b><? echo $rows['user']; ?></b></td>
 <td width="245" align="center" bgcolor="#FFFFFF" bordercolorlight="#FFFFFF" bordercolordark="#FFFFFF" bordercolor="#2868A7"><b><? echo $rows['name']; ?></b></td>

 </tr>

تم تعديل هذه المشاركة بواسطة man in dark في 18 يوليو 2008 في 16:31

#5

كود يعمل ؟ ما مشكله فيه ؟(ملاحظه كنت ناسي اغلق القوس )

#6

هذا هو الكود يعمل 100%

$query ="SELECT DISTINCT id,user,moka,name FROM $tbl_name

مواضيع مشابهة