我目前正在尝试完成一个项目,其中的规范是使用搜索表单来搜索包装数据库。该数据库具有许多变量,包括大小,名称,类型和肉类。我需要创建一个搜索表单,用户可以在其中使用多种不同的搜索进行搜索(例如搜索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>
如果有人有任何见解或可以帮助我,我将非常感谢!提前致谢。
试试看让我知道会发生什么。
形成:
<form action="form.php" method="post"> Search: <input type="text" name="term" /><br /> <input type="submit" value="Submit" /> </form>
Form.php:
$term = mysql_real_escape_string($_REQUEST['term']); $sql = "SELECT * FROM liam WHERE Description LIKE '%".$term."%'"; $r_query = mysql_query($sql); while ($row = mysql_fetch_array($r_query)){ 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']; }
编辑:清理多一点。
Final Cut(我的测试文件):
<?php $db_hostname = 'localhost'; $db_username = 'demo'; $db_password = 'demo'; $db_database = 'demo'; // Database Connection String $con = mysql_connect($db_hostname,$db_username,$db_password); if (!$con) { die('Could not connect: ' . mysql_error()); } mysql_select_db($db_database, $con); ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <title></title> </head> <body> <form action="" method="post"> Search: <input type="text" name="term" /><br /> <input type="submit" value="Submit" /> </form> <?php if (!empty($_REQUEST['term'])) { $term = mysql_real_escape_string($_REQUEST['term']); $sql = "SELECT * FROM liam WHERE Description LIKE '%".$term."%'"; $r_query = mysql_query($sql); while ($row = mysql_fetch_array($r_query)){ 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']; } } ?> </body> </html>