2013-07-20 57 views
-2

我似乎无法找出以下错误:为什么我会得到Parse错误:语法错误,意外的T_STRING?

Parse error: syntax error, unexpected T_STRING in /home/content/25/11427125/html/connect.php on line 16

这里是整个代码:

<?php 

echo "Under Construction. Please try again soon!"; 
//-------MYSQL INFO LOGIN-------- 
$host = '******'; 
$user = 'RootSpread'; 
$pass = '******'; 
$db = 'accounts'; 

$ms = mysql_pconnect($host, $user, $pass); 
if (!$ms) 
{ 
    echo "Error connecting to database.\n"; 
} 

mysql_query (' INSERT INTO account ('firstname', 'initial', 'lastname', 'email', 'password', 'dob', 'number', 'sex') 
VALUES ('','','')'; 

mysql_close($ms); 

?> 
+1

此问题似乎是偏离主题,因为它是关于报价不匹配错误。 –

+2

欢迎来到Stack Overflow! [**请不要在新代码中使用'mysql_ *'函数**](http://bit.ly/phpmsql)。他们不再被维护[并被正式弃用](https://wiki.php.net/rfc/mysql_deprecation)。看到[**红框**](http://j.mp/Te9zIL)?学习[*准备的语句*](http://j.mp/T9hLWi),并使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/ mysqli) - [这篇文章](http://j.mp/QEx8IB)将帮助你决定哪个。如果你选择PDO,[这里是一个很好的教程](http://j.mp/PoWehJ)。 –

回答

2

此行导致该错误:

mysql_query (' INSERT INTO account ('firstname', 'initial', 'lastname', 'email', 'password', 'dob', 'number', 'sex') 
VALUES ('','','')'; 

将其更改为:

mysql_query("INSERT INTO account ('firstname', 'initial', 'lastname', 'email', 'password', 'dob', 'number', 'sex') VALUES ('','','')"); 
+0

男人,每个人都如此之快! –

+1

OP问题后三分钟? Nahh,..不够快 – samayo

+3

无论如何都不应该回答语法错误问题。但是SQL语法仍然关闭... – mario

0
mysql_query (' INSERT INTO account ('firstname', 'initial', 'lastname', 'email', 'password', 'dob', 'number', 'sex') 
VALUES ('kevin','','miqui')'; 

必须

mysql_query (" INSERT INTO account ('firstname', 'initial', 'lastname', 'email', 'password', 'dob', 'number', 'sex') VALUES ('kevin','','miqui')"); 

,使整个查询是一个字符串。

你需要使用"来表示你的字符串,而不是',以确保PHP知道你正在尝试做的

0

你要逃避查询单引号。 firstname前面的单引号引起错误,因为PHP认为查询已完成。但是,而不是一个分号后有一个字符串!如果您的编辑器具有语法高亮显示功能,则应该看到名称与以前的查询不同。

相关问题