这个php脚本返回mySQL数据库中的每一行:
<?php
$host = "host_name";
$db = "database_name";
$user = "user_name";
$pass = "password";
$connection = mysql_connect($host, $user, $pass);
//Check to see if we can connect to the server
if(!$connection)
{
die("Database server connection failed.");
}
else
{
//Attempt to select the database
$dbconnect = mysql_select_db($db, $connection);
//Check to see if we could select the database
if(!$dbconnect)
{
die("Unable to connect to the specified database!");
}
else
{
$query = "SELECT * FROM farmer";
$resultset = mysql_query($query, $connection);
$records = array();
//Loop through all our records and add them to our array
while($r = mysql_fetch_assoc($resultset))
{
$records[] = $r;
}
//Output the data as JSON
echo json_encode($records);
}
}
&GT;
此脚本运行良好但返回每一行。
让我们说我的数据库包含农民的名字和他们的农产品类型。第一列是&#34; id,第二列是&#34; farmer_name&#34;,第三列是#34;产生&#34;。产品是这样输入的:豆类,玉米,生菜,草莓,西红柿。
我想要做的是更改上面的脚本,使其只返回包含种植玉米的农民姓名的行,以及他们种植的所有类型的农产品。因此,只要农民种植玉米,我就不会想要这个名字,而是所有产品的清单。
这是否可能基于数据库的结构方式?我用针/干草堆做了几次尝试,但空手而归。我对php知之甚少。
答案 0 :(得分:0)
就像使用WHERE
一样简单$query = "SELECT * FROM farmer WHERE produce = 'corn'";
请注意mysql_
功能已被删除
答案 1 :(得分:0)
SELECT `farmer_name`, `produce` FROM `farmer` WHERE `produce` LIKE '%corn%'
这将返回在产品领域中任何地方找到玉米的行。