使用Ajax、JavaScript和HTML发布一些数据
你好,我很沮丧,因为我无法连接到我的数据库来检索一些文件 我有我的普通html代码(index.html),它添加了一个javascript:使用Ajax、JavaScript和HTML发布一些数据,javascript,php,mysql,ajax,html,Javascript,Php,Mysql,Ajax,Html,你好,我很沮丧,因为我无法连接到我的数据库来检索一些文件 我有我的普通html代码(index.html),它添加了一个javascript: <script src="js/connection.js"></script> 它调用此方法: function getPageData($dia){ $sql = ("SELECT * FROM Comentarios WHERE dia='$dia'"); $result = mysqli_query(connectT
<script src="js/connection.js"></script>
它调用此方法:
function getPageData($dia){
$sql = ("SELECT * FROM Comentarios WHERE dia='$dia'");
$result = mysqli_query(connectToDb(),$sql);
$num_rows = mysqli_num_rows($result);
$html="";
$boolean=true;
if($num_rows>0) {
while($row = $result->fetch_assoc()) {
if($boolean==true){
$html.='<div class="gray"><div class="comentario">'.$row["comment"].'</div><div class="timestamp">'.$row["dia"].'</div></div>';
$boolean=false;
}else{
$html.='<div class="white"><div class="comentario">'.$row["comment"].'</div><div class="timestamp">'.$row["dia"].'</div></div>';
$boolean=true;
}
}
echo json_encode(array('html'=>($html.'<br>'.'<div class="fondo_gen"> div></div></div>'),'texto'=>$dia));
} else {
echo json_encode(array('html'=>'<div class="transparent"><div class="nada">No hay comentarios aun :(</div></div>','texto'=>$dia));
}
}
函数getPageData($dia){
$sql=(“从Comentarios中选择*,其中dia='$dia'”);
$result=mysqli_查询(connectToDb(),$sql);
$num_rows=mysqli_num_rows($result);
$html=“”;
$boolean=true;
如果($num_rows>0){
而($row=$result->fetch_assoc()){
如果($boolean==true){
$html.='.$row[“comment”]。$row[“dia”]。';
$boolean=false;
}否则{
$html.='.$row[“comment”]。$row[“dia”]。';
$boolean=true;
}
}
echo json_encode(数组('html'=>($html.'.'div>),'texto'=>$dia)); }否则{ echo json_encode(数组('html'=>'No hay comentarios aun:(','texto'=>$dia)); } } PHP文件到此结束 我知道它是连接到数据库的,因为a创建了一个“dummy.php”文件,该文件连接到同一个数据库和表,并添加了一条记录,没有问题。我不确定是哪个问题,如果您能帮助我,我会非常感激 附言: 我的文件夹设置如下:
感谢并为我蹩脚的英语感到抱歉没关系,我把它修好了,我用以下内容替换了Ajax部分:
$.post("php/setup.php",
{
fecha: dia
},
function(data, status){
alert("Data: " + data + "\nStatus: " + status);
});
并使用
if (isset($_POST["fecha"])){
$fecha = $_POST["fecha"];
getPageData($fecha);
}else{
echo "Got nothing";
}
无论如何,谢谢你,我很感谢你的帮助你是如何从PHP文件打印到控制台的?你是不是把服务器端代码和客户端代码搞混了?或者你说的不是浏览器控制台,而是另一个?据我所见,你的JS
getData()
函数不会打印除警报之外的任何内容。PHP登录到哪个控制台?您是否看到任何警报?欢迎使用Stack Overflow。当您执行AJAX时,浏览器控制台中的post/response显示了什么?您会遇到什么错误?您无法捕获任何MySQLi错误。此外,我担心我听说了Mysql函数和MySQLi的混合。您好,正在打印的控制台是嵌入在浏览器中的控制台(如chrome和internet explorer)。它不会打印任何错误。实际上,成功函数正在触发,说一切都按计划进行。我是说MySQLi(我一直忘了是不推荐的)。如果我试图从success函数中获取数组,它显示为undefined(我像success:function(data){alert(data.html);}一样打印它,我刚从服务器端得到一个错误:注意:第4行的undefined index:fecha in(我的url),即:$fecha=$\u POST[“fecha”];
$.post("php/setup.php",
{
fecha: dia
},
function(data, status){
alert("Data: " + data + "\nStatus: " + status);
});
if (isset($_POST["fecha"])){
$fecha = $_POST["fecha"];
getPageData($fecha);
}else{
echo "Got nothing";
}