首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >要从数据库读取的PHP脚本

问要从数据库读取的PHP脚本
EN

Stack Overflow用户
提问于 2011-05-17 23:31:28
回答 5查看 1.5K关注 0票数 1

我有一个名为teste数据库,其中有一个名为exemplo的表,其中包含两个列(id,nome):我想要一个php脚本来选择nome列中的所有信息,并回显这些信息并将它们放在一个txt文件中。代码中有什么问题?我只能看到第一个值,看不到第二个值。并使用无限循环!

代码语言:javascript
复制
$link = mysql_connect('localhost', 'root', '123');
if (!$link) {
  die('Could not connect: ' . mysql_error());
}

mysql_select_db('teste', $link);

/* Desired */
$file = fopen("myfile.txt","w");

$result = mysql_query("SELECT * FROM exemplo");
$array = mysql_fetch_array($result);
while ($array) {
  echo $array['nome'];

  fputs($file ,$array['nome']); 
}

mysql_close($link);
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-05-17 23:34:41

这是因为mysql_fetch_array一次只返回一个结果,所以$array始终为真。你想要这个:

代码语言:javascript
复制
while ($array = mysql_fetch_array($result)) {
  echo $array['nome'];
  fputs($file ,$array['nome']); 
}
票数 0
EN

Stack Overflow用户

发布于 2011-05-17 23:34:32

代码语言:javascript
复制
    $array = mysql_fetch_array($result);

这只获取一行结果。它不会将整个结果集填充到数组中。您需要做的是:

代码语言:javascript
复制
while($row = mysql_fetch_array($result)) {
   echo $row['nome'];
   fputs($file, $row['nome']);
}
票数 3
EN

Stack Overflow用户

发布于 2011-05-17 23:33:58

您只需分配$array一次,然后在while($array)中循环遍历它,这样它就会一直运行,就像$array不变一样!试着这样修改你的代码:

代码语言:javascript
复制
<?php

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

        mysql_select_db('teste', $link);

        /* Desired */

        $file = fopen("myfile.txt","w");

        $result = mysql_query("SELECT * FROM exemplo");
        while ($array = mysql_fetch_array($result)) {
        echo $array['nome'];

        fputs($file ,$array['nome']); }
        mysql_close($link);
?>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6033274

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档