当我尝试使用节点运行时,我遇到了“TypeError:无法读取属性'push'of undefined”的问题。
我已经定义了需要推送给它们的标头和索引。这是代码:
var fs = require("fs");
var sys = require('sys');
var neo4j = require('node-neo4j');
const q = require('q');
const exec = require('child_process').exec;
db = new neo4j('http://neo4j:datasci@localhost:7474');
var neo4jCreateNode = [];
var len;
var lenSub;
var tableName = ["category","customer","lot","minorproduct","part","product","productpart","supplier","transaction"];
var attributeName = [["categoryid","categoryname","description"],
["city","country","customerid","customername","phone","postalcode","streetaddr"],
["lotid","partid"],
["minorproductid","productid"],
["partid","partname","supplierid"],
["categoryid","productid","productname"],
["lotid","minorproductid","partid","productid"],
["city","contactname","country","phone","postalcode","streetaddr","supplierid","suppliername"],
["customerid","minorproductid","productid","transactionid"]];
var data = "";
var char;
var headtrigger = 0;
var headallow = 0;
var counter = 0;
var productID;
var productname;
var tmp = "";
var header = [];
var index = [];
var neoQuery =[];
var countI = 0;
var countJ = 1;
var countK = 0;
var countL = 0;
var path = "/root/datasci/webserver/src/neo4j/Neo4jlog.txt";
fs.writeFile(path, "Hello", function(error) {});
这是将元素推送到数组的功能:
function moveToArray()
{
fs.appendFile(path, "---------------------------------", function(error) {});
console.log("---------------------------------");
var dfd = q.defer();
while(index.length>0){
index.pop();
}
while(header.length>0){
header.pop();
}
headtrigger = 0;
headallow = 0;
fs.appendFile(path, data, function(error) {});
console.log(data);
for (var i = 0; i < data.length; i++)
{
char = data[i];
if ((char >= "A" && char <= "Z") || (char >= "a" && char <= "z"))
{
headtrigger = 1;
headallow = 2;
tmp += char;
}
else if (char == " " && headtrigger == 1)
{
//console.log("hello " + i);
header.push(tmp);
tmp = "";
headtrigger = 0;
}
else if (char == "+" && headallow == 2)
break;
else
continue;
}
headtrigger = 0;
headallow = 0;
//var index = new Array(header.length);
for(var l=0;l<header.length;l++)
index.push([]);
for (var j = i; j < data.length; j++)
{
char = data[j];
if (char != "|" && char != "+" && char != "-" && char != "\n")
{
if(data[j] == " " && data[j+1] == " ")
continue;
if(data[j-1] != "|" && data[j+1] != "|")
{
headtrigger = 1;
headallow = 2;
tmp += char;
}
}
else if (char == "|" && headtrigger == 1)
{
index[counter].push(tmp);
//console.log(tmp);
tmp = "";
headtrigger = 0;
counter++;
if(counter == header.length)
counter = 0;
}
else if (char == "+" && headallow == 2)
{
break;
}
}
//console.log(header);
fs.appendFile(path, index, function(error) {});
console.log(index);
dfd.resolve();
return dfd.promise;
}
我真的需要这样做,但仍然有这个问题。请帮忙。
答案 0 :(得分:0)
<?php
$n = $_POST['nm'];
$link = mysql_connect("localhost", "root") or die(mysql_error());
mysql_select_db('apartments', $link) or die(mysql_error());
$query = "UPDATE Customers SET name (".$n");" //Customers - table, name - column in this table
mysql_query($query);
mysql_close($link);
echo "Запись изменена!";
?>
是不是因为index [counter]未定义?