Php 分析错误:语法错误,意外的T#u字符串don';我不知道为什么

Php 分析错误:语法错误,意外的T#u字符串don';我不知道为什么,php,Php,我试图制作一个表单,将数据插入mysql数据库,但我一直收到相同的错误: 分析错误:语法错误,第20行的/home/u272231605/public\u html/add\u reg.php3中出现意外的T_字符串 下面是显示错误的代码: <html> <body> <?php if (isset($_POST['Nombre Monstruo']) && !empty($_POST['Nombre Monstruo'])&&

我试图制作一个表单,将数据插入mysql数据库,但我一直收到相同的错误:

分析错误:语法错误,第20行的/home/u272231605/public\u html/add\u reg.php3中出现意外的T_字符串

下面是显示错误的代码:

<html>
<body>

<?php
if (isset($_POST['Nombre Monstruo']) && !empty($_POST['Nombre Monstruo'])&&
    isset($_POST['Ataque']) && !empty($_POST['Ataque'])&&
    isset($_POST['Defensa']) && !empty($_POST['Defensa'])&&
    isset($_POST['Tipo']) && !empty($_POST['Tipo'])&&
    isset($_POST['Nivel']) && !empty($_POST['Nivel'])&&
    isset($_POST['Efecto']) && !empty($_POST['Efecto'])){
    $nombremonstruo = $_POST['Nombre Monstruo'];
    $ataque = $_POST['Ataque'];
    $defensa = $_POST['Defensa'];
    $tipo = $_POST['Tipo'];
    $nivel = $_POST['Nivel'];
    $efecto = $_POST['Efecto'];
    $db = u272231605_data;
    $host = mysql.hostinger.es;
    $user = u272231605_data;
    $password = 4Ym8ix2A;
    $con = mysql_connect($host,$user,$password)or die('No se ha podido conectar con      la base de datos');
    mysql_select_db($db,$con) or die('No se pudo conectar con la base de datos');
    mysql_query("INSERT INTO (Nombre del monstruo,Ataque,Defensa,Tipo,Nivel,Efecto" values('$nombremonstruo','$ataque','$defensa','$tipo','$nivel','$efecto')");
    echo "Guardado correctamente"
    echo "<a href=index.php"> Registrar otro monstruo </a>;
}
    else
    {
        echo "Han de introducirse todos los datos para que el registro de la   carta se complete.";
    } 

?>
</body>
</html>

你的问题是:

$db = u272231605_data;
在其他地方。应在其周围加上双引号:

$db = "u272231605_data";

您忘记了多个地方的引号:

$db = u272231605_data;
$host = mysql.hostinger.es;
$user = u272231605_data;
$password = 4Ym8iJ2A;
应引用这些值中的每一个。现在,它们被PHP视为未定义的常量。但最后一个(
4Ym8iJ2A
)是错误的原因,因为常量不能以数字开头

它们可能是:

$db = 'u272231605_data';
$host = 'mysql.hostinger.es';
$user = 'u272231605_data';
$password = '4Ym8iJ2A';

除了缺少变量的引号外,这4行代码还存在多个问题。请使用智能编辑器突出显示语法等。以下行已更新:

mysql_select_db($db,$con) or die('No se pudo conectar con la base de datos');
mysql_query("INSERT INTO (Nombre del monstruo,Ataque,Defensa,Tipo,Nivel,Efecto) values('$nombremonstruo','$ataque','$defensa','$tipo','$nivel','$efecto')");
echo "Guardado correctamente";
echo "<a href='index.php'> Registrar otro monstruo </a>";
mysql\u选择db($db,$con)或die('No se pudo conectar con la base de datos');
mysql_查询(“插入(Nombre del monstrou、Ataque、Defensa、Tipo、Nivel、Efecto)值(“$nombremonstrou'、“$Ataque'、”$Defensa'、“$Tipo'、“$Nivel'、“$Efecto”);
回音“Guardado correctamente”;
回声“;

您需要将变量用单引号括起来:

$db = 'u272231605_data';
$host = 'mysql.hostinger.es';
$user = 'u272231605_data';

该值需要单引号或双引号。

此行缺少分号:

echo "Guardado correctamente"

不公开发布数据库详细信息(包括密码)可能是个好主意
echo "Guardado correctamente"