Ciao a tutti!
Ho un piccolo problema: sto cercando di imparare come si programma con la metodologia AJAX e sto incontrando dei problemi.
Ho fatto una piccola paginetta che dovrebbe solo usare XMLHttpRequest per chiamare una micro-pagina PHP che legge un DB con dentro solo una tabella con una sola colonna con un solo valore con dentro "Ciao"
In pratica l'idea è che questa pagina PHP faccia la sua query SQL e scriva il suo "Ciao".
Quello che mi aspetto è che se la richiedo con una richiesta di XMLHttpRequest, il server prima di mandarmi la pagina, se la interpreti per bene, invece mi manda tipo un pezzetto del sorgente PHP, in particolare gli ultimi caratteri.
Sapete cosa potrebbe essere? Magari è banalmente qualche impostazione di Apache?
La pagina PHP, se chiamata da sola funziona perfettamente.
Sto usando:
PHP 5.3.1
Apache 2.2.14
MySQL 5.1.44
Ecco il codice PHP:
E il codice javascript:Codice PHP:
<?php
include 'funzioni_mysqli.php';
$news=GetData("Select * from testtable");
$tot=count($news); for ($i=0;$i<$tot;$i++)
{ echo $news[$i]["Colonna"]."
"; }
?>
<html>
<head>
<script type="text/javascript" src="ajaxFuncts.js" />
<script type="text/javascript">
</script>
</head>
<body>
<div id="test">
</div>
<script>
function myfunc(obj)
{
document.getElementById('test').innerHTML=obj.resp onseText;
}
xmlReq = getXMLRequest();
getOuputText(xmlReq, "test.php", myfunc);
</script>
</body>
</html>
E le funzioncine che mi sono fatto per aiutarmi:
function getXMLRequest()
{
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
return xmlhttp;
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
return xmlhttp;
}
}
function getOuputText(xmlReqObj, fileUrl, callBack)
{
xmlReqObj.onreadystatechange=function()
{
if(xmlReqObj.readyState==4)
{callBack(xmlReqObj);}
}
xmlReqObj.open("GET",fileUrl,true);
xmlReqObj.send(null);
}
Spero di non aver esagerato come primo messaggio
Grazie a tutti!