我正在尝试获取用户输入的行和列号交叉处的单元格值,就像在矩阵中一样,如果用户输入第5行和第4列,那么我的结果应该显示单元格中存在的值[ 5.4]。
我的行号和列号为:
<td>Please enter the temperature:</td>
<td><input type="text" name="temp" /></td>
<td>Please enter the column:</td>
<td><input type="text" name="col" /></td>
<td><input type="submit" name="go" /></td>
我正在将这些值重定向到 find.php 页面,我这样做:
$entry1 = $_POST['temp'];
$entry2 = $_POST['col'];
$result = mysql_query("SELECT * FROM tables WHERE Temperature LIKE '".$entry1."'
AND COLUMN_NAME = '".$entry2."' ");
并将结果显示为
<td ><?php echo (don't know what to write here) ; ?></td>
我知道我犯了很多错误,但不知道如何修复它们。请指示我。
答案 0 :(得分:1)
如果您想在[Temperature ,COLUMN_NAME]
获取值,请将查询更改为
$result = mysql_query("SELECT * FROM tables WHERE Temperature = '".$entry1."'
AND COLUMN_NAME = '".$entry2."' ");
因为LIKE会查找包含$entry1
的所有字符串。
例如,如果$entry = 10
,则会选择值为10, 110, 100,...
执行查询后获取数据
如果返回的行数不超过一个循环,那么就像这样
while ($row = mysql_fetch_array($result))
{
echo $row[$entry2];
}
或者如果它只返回一个值,或者当它返回多个值时只需要第一个值,请尝试使用
$row = mysql_fetch_array($result);
echo $row[$entry2];
还尝试避免使用mysql_*
函数并开始使用mysqli_*
函数或PDO