PDA

View Full Version : مبتدی: مرتب سازی بر اساس طول رشته



saeid99999
شنبه 13 خرداد 1391, 17:10 عصر
سلام این یه بلوک نیوکه میخوام عناوین رو از دیتابیس بیرون بکشه و بر اساس طول رشته مقایسه کنه بلوک کار میکنه فقط قسمت مقایه دو رشته باهم درست نیست ممنون میشم کمک کنید!



$content .= "<table><tr><td>";

$result= $db->sql_query("SELECT sid, title, time, comments, counter, alanguage, score, ratings from ".$prefix."_stories WHERE topic='17' or topic='21' order by sid DESC LIMIT 0,$bf3");
$i=1;
$n=1;

while($row = $db->sql_fetchrow($result))
{
$title = $row['title'];
$sid = $row['sid'];

for ($a = 0 ; $a < 1; $a++)
$aray=array($title);
{
for ($i = 0; $i < $n - 1; $i++)
for ($j = $i + 1; $j < $n; $j++)

if (strlen($aray[$j]) < strlen($aray[$i]))

{
$title = $aray[$j];
$aray[$j] = $aray[$i];
$aray[$i] = $title;
}
foreach($aray as $title)
{

$content .= "<div><a href=\"$sid-$title.html\" class=\"rezareza\" target=\"_blank\" title=\"$title\">
<img width=\"16\" height=\"16\" border=\"0\" src=\"/blocks/43.png\" alt=\"$title\" title=\"$title\" /> &nbsp;$title</a></div><br>";

}
}}
$content .= "</td></tr></table>";




http://barnamenevis.org/attachment.php?attachmentid=87014&stc=1&d=1336907535

lady64
شنبه 13 خرداد 1391, 17:50 عصر
خط 12 برای چیه ؟


for ($a = 0 ; $a < 1; $a++)

حس میکنم کاربردی نداره و اینکه ابتدا در داخل حلقه ی while تمام مقدادیر $titile رو بخونید و بعد که همرو داخل آرایه ریختید ، خارج از while ‌مرتب کنید.
اگه یادتون باشه تو این تاپیک جوابتون رو داده بودم :
http://barnamenevis.org/showthread.php?341196-مرتب-سازی-رشته&p=1506097#post1506097

saeid99999
شنبه 13 خرداد 1391, 17:52 عصر
اگه یادتون باشه تو این تاپیک جوابتون رو داده بودم :
http://barnamenevis.org/showthread.php?341196-مرتب-سازی-رشته&p=1506097#post1506097 (http://barnamenevis.org/showthread.php?341196-%D9%85%D8%B1%D8%AA%D8%A8-%D8%B3%D8%A7%D8%B2%DB%8C-%D8%B1%D8%B4%D8%AA%D9%87&p=1506097#post1506097)

درسته ولی من تو خوندن دو تا رشته همزمان از دیتا بیس مشکل دارم!

lady64
یک شنبه 14 خرداد 1391, 08:27 صبح
خوندن دو رشته به این صورته که فکر میکنم شما هم درست نوشتید :


$arr=array();
$arr2=array()
$query11="select * from person ";
$result11=mysql_query($query11);
while($row11=mysql_fetch_array($result11))
{
$arr=$row11['Fname'];
$arr2=$row11['Lname'];
}

میخواید مرتب سازی بر اساس کدوم فیلدتون باشه ؟ while رو هم ببندید بعد مرتب سازی کنید.

saeid99999
یک شنبه 14 خرداد 1391, 10:48 صبح
خوندن دو رشته به این صورته که فکر میکنم شما هم درست نوشتید :


$arr=array();
$arr2=array()
$query11="select * from person ";
$result11=mysql_query($query11);
while($row11=mysql_fetch_array($result11))
{
$arr=$row11['Fname'];
$arr2=$row11['Lname'];
}

میخواید مرتب سازی بر اساس کدوم فیلدتون باشه ؟ while رو هم ببندید بعد مرتب سازی کنید.

ممنون خودم اوکی کردم