【问题标题】:Counting my array result [closed]计算我的数组结果[关闭]
【发布时间】:2013-07-11 05:52:13
【问题描述】:

我正在制作一个搜索框,我想计算结果,我尝试输入但没有任何反应。

$con = mysql_connect("localhost","root","");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}

mysql_select_db("concatenate", $con);
if($_POST['lname'] != '' or $_POST['fname'] != ''){
$searchq = $_POST['lname'];
$searchw = $_POST['fname'];
$result = mysql_query("SELECT * FROM sheet1
WHERE lname like '%$searchq%' AND fname like '%$searchw%' ");

我希望计算我的结果,但我不能。

while($row = mysql_fetch_array($result))
{

echo                      "<tr>" .
                          "<td><b>" . $row['lname'] . "</b></td>" .
                          "<td>" . $row['fname'] . "</td>" .
                          "<td>" . $row['address'] . "</td>" .
                          "<td>" . $row['telnum'] . "</td>" .
                          "<td>" . $row['network'] . "</td>" .
                          "<td>" .
                          "<select class = \"report\">" . 
                          "<option value = \"Wrong Number\" >" . 'Wrong Number' . "</option>" .
                          "<option value = \"Discontinue\">" . 'Discontinue' . "</option>" .
                          "<option value = \"Add Number\">" . 'Add Number' . "</option>" .
                          "<option value = \"Change Address\">" . 'Change Address' . "</option>" .
                          "</select>" . 
                          "<input type = \"submit\" value= \"Report\" class= \"classname \" name= \"report\">" . 
                          "</tr>";

 }
 }

请帮帮我

【问题讨论】:

  • 你有没有尝试过?我在这里没有看到任何关于计数的信息。只需添加一个 $count = 0 变量,并在您的 while 循环内每次递增它!
  • mysql_num_rows() 函数来获取计数。不要错过在 php 中查看 mysqli 扩展
  • var_dump($result); 的结果是什么

标签: php mysql


【解决方案1】:

计数很简单,只需使用mysql_num_rows。此方法适用于任何select 查询。对于使用updateinsert 的查询,请使用mysql_affected_rows

$count = mysql_num_rows($result);

另请注意,mysql 扩展名已弃用。我建议迁移到mysqlipdo

【讨论】:

  • 啊,现在我知道了。先生,谢谢您为我解决这个问题。
【解决方案2】:

在您的查询执行后确保返回结果。它不应该是 0。 您可以通过在 mysql_query 之后打印此行来检查它。

echo mysql_num_rows($result)

希望你得到你的错误。

【讨论】:

  • 哇!非常感谢,我修正了我的错误。
  • 欢迎您,每当您从其他人的回答中获得帮助时,都可以投票...... :)
【解决方案3】:

只需使用mysql_num_rows 进行选择查询

如果您使用更新或插入查询,请使用mysql_affected_rows

$count = mysql_num_rows($result)

$count = mysql_affected_rows($query);

【讨论】:

  • 谢谢先生。这对我帮助很大。
【解决方案4】:

你可以使用mysql_num_rows()来统计你的搜索行数

$result = mysql_query("SELECT * FROM sheet1
WHERE lname like '%$searchq%' AND fname like '%$searchw%' ");

$num_rows = mysql_num_rows ($result);

附带说明,请记住始终检查并mysql_real_escape_string() 您的用户输入($_POST 中的值)。

【讨论】:

  • 好的,先生,我将编辑我的代码。顺便谢谢你
【解决方案5】:

$count = mysqli_num_rows($result);

mysql_num_rows($result) 不能在更新的 mysql 版本中工作

【讨论】:

  • 哦,我明白了。我很期待。还是谢谢
猜你喜欢
  • 2020-09-23
  • 1970-01-01
  • 1970-01-01
  • 2021-02-07
  • 2019-05-22
  • 2023-03-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多