رفتن به مطلب

کمک در ساخت فرم جستجو بر اساس لینک XML


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

سلام میخواستم اگر امکانش هست دوستان کمک کنند که بتونم به نحوی یک فرم جستجو بسازم که بشه آخر این لینک رو عوض کرد

http://thegamesdb.net/api/GetGamesList.php?name=x-men'>http://thegamesdb.net/api/GetGamesList.php?name=x-men یعنی قسمتی که نوشته X-men باید عوض بشه وقتی که عوض بشه خودش یک لیست XML رو به نمایش در میاره حالا اگه کمک کنید که فرم جستجو بتونم واسه این بسازم خیلی خوب میشه بعدش یک مدل جستجو هست فکر کنم اسمش live search باید باشه که یک کلمه رو مینویسی خودش مثلا کامل یا مشابه های اون اسم رو نمایش میده اگه بشه یک همچین کاری کرد که دیگه عالی میشه فرم جستجوی که مد نظر دارم دقیقا مشابه این سایت هستش http://thegamesdb.net اگه کمک کنید ممنون میشم

لینک به ارسال

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


$searchParameter=file_get_contents("http://thegamesdb.net/api/GetGamesList.php?name=".$Thetitle."");
$result=json_decode($searchParameter);
$printResult="<div class='searchesgame'>";
$printResult.="<p>::searches for: <b>".$Thetitle."</b></p>";
$printResult.="<ul>";
isset($result->Response) ? $response=false : $response=true;
if($response==true){
foreach($result->Search as $items){
$printResult.="<li>
<b>title: </b><a href='#' class='gameID' title='".$items->Game->GameTitle."'>".$items->Game->GameTitle."</a>
</li>";
}
$printResult.="</ul>";
$printResult.="</div>";
}

خطاهای هم که میگیره اینا هستش


Notice: Undefined variable: Thetitle in on line 1
Notice: Undefined variable: Thetitle in on line 3
Notice: Trying to get property of non-object in on line 7
Warning: Invalid argument supplied for foreach() in on line 7

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

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


<div id="searchbox" style="padding: 16px 0px; text-align: center;">
<form method="get" id="search" action="http://thegamesdb.net/api/GetGamesList.php?name=" autocomplete="on">
<input type="text" id="frontGameSearch" name="name" placeholder="Search Games..." style="border-radius: 6px 0px 0px 6px; width: 450px;">
<input type="submit" value="Search" style="border-radius: 0px 6px 6px 0px; height: 36px; padding: 0px 5px 0px 5px;">
</form>
</div>

و درست کار میکنه حالا مشکلم اینکه وقتی یک چیز توش سرچ میکنم میره توی اون صفحه ولی من میخوام این شکلی نباشه و اینجوری باشه که مثلا عبارت رو که سرچ کردم توی یک آرایه به این شکل مثلا "$gtitle" سیو کنه که بعدش بتونم زیرش به وسیله echo نتیجه رو چاپ کنم و از API های XML به راحتی بشه استفاده کنم

لینک به ارسال

دوستان اگر کسی اطلاعی داره لطفا کمک کنه یا حداقل بگید اصلا یک همچین چیزی امکان نداره راحت شم :( 4 روزه وقتم رو گذاشتم به نتیجه دلخواه نمیرسم هرکار میکنم

لینک به ارسال

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


<?php
$q=$_GET["name"];
$keyword=strtoupper($q);
$xml=simplexml_load_file("http://thegamesdb.net/api/GetGamesList.php?name=");
foreach ($xml->Game as $item) {
$title = (string) $item->GameTitle;
$title2=strtoupper($title);
$strpos = strpos($title2, $keyword);
if($strpos == TRUE){
echo $title;
echo "<br/>";
}
}
?>

این هم کد های قسمت فراخوانی به وسیله آجاکس


<html>
<head>
<script>
function showResult(str)
{
if (str.length==0)
{
document.getElementById("livesearch").innerHTML="";
document.getElementById("livesearch").style.border="0px";
return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("livesearch").innerHTML=xmlhttp.responseText;
document.getElementById("livesearch").style.border="1px solid #A5ACB2";
}
}
xmlhttp.open("GET","ajax-php-search.php?name="+str,true);
xmlhttp.send();
}
</script>
</head>
<body>
<form>
<input type="text" size="30" onkeyup="showResult(this.value)">
<div id="livesearch"></div>
</form>
</body>
</html>

لینک به ارسال

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

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

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

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

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

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

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

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

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