作者jansia (Ich Liebe Dich)
看板PHP
标题[问题]用PHP批次处理MySQL data
时间Mon Apr 9 16:25:26 2007
因为我需要一个可以批次处理mysql 资料转换的程式
( 举例: input: IPI000123456 -> (PHP+MySQL) -> output : EX56SE )
( 想要利用程式把txt档中的一两千笔资料一次处理完 )
( 在後端的MySQL 跟PHP程式皆已设定成功,MySQL内的资料库的资料也正常没问题
可以在mysql介面底下正常select )
所以我写了一个php 小程式,但是程式不能work
code如下,请知道的高手们帮我解惑一下 <(_ _)> 感激
<?php
$link = mysql_pconnect("xxx", "xxx", "xxx") or die; //资料库连线
mysql_select_db("xxx") or die; //选择资料
$maxSize = filesize("$_POST[open_file]"); //读取档案大小
$fileHandle = fopen("$_POST[open_file]",'r'); //开档案
while (!feof($fileHandle))
{
$data = fgets($fileHandle, $maxSize);
echo "$data<br>"; //这一行是debug用
$query = "SELECT IPI,EntrezGene FROM ipixrefs where IPI='$data';";
echo "$query<br>"; //这一行是debug用
$result = mysql_query($query) or die;
echo "$result<br>"; //这一行是debug用
$record = mysql_fetch_row($result);
echo $record[0]."<br>"; //这一行是我要的结果
}
fclose($fileHandle);
?>
而我另外写了一个几乎跟上面相同程式存取同样的资料库,
只是html档案里面的form从丢档案进去变成写一笔text,这个程式却可以work
( 也就是上面的code中,我是用html表单把file 输入
而我另外写的档案,html表单只是拿来输入单笔的资料 )
layout 类似下面这样
.
.
.
IPI00328170
SELECT IPI,EntrezGene FROM ipixrefs where IPI='IPI00328170 ';
Resource id #4
IPI00180675
SELECT IPI,EntrezGene FROM ipixrefs where IPI='IPI00180675 ';
Resource id #5
.
.
.
目前知道可能的问题应该在上面code中黄色标起来的那一行
当我将'$data'; 改成实际的data(例如: IPI000328170) ,那麽程式就会跑出正常的结果
但是当我用上面的程式批次处理的时候,mysql_fetch_row 回来的东西都是null
( 不知道是不是变数宣告的问题? )
因为写法上面应该没有错误,但是又不知道逻辑上的错误在哪
所以还请各位指教。
--
With great power
comes great responsibility
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.109.55.225
※ 编辑: jansia 来自: 140.109.55.225 (04/09 16:29)
※ 编辑: jansia 来自: 140.109.55.225 (04/09 16:29)
※ 编辑: jansia 来自: 140.109.55.225 (04/09 16:30)