解析错误:语法错误,意外''''(T_CONSTANT_ENCAPSED_STRING),期待变量(T_VARIABLE)或'{'或'$'在
我是PHP的初学者,我无法解决此错误,感谢您的支持answers.It是一个简单的连接到数据库MySQL中的列:
Name
Last Name
Email
解析错误:
syntax error, unexpected '""' (T_CONSTANT_ENCAPSED_STRING), expecting variable (T_VARIABLE) or '{' or '$' in C:\xampp\htdocs\Suscribe\registro.php on line 7
$db_host="localhost";
$db_user="root";
$db_password="";
$db_name="prueba";
$db_table_name="datos";
$db_connection = mysql_connect("$localhost", "$root","");
if (!$db_connection) {
die('No se ha podido conectar a la base de datos');
}
$Nombre = utf8_decode($_POST['nombre']);
$Apellido = utf8_decode($_POST['apellido']);
$Email = utf8_decode($_POST['email']);
$resultado=mysql_query("SELECT * FROM ".$datos." WHERE Email = '".$Email."'", $db_connection);
if (mysql_num_rows($resultado)>0){
header('Location: Fail.html');
}else{
$insert_value = 'INSERT INTO `' . $prueba. '`.`'.$datos.'` (`nombre` , `apellido` , `email`) VALUES
("' . $Nombre . '", "' . $Apellido . '", "' . $Email . '")';
mysql_select_db($prueba, $db_connection);
$retry_value = mysql_query($insert_value, $db_connection);
if (!$retry_value){
die('Error: ' . mysql_error());
}
header('Location: Success.html');
}
mysql_close($db_connection);
mysql
已被弃用,你应该使用mysqli
或pdo
变化
$db_connection = mysql_connect("$localhost", "$root","");
要
$db_connection = mysql_connect($localhost, $root,"");
还有一件事你没有连接DB
太
,你都一定MySQL后,写
mysql_select_db($db_name);
_connect
试试这个
<?php
$db_host="localhost";
$db_user="root";
$db_password="";
$db_name="prueba";
$db_table_name="datos";
$db_connection = mysql_connect($db_host, $db_user,$db_password);
if (!$db_connection) {
die('No se ha podido conectar a la base de datos');
}
$Nombre = utf8_decode($_POST['nombre']);
$Apellido = utf8_decode($_POST['apellido']);
$Email = utf8_decode($_POST['email']);
$resultado=mysql_query("SELECT * FROM ".$db_table_name." WHERE Email = '".$Email."'", $db_connection);
if (mysql_num_rows($resultado)>0)
{
header('Location: Fail.html');
} else {
$insert_value = 'INSERT INTO `' . $prueba. '`.`'.$datos.'` (`nombre` , `apellido` , `email`) VALUES
("' . $Nombre . '", "' . $Apellido . '", "' . $Email . '")';
mysql_select_db($db_name, $db_connection);
$retry_value = mysql_query($insert_value, $db_connection);
if (!$retry_value) {
die('Error: ' . mysql_error());
}
header('Location: Success.html');
}
mysql_close($db_connection);
我敢变化 这$db_connection = mysql_connect("$localhost", "$root","");
到$db_connection = mysql_connect($db_host, $db_user,$db_password);
,
这$resultado=mysql_query("SELECT * FROM ".$datos." WHERE Email = '".$Email."'", $db_connection);
到$resultado=mysql_query("SELECT * FROM ".$db_table_name." WHERE Email = '".$Email."'", $db_connection);
和 这
`mysql_select_db($prueba, $db_connection);`
到 mysql_select_db($db_name, $db_connection);
总是试图指出错误,然后提供解决方案。不像写整个剧本。所以最好指导他/她对他/她所犯的错误。 –
@Maha Dev soryy –
@naseebac:插入查询是错误的,并有语法错误。选择查询应该是: - $ resultado = mysql_query(“SELECT * FROM $ db_table_name WHERE Email ='$ Email'”); –
检查[此](http://stackoverflow.com/questions/18050071/php-parse-syntax-errors-and-how-to-solve-them)进行。对于初学者来说最好的书签;) – giorgio