Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
这段php代码只提取数据库中的第一行。帮忙?_Php_Mysql - Fatal编程技术网

这段php代码只提取数据库中的第一行。帮忙?

这段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,

如你所见,共有五行。但由于某些原因,第2、3、4和5行都具有与第1行相同的链接、alt、时间高度、宽度、文件夹和文件。唯一不同的是图片

因为如果这听起来让人困惑,但我不知道如何用其他方式来表达。

正如各州所说

一行,你看。

作为州

您可以看到一行。

您发出了多个请求,这些请求总是会重置指向第一行的指针。但是要在循环中使用。它还查询行,而不是列

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";
       }
    }