需要有关将数据导入MySQL表的帮助吗

需要有关将数据导入MySQL表的帮助吗,mysql,sql,Mysql,Sql,我在将数据写入数据库表时遇到问题。除了下面显示的最后一条mysql\u query()语句外,其他一切都正常工作: mysql_query("insert into $TableName (Topic, Date, Phone_Number, Original_Description, Alt_Description, Website_Link) values ('. implode(',', $queries)') or die(mysql_error()"); 我不是一个MyS

我在将数据写入数据库表时遇到问题。除了下面显示的最后一条
mysql\u query()
语句外,其他一切都正常工作:

   mysql_query("insert into $TableName (Topic, Date, Phone_Number, Original_Description, Alt_Description, Website_Link)
   values ('. implode(',', $queries)') or die(mysql_error()");
我不是一个MySQL程序员,为了让它正常工作,我已经挣扎了好几个小时。下面的代码是根据其他论坛通过搜索web提出的建议组合而成的

// --------------- Save Data to Database ---------------------

// Database Authentication-user, password
   $TableName = 'User_Data';
   $dbh = mysql_connect ("localhost", "username", "password")
   or die ('Cannot connect to the database because: ' . mysql_error());

   mysql_select_db ("database");

// Creates Database Table if it does not exist
   if(mysql_num_rows(mysql_query("SHOW TABLES LIKE '".$TableName."'")) != 1) {
    mysql_query("CREATE TABLE $TableName(
    id INT NOT NULL AUTO_INCREMENT,
    PRIMARY KEY (id),
    Topic varchar(300) NOT NULL default '',
    Date  varchar(100) NOT NULL default '',
    Phone_Number varchar(100) NOT NULL default '',
    Original_Description varchar(2000) NOT NULL default '',
    Alt_Description varchar(2000) NOT NULL default '',
    Website_Link  varchar(2000) NOT NULL default '') ") or die(mysql_error());
   }

// Write to MySQL Database
   $queries = array(); 
   for($i=0; $i<count($current_topic_array); $i++) {
    $queries[] = '('.$current_topic_array[$i].', '.$date_array[$i].', '.$phone_array[$i].', '.$original_description_array[$i].', '.$alt_description_array[$i].', '.$website_link_array[$i].')'; 
   }
   mysql_query("insert into $TableName (Topic, Date, Phone_Number, Original_Description, Alt_Description, Website_Link)
   values ('. implode(',', $queries)') or die(mysql_error()");

任何帮助都将不胜感激

重读后对我的原始答案进行了主要编辑

您的线路:

mysql_query("insert into $TableName (Topic, Date, Phone_Number, Original_Description,   
   Alt_Description, Website_Link)
   values ('. implode(',', $queries)') or die(mysql_error()"); 
看起来是错误的,这可能解释了为什么没有出现错误。应该是:

mysql_query("insert into $TableName (Topic, Date, Phone_Number, Original_Description, 
   Alt_Description, Website_Link)
   values (". implode(',', $queries) . ")") or die(mysql_error());
总的来说,我还认为,如果您将其构建得更像这样,您将发现自己处于一个更好的调试位置:

$query = "insert into $TableName (Topic, Date, Phone_Number, Original_Description, 
       Alt_Description, Website_Link)
       values (". implode(',', $queries) . ")";
mysql_query($query) or die(mysql_error());
**在上述代码段的第一行末尾缺少分号**
然后,您可以选择吐出您使用的确切查询。

如果您将查询创建为字符串,那么输出是什么样子的?你能从命令行运行它吗?换句话说,$query=“insert into insert into$TableName(主题、日期、电话号码、原始描述、Alt描述、网站链接)值('.infrade(',',$querys'))或die(mysql_error());$query的值是什么。这将让您更好地了解查询的最终外观,以及您可以尝试手动运行的完整部分作为概念证明。使用echo$query;for$query=“插入用户数据(主题、日期、电话号码、原始描述、Alt\u描述、网站链接)值”。内爆(“,”,$querys);我得到以下信息:在用户数据(主题、日期、电话号码、原始描述、备选描述、网站链接)中插入值(经典汽车,2012年2月5日,777-555-1212,2012年5月春季举办的经典汽车展,2012年5月的经典汽车展),(Classic Cars,07-13-2012,777-555-5412,2012年7月夏季举办的Classic Car show,2012年7月的Classic Car,)谢谢,但这是echo$query的结果;for$query=“插入用户数据(主题、日期、电话号码、原始描述、备选描述、网站链接)值”。内爆(“,”,$queries);将数据导入表的以下语句存在问题:mysql_query(“插入$TableName(主题、日期、电话号码、原始描述、Alt_描述、网站链接)值('.introde(',',$querys)'))或die(mysql_error());您的mysql_query()行导致以下错误:解析错误:语法错误,意外的“;”,而$query=“insert…行导致以下错误:解析错误:语法错误,意外的T\u string抱歉。缺少分号(如果您引用的是最后一个代码段)。我的意思是我尝试了两个代码段,mysql\u query()一个导致了分析错误:语法错误,意外的“;”和$query=“insert-into…”一个导致了分析错误:语法错误,意外的T_字符串
$query = "insert into $TableName (Topic, Date, Phone_Number, Original_Description, 
       Alt_Description, Website_Link)
       values (". implode(',', $queries) . ")";
mysql_query($query) or die(mysql_error());