السلام عليكم ورحمة الله وبركاته
ياعني ايه بحث مباشر
ياعني انت لما تروح لجوجل وتكتب اي جمله او حرف تلقيه طلعلك خيارات بتحتوي علي الحاجه الي انت كتبته واحنا انعمل كده بالظبط باستخدام ajex
اول حاجه انعمل في ملف index
انحط فيه الاكواد ده
كود PHP:
<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 (this.readyState==4 && this.status==200) {
document.getElementById("livesearch").innerHTML=this.responseText;
document.getElementById("livesearch").style.border="1px solid #A5ACB2";
}
}
xmlhttp.open("GET","livesearch.php?q="+str,true);
xmlhttp.send();
}
</script>
</head>
<body>
<form>
<input type="text" size="30" onkeyup="showResult(this.value)">
<div id="livesearch"></div>
</form>
</body>
</html>
الخطوه ده انا استخدم فيه xml ده ملف روابط علشان يعمل تغذيه سريعه طبعا في شرح عامله عن كيفية عمل ملف xml بصيغة php لو كنت اتستخدمه لموقع كبير
انعمل ملف جديد وانسميه
livesearch.php
وانحط فيه الاكواد ده
كود PHP:
<?php
$xmlDoc=new DOMDocument();
$xmlDoc->load("links.xml");
$x=$xmlDoc->getElementsByTagName('link');
//get the q parameter from URL
$q=$_GET["q"];
//lookup all links from the xml file if length of q>0
if (strlen($q)>0) {
$hint="";
for($i=0; $i<($x->length); $i++) {
$y=$x->item($i)->getElementsByTagName('title');
$z=$x->item($i)->getElementsByTagName('url');
if ($y->item(0)->nodeType==1) {
//find a link matching the search text
if (stristr($y->item(0)->childNodes->item(0)->nodeValue,$q)) {
if ($hint=="") {
$hint="<a href='" .
$z->item(0)->childNodes->item(0)->nodeValue .
"' target='_blank'>" .
$y->item(0)->childNodes->item(0)->nodeValue . "</a>";
} else {
$hint=$hint . "<br /><a href='" .
$z->item(0)->childNodes->item(0)->nodeValue .
"' target='_blank'>" .
$y->item(0)->childNodes->item(0)->nodeValue . "</a>";
}
}
}
}
}
// Set output to "no suggestion" if no hint was found
// or to the correct values
if ($hint=="") {
$response="no suggestion";
} else {
$response=$hint;
}
//output the response
echo $response;
?>
لو انت بتستخدم ملف التغذيه بصيغة php اتغير الاسم ده في ملف livesearch
اتبحث عن
كود PHP:
$xmlDoc->load("links.xml");
اتخيله
كود PHP:
$xmlDoc->load("links.php");
علي حسب اسم الملف
النتيجة