我当前正在尝试完成一个项目,规格要求使用搜索表单来搜索包装数据库。该数据库有许多变量,包括大小、名称、类型和肉类。我需要创建一个搜索表单,用户可以使用多种不同的搜索方式(例如搜索长度为50厘米的盖托)。
我已经花了一整天的时间尝试创建一些PHP代码,以在我创建的测试数据库中搜索信息。我遇到了许多不同的错误,包括mysql_fetch_array错误、布尔错误,现在最新的错误是我的表似乎不存在。虽然我可以输入数据(在html和php页面上可以输入数据),但我不知道是什么原因导致这种情况,我已经重新开始过几次了。
有人能给我一些想法或提示,告诉我目前应该做些什么吗?这只是我在正式网站SQL数据库之前进行的一些小测试。
数据库创建:
<body>
<?php
$con = mysql_connect("localhost", "root", "");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
if (mysql_query("CREATE DATABASE db_test", $con))
{
echo "Database created";
}
else
{
echo "Error creating database: " . mysql_error();
}
mysql_select_db("db_test", $con);
$sql = "CREATE TABLE Liam
(
Code varchar (30),
Description varchar (30),
Category varchar (30),
CutSize varchar (30),
)";
mysql_query($sql, $con);
mysql_close($con);
?>
</body>
HTML搜索表单页面:
<body>
<form action="form.php" method="post">
Search: <input type="text" name="term" /><br />
<input type="submit" name="submit" value="Submit" />
</form>
</body>
我正在使用的 PHP 代码尝试从数据库中获取信息 (我已经重写了几次这段代码,这段代码还会显示“table.liam不存在”)
<body>
<?php
$con = mysql_connect ("localhost", "root", "");
mysql_select_db ("db_test", $con);
if (!$con)
{
die ("Could not connect: " . mysql_error());
}
$sql = mysql_query("SELECT * FROM Liam WHERE Description LIKE '%term%'") or die
(mysql_error());
while ($row = mysql_fetch_array($sql)){
echo 'Primary key: ' .$row['PRIMARYKEY'];
echo '<br /> Code: ' .$row['Code'];
echo '<br /> Description: '.$row['Description'];
echo '<br /> Category: '.$row['Category'];
echo '<br /> Cut Size: '.$row['CutSize'];
}
mysql_close($con)
?>
</body>
$_POST
。当您仅打算在服务器端“读取”数据(SELECT/search)时,应使用$_GET
。(当然,我是指您应该根据这个建议调整表单的method
属性) - mickmackusa