Veritabanı sorgu php kodlu olan burada ben bir arama formu var ve html dosyası arama formunda sonuçlarını görüntülemek için ajax bu php dosyasını çağırır. Sorun sonuç search.html gibi aynı formda görüntülenen istiyorum, olduğu; ajax çalışırken, henüz bu sonuçlarını görüntülemek için search.php gider.
search.html:
<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script src="scripts/search_ajax.js" type="text/javascript"></script>
</head>
<body>
<form id="submitForm" method="post">
<div class="wrapper">
<div class="field">
<input name="search" id="search" />
</div><br />
<input id="button1" type="submit" value="Submit" class="submit" onclick="run_query();" /><br />
</div>
<div id="searchContainer">
</div>
</form>
</body>
</html>
Ben form etiketi için action = "search.php" eklerseniz, bu sonucu görüntüler ama search.php üzerinde. Ben sadece [yukarıda yapıldığı gibi], bu search.html üzerinde hiçbir şey görüntüler javascript işlevi eklerseniz, aynı formda görüntülemek [yani search.html değil search.php] isterim.
search_ajax.js:
var xmlHttp
function run_query() {
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null) {
alert ("This browser does not support HTTP Request");
return;
} // end if
var url="search.php";
xmlHttp.onreadystatechange=stateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
} //end function
function stateChanged(){
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){
document.getElementById("searchContainer").innerHTML=xmlHttp.responseText;
} //end if
} //end function
function GetXmlHttpObject() {
var xmlHttp=null;
try {
// For these browsers: Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}catch (e){
//For Internet Explorer
try{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
} //end function
search.php:
<?php
include 'config.php';
$search_result = "";
$search_result = $_POST['search'];
$result = mysql_query("SELECT cQuotes, vAuthor, cArabic, vReference FROM thquotes WHERE cQuotes LIKE '%$search_result%' ORDER BY idQuotes DESC", $conn)
or die ('Error: '.mysql_error());