Php 在select查询中使用整数变量

Php 在select查询中使用整数变量,php,mysql,Php,Mysql,可能重复: 我已经搜索并阅读了每一个我能找到的网站,包括这一个,来寻找答案。我见过很多人有类似的情况,但我不能让它在我的生活中发挥作用。我已经试了好几个小时了 我有一个使用POST的简单表单,它从表中获取所有主键自动递增int,在下拉选择器中显示它们,然后将用户发送到下一页,以便他们可以修改所选正确条目的值。不起作用的是,当我尝试重用传递到下一页的相同值时,我可以获取他们选择的“id”的字段,并将其显示给他们进行编辑。所讨论的“int”是主键,由自动增量创建。它以“tickid”的名称发布到此

可能重复:

我已经搜索并阅读了每一个我能找到的网站,包括这一个,来寻找答案。我见过很多人有类似的情况,但我不能让它在我的生活中发挥作用。我已经试了好几个小时了

我有一个使用POST的简单表单,它从表中获取所有主键自动递增int,在下拉选择器中显示它们,然后将用户发送到下一页,以便他们可以修改所选正确条目的值。不起作用的是,当我尝试重用传递到下一页的相同值时,我可以获取他们选择的“id”的字段,并将其显示给他们进行编辑。所讨论的“int”是主键,由自动增量创建。它以“tickid”的名称发布到此页面

$tickettoedit = intval($_POST['tickid']);
$tick = floor($tickettoedit);
$ticketinfo = mysql_query("select * from call_log where id = $tick");
$result = mysql_query($ticketinfo) or die('<br>Could not connect: ' . mysql_error());

如何使该int在查询中可用?我想我只需要通过intval传递它,但它似乎一点帮助都没有。

你不应该在mysql\u查询中使用mysql\u结果。

你不应该在mysql\u查询中使用mysql\u结果。

首先,你要使用mysql查询两次,首先发送一个查询

$ticketinfo = mysql_query("select * from call_log where id = $tick");
然后尝试发送查询,但使用结果集资源作为参数

$result = mysql_query($ticketinfo) or die('<br>Could not connect: ' . mysql_error());
例如,假设call_log表具有以下列: *添加日期 *文本

比你能做的还要多

while($row = mysql_fetch_assoc($ticketinfo)){
echo $row['date_added']." - ".$row['txt']."<br>";
}

mysql_fetch_assoc将为每次调用返回结果集中的下一行。如果它返回了所有的行,它将返回false,因此循环将停止。

首先,您将使用mysql查询两次,首先发送一个查询

$ticketinfo = mysql_query("select * from call_log where id = $tick");
然后尝试发送查询,但使用结果集资源作为参数

$result = mysql_query($ticketinfo) or die('<br>Could not connect: ' . mysql_error());
例如,假设call_log表具有以下列: *添加日期 *文本

比你能做的还要多

while($row = mysql_fetch_assoc($ticketinfo)){
echo $row['date_added']." - ".$row['txt']."<br>";
}
mysql_fetch_assoc将为每次调用返回结果集中的下一行。如果它返回了所有行,它将返回false,因此循环将停止。

您将调用mysql\u查询函数两次。您将查询结果存储在$ticketinfo中,因此$ticketinfo现在是一个资源。但是,下一行您将再次尝试调用mysql\u查询

固定代码:

$tickettoedit = intval($_POST['tickid']);
$tick = floor($tickettoedit);
$ticketinfo = "select * from call_log where id = $tick";
$result = mysql_query($ticketinfo) or die('<br>Could not connect: ' . mysql_error());
您将调用mysql_查询函数两次。您将查询结果存储在$ticketinfo中,因此$ticketinfo现在是一个资源。但是,下一行您将再次尝试调用mysql\u查询

固定代码:

$tickettoedit = intval($_POST['tickid']);
$tick = floor($tickettoedit);
$ticketinfo = "select * from call_log where id = $tick";
$result = mysql_query($ticketinfo) or die('<br>Could not connect: ' . mysql_error());

您正在获取mysql\u查询的结果并将其传递给mysql\u查询,正如错误所述:

$ticketinfo = mysql_query("select * from call_log where id = $tick");
$result = mysql_query($ticketinfo) or die('<br>Could not connect: ' . mysql_error());
我想你想要这个:

$ticketinfo = "select * from call_log where id = $tick";
$result = mysql_query($ticketinfo) or die('<br>Could not connect: ' . mysql_error());

您正在获取mysql\u查询的结果并将其传递给mysql\u查询,正如错误所述:

$ticketinfo = mysql_query("select * from call_log where id = $tick");
$result = mysql_query($ticketinfo) or die('<br>Could not connect: ' . mysql_error());
我想你想要这个:

$ticketinfo = "select * from call_log where id = $tick";
$result = mysql_query($ticketinfo) or die('<br>Could not connect: ' . mysql_error());
该行:

$result = mysql_query($ticketinfo) or die('<br>Could not connect: ' . mysql_error());
应该读到:

$result = mysql_fetch_array($ticketinfo) or die('<br>Could not connect: ' . mysql_error()); // or mysql_fetch_assoc()
错误在于,您再次调用了mysql\u查询,并使用上一次查询返回的结果,而不是使用mysql\u fetch\u数组或mysql\u fetch\u assoc提取结果。

行:

$result = mysql_query($ticketinfo) or die('<br>Could not connect: ' . mysql_error());
应该读到:

$result = mysql_fetch_array($ticketinfo) or die('<br>Could not connect: ' . mysql_error()); // or mysql_fetch_assoc()
错误在于,您再次调用了mysql\u查询,并使用上一次查询返回的结果,而不是使用mysql\u fetch\u数组或mysql\u fetch\u assoc提取结果。

您调用了mysql\u查询两次。下面是更正:

$tickettoedit = intval($_POST['tickid']);
$tick = floor($tickettoedit);
$ticketinfo = "select * from call_log where id = $tick";
$result = mysql_query($ticketinfo) or die('<br>Could not connect: ' . mysql_error());
您调用mysql\u查询两次。下面是更正:

$tickettoedit = intval($_POST['tickid']);
$tick = floor($tickettoedit);
$ticketinfo = "select * from call_log where id = $tick";
$result = mysql_query($ticketinfo) or die('<br>Could not connect: ' . mysql_error());

在最后一行,您需要看一些东西,如果您想要oop格式的resultset,您需要mysql\u fetch\u数组或mysql\u fetch\u对象

$result = mysql_fetch_array($ticketinfo) 
    or die('<br>Could not connect: ' .  mysql_error());

在最后一行,您需要看一些东西,如果您想要oop格式的resultset,您需要mysql\u fetch\u数组或mysql\u fetch\u对象

$result = mysql_fetch_array($ticketinfo) 
    or die('<br>Could not connect: ' .  mysql_error());

你为什么把它铺成地板?ID在逗号后没有小数?我想,intval也没必要。你为什么要把它放在地板上?ID在逗号后没有小数?我认为intval也没有必要。谢谢所有回应的人。我一次又一次地改变它,甚至没有意识到我已经完全忘记了它。你所有的帖子都非常有用。再次感谢你们所有的回应。我一次又一次地改变它,甚至没有意识到我已经完全忘记了它。你所有的帖子都非常有用。再次感谢