我有一个 php 代码,它目前从 txt 文件创建一个 html 文件,并在我的网站上每两个小时更新一次。我想将其转换为数据表。有没有一种简单的方法可以使用 jquery、数据表和 php 链接到 txt 文件?
这就是我正在做的:http: //live.datatables.net/eduvin/edit#javascript,html,live
我使用的文件是一个 txt 文件,它使用 php 转换为 HTML。PHP 每两个小时在服务器上更新一次。我想用 jquery 数据表替换所有这些,并每两个小时更新一次。我使用的更新程序是Windows server 2003中的windows task scheduler。这可能吗?如果是这样,最好的方法是什么。
这是我的 PHP 代码:
<?php
set_time_limit(0);
function csv_split($line,$delim=',',$removeQuotes=true) {
#$line: the csv line to be split
#$delim: the delimiter to split by
#$removeQuotes: if this is false, the quotation marks won't be removed from the fields
$fields = array();
$fldCount = 0;
$inQuotes = false;
for ($i = 0; $i < strlen($line); $i++) {
if (!isset($fields[$fldCount])) $fields[$fldCount] = "";
$tmp = substr($line,$i,strlen($delim));
if ($tmp === $delim && !$inQuotes) {
$fldCount++;
$i += strlen($delim)-1;
} else if ($fields[$fldCount] == "" && $line[$i] == '"' && !$inQuotes) {
if (!$removeQuotes) $fields[$fldCount] .= $line[$i];
$inQuotes = true;
} else if ($line[$i] == '"') {
if ($line[$i+1] == '"') {
$i++;
$fields[$fldCount] .= $line[$i];
} else {
if (!$removeQuotes) $fields[$fldCount] .= $line[$i];
$inQuotes = false;
}
} else {
$fields[$fldCount] .= $line[$i];
}
}
return $fields;
}
$html_body = 'HTML goes here'
$fp=fopen("csv/inventory4.html",'w');
$write=fputs($fp,$html_body,strlen($html_body));
$i=0;
$content = file("webinvt.txt");
foreach($content as $line)
{
$l=csv_split($line);
if(!strstr($l[11],"SET"))
{
if($i==10)
{
$tmp = '</table>
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0"> <tbody><tr>
';
$write=fputs($fp,$tmp,strlen($tmp));
$i=0;
}
$onhand = (int)$l[15];
$committed = (int)$l[16];
$avail = $onhand - $committed;
$wcdate = substr($l[23],4);
$eastdate = substr($l[19],4);
if(strstr($l[1],"DISC"))
{
$html_body ='<tr style="color:#FF0000 ">
<td width="12%" >'.$l[0].'</td>
<td width="30%" >'.$l[1].'</td>
<td width="8%" >'.$l[12].'</td>
<td width="8%" >'.$avail.'</td>
<td width="8%" >'.$l[17].'</td>
<td width="8%" >'.$l[18].'</td>
<td width="8%" >'.$eastdate.'</td>
<td width="8%" >'.$l[21].'</td>
<td width="8%" >'.$l[22].'</td>
<td width="8%" >'.$wcdate.'</td>
</tr>';
}
else
{
$html_body ='<tr>
<td width="12%" >'.$l[0].'</td>
<td width="30%" >'.$l[1].'</td>
<td width="8%" >'.$l[12].'</td>
<td width="8%" >'.$avail.'</td>
<td width="8%" >'.$l[17].'</td>
<td width="8%" >'.$l[18].'</td>
<td width="8%" >'.$eastdate.'</td>
<td width="8%" >'.$l[21].'</td>
<td width="8%" >'.$l[22].'</td>
<td width="8%" >'.$wcdate.'</td>
</tr>
';
}
$write=fputs($fp,$html_body,strlen($html_body));
$i++;
}
}
$html_body='<tr>
<td scope="col"></td>
<td scope="col"></td>
<td scope="col"></td>
<td scope="col"></td>
<td scope="col"></td>
<td scope="col"></td>
<td scope="col"></td>
<td scope="col"></td>
<td scope="col"></td>
<td scope="col"></td>
<td scope="col"></td>
</tr>
</table>
</body>
</html>';
$write=fputs($fp,$html_body,strlen($html_body));
fclose($fp);
?>