从数据库读取的PHP脚本
我有一个名为teste的数据库,其中有一个名为exemplo的表,有两列(id,nome): 想要一个php脚本来选择nome列中的所有信息,并回显这些信息并将它们放在txt文件中。代码中有什么错误? 我只能看到第一个值,不能看到第二个值。。还有一个无限循环从数据库读取的PHP脚本,php,database,Php,Database,我有一个名为teste的数据库,其中有一个名为exemplo的表,有两列(id,nome): 想要一个php脚本来选择nome列中的所有信息,并回显这些信息并将它们放在txt文件中。代码中有什么错误? 我只能看到第一个值,不能看到第二个值。。还有一个无限循环 $link = mysql_connect('localhost', 'root', '123'); if (!$link) { die('Could not connect: ' . mysql_error()); } mysql_
$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);
在($array)期间,您将
$array
分配一次,然后在中对其进行循环,因此这将保持运行,因为$array
保持不变!
尝试这样更改代码:
<?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);
?>
这只获取一行结果。它不会将整个结果集填充到数组中。您需要执行以下操作:
while($row = mysql_fetch_array($result)) {
echo $row['nome'];
fputs($file, $row['nome']);
}
这是因为mysql\u fetch\u array
一次只返回一个结果,所以$array
总是正确的。你想要这个:
while ($array = mysql_fetch_array($result)) {
echo $array['nome'];
fputs($file ,$array['nome']);
}
返回一行。您需要在循环中调用它:
while ($array = mysql_fetch_array($result)) {
echo $array['nome'], "\n";
// do more stuff
}
这应该行得通。您将fputs
从数据循环中退出
<?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'] ."\n");
}
mysql_close($link);
删除从while
循环条件中选择code>while($array=mysql\u fetch\u array($result);)
若要添加新行但看不到行中的行1line2?若要添加新行但看不到行中的行1line2?为此,您需要自己添加行分隔符
<?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'] ."\n");
}
mysql_close($link);