رفتن به مطلب

جستجوی به صورت آژاکس


پست های پیشنهاد شده

سلام

میخواستم جستجوی سایت رو به صورت آژاکس باشه

یعنی کلمه یا حرف رو بزنی نتایج بیاره .

حالا میخوام بدون افزونه اگه امکانش باشه این کار رو انجام بدم .

افزونه هستش منتها کد بهتره

عکس زیر هم میشه اون چیزی که من میخوام رو نشون میده

کادر های آبی ، سبز ، بنفش ، اینا هرکدوم ملا دسته ی جداگانه هست . ( البته مثلا تعداد دسته 4 تا یا بیشتر باشه )

کادر نارنجی هم اگه جستجو تو متن باشه نشون بده .

کادرهای قرمز هم زمینه ی دلخواه هست .

کادر سیاه هم دکمه ی جستجو تو ی صفحه هست

( البته وقتی توی کادر جستجو کلیک کنی نمایش بده ، در غیر کادر کلیک کنی محمو بشه ) یک جور شبیه IMDB.com

البته انتخاب دسته هم باشه چه بهتر

10437012573313154957.png

توی سایت های خارجی هم گشتم منتها برای وردپرس نبود ، گفتم شاید با ویرایش کدش این کار رو انجام داد .

آدرس آموزش

آدرس دمو

ممنون

لینک به ارسال

کدي که براي اون تصوير استفاده شده (البته اين کد براي وردپرس نيست ) :


<p id="searchresults">
<?php

$movie = new movie;

// Is there a posted query string?
if(isset($_POST['queryString'])) {
//$queryString = $db->real_escape_string($_POST['queryString']);

// Is the string length greater than 0?
//echo 'query:'.$_POST['queryString'];
$queryString = escape_data(latin_fix($_POST['queryString']));
if(strlen($queryString) >2) {
$query = $movie->get_data("(name LIKE '%" . $queryString . "%' OR keywords LIKE '%" . $queryString . "%') AND upcoming = 0 ORDER BY rating DESC LIMIT 8");
if($query) {
// While there are results loop through them - fetching an Object.

// Store the category id
$catid = 0;
while ($row = mysql_fetch_array($query)) {
echo '<a href="'.$row['id'].'">';

$row[image] = IMG_UPLOAD_PATH.'w45/'.$row[image].'.jpg';
echo "<img src='$row[image]' alt='' />";

if(strlen($row['name']) > 35) {
$row['name'] = substr($row['name'], 0, 35) . "...";
}
$year = split('-',$row[release_date]);
$name = $row['name']." ($year[0])";

echo '<span class="searchheading">'.$name.'</span>';

$description= $row['stars'];
if(strlen($description) > 50) {
$description= substr($description, 0, 50) . "...";
}

echo '<span>'.$description.'</span>';
echo '</a>';
}//while


}

$serial = new tv_shows;
$query = $serial->get_data("name LIKE '%" . $queryString . "%' ORDER BY rating LIMIT 2");
if($query) {
// While there are results loop through them - fetching an Object.

// Store the category id
$catid = 0;
while ($row = mysql_fetch_array($query)) {

$row[image] = IMG_UPLOAD_PATH.'w185/'.$row[image].'.jpg';
echo '<a href="'.$row[id].'">';
echo "<img src='$row[image]' alt='' />";

if(strlen($row['name']) > 35) {
$row['name'] = substr($row['name'], 0, 35) . "...";
}
$name = $row['name'];

echo '<span class="searchheading">'.$name.'</span>';

if($row['last_episode']) $description = $row['last_episode'].' اضافه شد';
else $description = $row['status'];

echo '<span>'.$description.'</span>';
echo '</a>';
}//while
}

$person = new person;
$query = $person->get_data("name LIKE '%" . $queryString . "%' ORDER BY name LIMIT 2");
if($query) {
// While there are results loop through them - fetching an Object.

// Store the category id
$catid = 0;
while ($row = mysql_fetch_array($query)) {
$image = IMG_UPLOAD_PATH.'w45/'.$row[image].'.jpg';
if($row[type]=='director') $type='director';
else $type='stars';
echo '<a href="index.php?order=release_date&f_type='.$type.'&search='.$row[name].'">';
echo "<img src='$image' alt='' />";

if(strlen($row['name']) > 35) {
$row['name'] = substr($row['name'], 0, 35) . "...";
}
$name = $row['name'];

echo '<span class="searchheading">'.$name.'</span>';

$row[type]=str_replace('actor','بازيگر',$row[type]);
$row[type]=str_replace('actress','بازيگر',$row[type]);
$row[type]=str_replace('director','کارگردان',$row[type]);
echo '<span>'.$row[type].'</span>';

echo '</a>';
}//while
}


} else {
// Dont do anything.
} // There is a queryString.
} else {
echo 'There should be no direct access to this script!';
}
?>
</p>

خوب احتمالا ميشه با ويرايش کد اون رو به وردپرس تبديل کرد و تغییراتی که توی پست اول گفتم ، در آورد .

ویرایش شده توسط bird1388
لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...