0

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

解析错误:语法错误,第 20 行 /home/u272231605/public_html/add_reg.php3 中的意外 T_STRING

这是显示错误的代码:

<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>

提前感谢您提供的帮助:)

4

6 回答 6

2

你的问题在这里:

$db = u272231605_data;

和其他地方。您应该在它们周围加上双引号:

$db = "u272231605_data";
于 2013-07-26T20:11:38.623 回答
0

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

$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';
于 2013-07-26T20:11:54.967 回答
0

除了缺少变量的引号外,这 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>";
于 2013-07-26T20:12:03.490 回答
0

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

$db = 'u272231605_data';
$host = 'mysql.hostinger.es';
$user = 'u272231605_data';
于 2013-07-26T20:12:03.983 回答
0
$password = "4Ym8iJ2A";

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

于 2013-07-26T20:12:04.153 回答
0

您在此行缺少分号:

echo "Guardado correctamente"
于 2013-07-26T20:12:34.297 回答