Php 回显div中的行数
我可能做错了,但我似乎无法纠正。。。 我有一个运行良好的查询,现在如果我在查询中写入Php 回显div中的行数,php,pdo,Php,Pdo,我可能做错了,但我似乎无法纠正。。。 我有一个运行良好的查询,现在如果我在查询中写入 echo $query->rowCount() ); 它给出了屏幕上的行数。 但是我可以把这个回声插入到div中,所以我尝试了这个 function fetch_tweets($uid){ $query = $this->link->query ("SELECT..... WHERE... "); $tweet = array(); while(($row = $query->f
echo $query->rowCount()
);
它给出了屏幕上的行数。
但是我可以把这个回声插入到div中,所以我尝试了这个
function fetch_tweets($uid){
$query = $this->link->query
("SELECT.....
WHERE... ");
$tweet = array();
while(($row = $query->fetch(PDO::FETCH_ASSOC)) !== FALSE) {
$tweet[] = $row;
}
$numrows = $query->rowCount(); /* Count the messages*/
return $tweet;
}
然后在页面上
$tweets = new Tweets();
$numrows = $tweets->fetch_tweets($_GET['uid']);
<div> <?php echo $numrows; ?> </div>
$tweets=新tweets();
$numrows=$tweets->fetch_tweets($_GET['uid']);
但它只回显数组。在您的
获取tweets
函数中,返回包含tweets的数组。现在解决问题的最快方法是:
$tweets = new Tweets();
$rows = $tweets->fetch_tweets($_GET['uid']);
$numrows = count($rows);
<div> <?php echo $numrows; ?> </div>
$tweets=新tweets();
$rows=$tweets->fetch_tweets($_GET['uid']);
$numrows=计数($rows);
在获取tweets
函数中,返回包含tweets的数组。现在解决问题的最快方法是:
$tweets = new Tweets();
$rows = $tweets->fetch_tweets($_GET['uid']);
$numrows = count($rows);
<div> <?php echo $numrows; ?> </div>
$tweets=新tweets();
$rows=$tweets->fetch_tweets($_GET['uid']);
$numrows=计数($rows);
您正在将$numrows
设置为使用fetch\u tweets()
返回的内容。因此,这将是一系列推文。以下是如何显示数组中的元素数:
<?php echo count($numrows) ?>
您正在将
$numrows
设置为使用fetch\u tweets()
返回的内容。因此,这将是一系列推文。以下是如何显示数组中的元素数:
<?php echo count($numrows) ?>
您正在返回一个数组,因此当您打印“$numrows”时,将打印“array”。您应该使用“foreach”并从“$numrows”获取您的值
但是,如果您试图获取行数,那么您返回的变量是错误的,您返回的是“$tweet”,并且必须是“$numrows”。您返回的是一个数组,因此当您打印“$numrows”时,会打印“array”。您应该使用“foreach”并从“$numrows”获取您的值
但是,如果试图获取行数,则返回的变量是错误的,返回的变量是“$tweet”,必须是“$numrows”。如下更改函数:
function fetch_tweets($uid){
$query = $this->link->query ("SELECT * FROM somewhere WHERE stuff");
$tweet = array();
while(($row = $query->fetch(PDO::FETCH_ASSOC)) !== FALSE) {
$tweet[] = $row;
}
$tweet["rowcount"] = $query->rowCount(); /* Count the messages*/
return $tweet;
}
然后在代码中输入:
$tweets = new Tweets();
$tweet = $tweets->fetch_tweets($_GET['uid']);
<div><?=$tweet["rowcount"]?></div>
$tweets=新tweets();
$tweet=$tweets->fetch_tweets($_GET['uid']);
确保在tweet循环中加入IF语句以过滤掉“rowcount”键值。如下更改函数:
function fetch_tweets($uid){
$query = $this->link->query ("SELECT * FROM somewhere WHERE stuff");
$tweet = array();
while(($row = $query->fetch(PDO::FETCH_ASSOC)) !== FALSE) {
$tweet[] = $row;
}
$tweet["rowcount"] = $query->rowCount(); /* Count the messages*/
return $tweet;
}
然后在代码中输入:
$tweets = new Tweets();
$tweet = $tweets->fetch_tweets($_GET['uid']);
<div><?=$tweet["rowcount"]?></div>
$tweets=新tweets();
$tweet=$tweets->fetch_tweets($_GET['uid']);
确保在tweet循环中放入IF语句,以过滤掉“rowcount”键值。好吧,它回显“Array”,因为它就是数组
只需遵循您的代码:
首先生成Tweet对象。然后在该对象上调用fetch_tweets()
方法,该方法将从数据库返回一组内容,并将结果保存在$numrows
中。然后输出变量。但由于它是一个数组,所以您得到的只是“数组”,这就是预期的行为
如果希望从rowCount
返回行数,则需要更改fetch\u tweets()
方法的返回对象并添加它。或者,更简单的是,您可以简单地在返回的数组上使用,因为您似乎不需要更改查询返回的行数
现在我们来看一些更一般的东西:
- 在未事先检查的情况下,切勿使用
、$\u GET
或任何其他可能包含用户可编辑数据的变量进行查询$\u POST
- 使用而不是通过查询的结果集进行迭代
fetch_tweets()
方法,该方法将从数据库返回一组内容,并将结果保存在$numrows
中。然后输出变量。但由于它是一个数组,所以您得到的只是“数组”,这就是预期的行为
如果希望从rowCount
返回行数,则需要更改fetch\u tweets()
方法的返回对象并添加它。或者,更简单的是,您可以简单地在返回的数组上使用,因为您似乎不需要更改查询返回的行数
现在我们来看一些更一般的东西:
- 在未事先检查的情况下,切勿使用
、$\u GET
或任何其他可能包含用户可编辑数据的变量进行查询$\u POST
- 使用而不是通过查询的结果集进行迭代