我正试图弄清楚这个古老的php-sql代码的作用,让它写入文本文件,而不是编辑sql数据库。不过,这个for
循环给了我一些重大问题。它就是什么也不回!我认为这与花括号变量${$currID}
有关。
$ids
变量是从网站上提取的一组仪表,它运行良好,因为我可以echo $ids[$i];
,它返回仪表的编号。
哦,是的,注释掉的部分是我为避免编辑sql数据库而提交的代码的原始部分。我认为把它们包括进来可能很重要。
$file = fopen("test.txt","w");
$intizzler = count($ids);
for($i=0; $i<$intizzler; $i++){
//echo ($i+1) . " / " . $intizzler . ":";
$currID = $ids[$i];
${$currID} = new gage($currID);
//mysql_query("INSERT INTO gage
//(id,lng,lat,title,text,pic,datum,coords,county)VALUES(
echo fwrite($file,${$currID}->getField('id'));
echo fwrite($file,${$currID}->getField('long'));
echo fwrite($file,${$currID}->getField('lat'));
echo fwrite($file,${$currID}->getField('title'));
echo fwrite($file,${$currID}->getField('text'));
echo fwrite($file,${$currID}->getField('pic'));
echo fwrite($file,${$currID}->getField('datum'));
echo fwrite($file,${$currID}->getField('coords'));
echo fwrite($file,${$currID}->getField('county'));
//)") or die(mysql_error());
//echo "Write complete for $currID <br/>";
}
我完全被难住了。如有任何帮助,我们将不胜感激。
正如注释中所述,当使用变量变量时,变量仍然必须解析为有效的变量名。试试这个:
<?php
$file = fopen("test.txt","w");
$intizzler = count($ids);
for($i=0; $i<$intizzler; $i++){
//echo ($i+1) . " / " . $intizzler . ":";
$currID = $ids[$i];
$gage = new gage($currID);
//mysql_query("INSERT INTO gage
//(id,lng,lat,title,text,pic,datum,coords,county)VALUES(
echo fwrite($file,$gage->getField('id'));
echo fwrite($file,$gage->getField('long'));
echo fwrite($file,$gage->getField('lat'));
echo fwrite($file,$gage->getField('title'));
echo fwrite($file,$gage->getField('text'));
echo fwrite($file,$gage->getField('pic'));
echo fwrite($file,$gage->getField('datum'));
echo fwrite($file,$gage->getField('coords'));
echo fwrite($file,$gage->getField('county'));
//)") or die(mysql_error());
//echo "Write complete for $currID <br/>";
}
我忘了包含mysql_query
!现在我可以访问代码了!
$result = mysql_query("select * from mytable");
太简单了!