PDA

View Full Version : سوال: مشکل در کوئری رندوم



caypiyouler
سه شنبه 23 مهر 1392, 10:33 صبح
سلام وقت بخیر

من یه کدی نوشتم مشکل داره یعنی فقط یدونه مطلب رو نشون میده در حالی که 15 تا مطلب تویه دیتابیس هست




//Random
$BlogRandomItems = occurrencecount("<BlogRandomItems>", "</BlogRandomItems>", $template, "0");
for($f=0;$f<$BlogRandomItems;$f++) {
$insert = "";
$RandomItems = between("<BlogRandomItems>", "</BlogRandomItems>", $template);
$result2 = mysql_query("SELECT * FROM entires WHERE weblog = '$weblog' and how = '1' ORDER BY rand() desc limit 0,10");
while($r=mysql_fetch_assoc($result2)){
$insert = $RandomItems;
$e_time = strtotime($r['date']);
$e_date = jgmdate("l d F Y",$e_time);
$insert = str_replace("[-PostTitle-]", "$r[title]", $insert);
$insert = str_replace("[-PostDate-]", "$e_date", $insert);
$insert = str_replace("[-PostLink-]", "/POST/$r[e_id]-$r[title]", $insert);
$insert = str_replace("<-PostTitle->", "$r[title]", $insert);
$insert = str_replace("<-PostDate->", "$e_date", $insert);
$insert = str_replace("<-PostLink->", "/POST/$r[e_id]-$r[title]", $insert);
}
$template = str_replace("<BlogRandomItems>".$RandomItems."</BlogRandomItems>", $insert, $template);
}
//FINISH



دوستان میشه بگید مشکلش چیه ؟

MMSHFE
سه شنبه 23 مهر 1392, 10:37 صبح
دوست عزیز، اولاً RAND که دیگه DESC و ASC نداره! ثانیاً دقیقاً بگین میخواین کوئری چه کاری انجام بده تا دقیقاً راهنمایی کنیم ساختارش چطور باید باشه.

caypiyouler
سه شنبه 23 مهر 1392, 10:45 صبح
استاد شهرکی این ماله بخشی از یه وبلاگدهیه

این سیستم رو یه نفر دیگه نوشته و قرار بود تا آخرش هم ادامه بده که نشد و الان هم من که تجربه ندارم و زیاد هم بلد ینستم باید ادامه بدم
من اومدم کد بخش آخرین مطالب رو برداشتم و یکم تغیر دادم که به صورت رندوم بیاد مطالب وبلاگ رو نشون بده

همه چیش اوکیه فقط یدونه مطلب نشون میده و من میخوام 10 تا مطلب نشون بده ...

caypiyouler
سه شنبه 23 مهر 1392, 12:33 عصر
یکی از دوستان لطفا راهنمایی کنه مشکل از چیه که فقط یدونه مطلب میزنه

در حالی که این همون کدی هست که 10 تا مطلب آخر رو نشون میده من زدم رندوم نشون بده ولی دیون نشون میده

MMSHFE
سه شنبه 23 مهر 1392, 12:54 عصر
اینو تست کنید:


<?php
//Random
$BlogRandomItems = occurrencecount('<BlogRandomItems>', '</BlogRandomItems>', $template, '0');
for($f = 0; $f < $BlogRandomItems; $f++) {
$insert = '';
$RandomItems = between('<BlogRandomItems>', '</BlogRandomItems>', $template);
$result2 = mysql_query("SELECT * FROM `entries` WHERE (`weblog`='{$weblog}' AND `how`='1') ORDER BY RAND() LIMIT 10");
if($result2 && mysql_num_rows($result2) > 0) {
while($r = mysql_fetch_assoc($result2)) {
$insert = $RandomItems;
$e_time = strtotime($r['date']);
$e_date = jgmdate('l d F Y', $e_time);
$insert = str_replace('[-PostTitle-]', '$r[title]', $insert);
$insert = str_replace('[-PostDate-]', '$e_date', $insert);
$insert = str_replace('[-PostLink-]', '/POST/$r[e_id]-$r[title]', $insert);
$insert = str_replace('<-PostTitle->', '$r[title]', $insert);
$insert = str_replace('<-PostDate->', '$e_date', $insert);
$insert = str_replace('<-PostLink->', '/POST/$r[e_id]-$r[title]', $insert);
}
}
$template = str_replace('<BlogRandomItems>' . $RandomItems . '</BlogRandomItems>', $insert, $template);
}
//FINISH

caypiyouler
سه شنبه 23 مهر 1392, 13:00 عصر
استاد اینبار کلا اون منو رو نشون نمیده تویه وبلاگ ها

MMSHFE
سه شنبه 23 مهر 1392, 13:10 عصر
راستش باید کد رو از نزدیک بررسی کنم. اگه بهم TeamViewer بدین خیلی خوب میشه (اطلاعاتش رو پیام خصوصی کنید).

caypiyouler
سه شنبه 23 مهر 1392, 13:40 عصر
استاد ارسال کردم براتون

caypiyouler
سه شنبه 23 مهر 1392, 17:34 عصر
استاد از منو های دیگه استفاده کردم واسه اون و راند رو زدم اوکی شد

ممنون از وقتی که در اختیار من قرار داید :X

موفق باشید

MMSHFE
سه شنبه 23 مهر 1392, 17:44 عصر
بسیار خوب، موفق باشید.