使用js,php,ajax

时间:2017-05-05 17:45:27

标签: javascript php jquery html ajax

我想从本地安装的数据库中检索数据。 但是网站是用js编写和控制的,所以我必须向php文件发送一个ajax请求,然后连接到数据库,发送查询,然后将结果返回给js。

我有几个文件,因为我从2012年开始遵循本教程:https://www.youtube.com/watch?v=Yb3c-HljFro

结构: | -ajax(文件夹) | | -pkmn.php | -db(文件夹) | | -connect.php | -js(文件夹) | | -global.js | -index.php

文件: 的index.php:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8"></meta>
	</head>
	<body>
		Type: <input type="text" id="type"></input>
		Tier: <input type="text" id="tier"></input>
		<input type="submit" id="submit" value="Suchen"></input>
		<div id="pkmn-data"></div>
		<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
		<script src="js/global.js"></script>
	</body>
</html>

global.js:

$("#submit").click(function () {
	var type = $("type").val();
	$.ajax("ajax/pkmn.php", {type: type}, function(data) {
		alert(data);
	});
});

connect.php

<?php
mysql_connect('localhost','root', '123456');
mysql_select_db('database');

pkmn.php:

<?php
echo 'Hello';

用户应在文本输入中输入内容,然后单击“提交”,global.js文件通过ajax请求将该文本发送到文件pkmn.php。 但是当我单击提交按钮时,我收到一个错误:

XML-Verarbeitungsfehler: Ungeschlossenes Token
Adresse: file:///C:/Users/Jonathan%20Frakes/Documents/testDB/ajax/pkmn.php
Zeile Nr. 1, Spalte 1:  pkmn.php:1:1
XML-Verarbeitungsfehler: Ungeschlossenes Token
Adresse: file:///C:/Users/Jonathan%20Frakes/Documents/testDB/index.php
Zeile Nr. 1, Spalte 1:  index.php:1:1

其中的内容如下:

XML-Parseerror: unclosed token
at: file:///C:/Users/Jonathan%20Frakes/Documents/testDB/ajax/pkmn.php
Row 1, Column 1: pkmn.php
XML-Parseerror: unclosed token
at: file:///C:/Users/Jonathan%20Frakes/Documents/testDB/ajax/index.php
Row 1, Column 1: index.php

我完全不知道,什么可能导致这个错误。 此外:当我关闭pkmn.php中的php-tag时,控制台说BOTH错误转移到第3行第3列,当我稍后关闭php-tag(通过添加另一个换行符)时,错误再次在两个文件中移动。我还可以在结束标记前添加空格,水平移动错误。

我之前从未见过这样的事情,所以请帮我解决这个问题。

祝你好运, PanCave

编辑: 根据本教程(https://www.w3schools.com/php/php_ajax_database.asp)更改global.js现在会产生“找不到根元素”错误:/

$("#submit").click(function () {
	var type = $("#type").val();
	var tier = $("#tier").val();
	if(window.XMLHttpRequest) {
		xmlhttp = new XMLHttpRequest();
	} else {
		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	}
	xmlhttp.onreadystatechange = function() {
		if(this.readyState == 4 && this.status == 200) {
			document.getElementById("pkmn-data").innerHTML = this.responseText;
		}
	};
	xmlhttp.open("Get", "pkmn.php?type="+type+"&tier="+tier);
	xmlhttp.send();
});

0 个答案:

没有答案