这段php代码只提取数据库中的第一行。帮忙?
如你所见,共有五行。但由于某些原因,第2、3、4和5行都具有与第1行相同的链接、alt、时间高度、宽度、文件夹和文件。唯一不同的是图片 因为如果这听起来让人困惑,但我不知道如何用其他方式来表达。正如各州所说 一行,你看。作为州 您可以看到一行。您发出了多个请求,这些请求总是会重置指向第一行的指针。但是要在循环中使用。它还查询行,而不是列这段php代码只提取数据库中的第一行。帮忙?,php,mysql,Php,Mysql,如你所见,共有五行。但由于某些原因,第2、3、4和5行都具有与第1行相同的链接、alt、时间高度、宽度、文件夹和文件。唯一不同的是图片 因为如果这听起来让人困惑,但我不知道如何用其他方式来表达。正如各州所说 一行,你看。作为州 您可以看到一行。您发出了多个请求,这些请求总是会重置指向第一行的指针。但是要在循环中使用。它还查询行,而不是列 mysql_fetch_array — Fetch a result row as an associative array, a numeric array,
mysql_fetch_array — Fetch a result row as an associative array, a numeric array, or both
$result=mysql\u查询(“从拇指中选择*);
while($row=mysql\u fetch\u assoc($result)){
打印“$row[link]+$row[pic]+$row[alt]”;
//此处仅使用循环变量,而不使用静态请求数组
//从前
}
您的问题是,您正在为输出代码使用以前的结果数组$link[]、$pic[]、$alt[]、$width[]、$height[]——您应该只在代码中使用$row
(或$pic
)。但是要在循环中使用。它还查询行,而不是列
mysql_fetch_array — Fetch a result row as an associative array, a numeric array, or both
$result=mysql\u查询(“从拇指中选择*);
while($row=mysql\u fetch\u assoc($result)){
打印“$row[link]+$row[pic]+$row[alt]”;
//此处仅使用循环变量,而不使用静态请求数组
//从前
}
您的问题是,您在输出代码中使用了以前的结果数组$link[]、$pic[]、$alt[]、$width[]、$height[]——您应该只在代码中使用$row
(或$pic
)。仔细阅读并仔细观察,直到你理解表格是如何打印出来的。这将帮助您以更简洁和清晰的方式完成发布的脚本
祝您编码愉快,我的朋友。请阅读我为您精心挑选的这篇文章。仔细阅读并仔细观察,直到你理解表格是如何打印出来的。这将帮助您以更简洁和清晰的方式完成发布的脚本
快乐的编码,我的朋友。用MYSQLI测试并获取对象:
$result = mysql_query("SELECT * FROM thumbs");
while ($row = mysql_fetch_assoc($result)) {
print " <td> $row[link] + $row[pic] + $row[alt] ";
// use only the loop variable here, not the static request arrays
// from before
}
使用MYSQLI和fetch_对象进行测试:
$result = mysql_query("SELECT * FROM thumbs");
while ($row = mysql_fetch_assoc($result)) {
print " <td> $row[link] + $row[pic] + $row[alt] ";
// use only the loop variable here, not the static request arrays
// from before
}
为什么所有重复的SELECT语句都没有WHERE子句?你是这么说的吗?每个SELECT返回相同的内容?如果是这样,他们当然会这样做,因为他们都要求同样的东西。我建议把这个问题减少到实际问题上,从那里开始工作,而不必处理所有关于格式的废话。嘿!我不会谈论你代码中的安全漏洞。我只想问你:为什么大约有15个查询才能得到结果集?你这样做有点尴尬。请清楚地解释一下你想要这段代码做什么,我很确定你可以用你现有代码的1/4来做这件事。此外,你应该首先采取更好的(或任何)代码缩进习惯。这几乎不可能遵循其他处理逻辑。Stef,我正在尝试创建类似图像库的东西。除了那些图片是链接外,还有其他链接吗?在读了马里奥的建议后,我意识到我可以把从$link1到$filed的所有东西都删减。我还可以删除什么?而且,我知道这对很多人来说都是一种恐惧。我从不编码。我只是想得到我的网站哈。我对mysql和php所知甚少。@mario+1我也希望代码中的适当缩进不要花一整天的时间阅读它。为什么所有重复的SELECT语句都没有WHERE子句?你是这么说的吗?每个SELECT返回相同的内容?如果是这样,他们当然会这样做,因为他们都要求同样的东西。我建议把这个问题减少到实际问题上,从那里开始工作,而不必处理所有关于格式的废话。嘿!我不会谈论你代码中的安全漏洞。我只想问你:为什么大约有15个查询才能得到结果集?你这样做有点尴尬。请清楚地解释一下你想要这段代码做什么,我很确定你可以用你现有代码的1/4来做这件事。此外,你应该首先采取更好的(或任何)代码缩进习惯。这几乎不可能遵循其他处理逻辑。Stef,我正在尝试创建类似图像库的东西。除了那些图片是链接外,还有其他链接吗?在读了马里奥的建议后,我意识到我可以把从$link1到$filed的所有东西都删减。我还可以删除什么?而且,我知道这对很多人来说都是一种恐惧。我从不编码。我只是想得到我的网站哈。我对mysql和php所知甚少。@mario+1我还希望代码中的适当缩进不要花一整天的时间阅读它。
$host = "localhost";
$user = "user";
$password = "12345";
$database = "database";
try {
$mysqli = new mysqli($host, $user, $password, $database);
if (!$mysqli) {
throw new Exception('Fail to connect to the database!');
}
} catch (Exception $e) {
echo $e->getMessage();
}
$mysqli->set_charset("utf8");
/* check connection */
if (mysqli_connect_errno()) {
printf("No connection: %s\n", mysqli_connect_error());
exit();
}
$sql = "SELECT * FROM table";
$result = $mysqli->query($sql);
if($result->num_rows > 0)
{
while($row = $result->fetch_object())
{
$i++;
echo "line$i $row->field_name";
}
}