我想解析XML页面,并将内容插入到SQL数据库中,但我不知道如何在插入语法中调用变量!
这是我的代码:
<?php
$server = "localhost";
$user = "root";
$password = "";
$database = "database";
$conn = mysqli_connect($server, $user, $password, $database);
if (!$conn) { die ("Connection Failed:" .mysql_connect_error()); }
echo "Connected Successfully ";
$sql = "INSERT INTO tableest (stepid, stepname, stepstatus) VALUES ('???', '???', '???')";
?>
<!DOCTYPE html>
<html>
<head>
<script>
if (window.XMLHttpRequest)
{ // code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
}
else
{ // code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","example.xml",false);
xmlhttp.send();
xmlDoc = xmlhttp.responseXML;
function displayTicket()
{
var x = xmlDoc.getElementsByTagName("step");
for (i = 0; i < x.length; i++) {
id = (x[i].getElementsByTagName("id")[0].childNodes[0].nodeValue);
name = (x[i].getElementsByTagName("name")[0].childNodes[0].nodeValue);
skip = (x[i].getElementsByTagName("status")[0].childNodes[0].nodeValue);
txt = "id:" + id + "<br>name: " + name + "<br>skip? : " + skip;
document.getElementById("showid").innerHTML=txt;
}
}
</script>
</head>
<body onload="displayTicket()">
<div id='showid'></div>
</body>
</html>
&#13;
但我一直收到未定义的变量通知!
第二期:
在displayticket函数中使用for循环(如上所述)只给我一步的信息(并没有完成所有步骤)
但如果按以下方式使用(没有函数),则给出正确的输出:
var x = xmlDoc.getElementsByTagName("step");
for (i = 0; i < x.length; i++) {
document.write(x[i].getElementsByTagName("id")[0].childNodes[0].nodeValue);
document.write(x[i].getElementsByTagName("name")[0].childNodes[0].nodeValue);
document.write(x[i].getElementsByTagName("status")[0].childNodes[0].nodeValue);
}
&#13;
任何想法如何解决这个问题?
所有帮助和输入都表示赞赏! 提前致谢