我正确使用fgetc吗?

时间:2013-09-11 09:41:19

标签: php javascript html

这是我的PHP:

  $file = fopen("1stock.js", "c+");
  $number = fseek($file, 20, SEEK_CUR);
  $fh = fgetc($number);
  fwrite($file, $fh -1);

我的第20个字符是我想在php文件加载时number - 1执行的数字。为什么这不起作用?

我也希望在.js文件上的多个其他位置执行此操作,看起来有点像这样:

var item1_stockS = 5  //20th character including space.
var item1_stockM = 8
var item1_stockL = 3

我有一个HTML表单,如下所示:

<form action="stock.php" method="post">

Item1 S:<input value="remove" name="remove1S" type="submit" /> <br/> <script type="text/javascript">document.write(item1_stockS);</script><br/>

Item1 M:<input value="remove" name="remove1M" type="submit" /> <br/> <script type="text/javascript">document.write(item1_stockM);</script> <br/>

Item1 L:<input value="remove" name="remove1L" type="submit" /><br/> <script type="text/javascript">document.write(item1_stockL);</script> <br/>

因此,当您点击其中一个按钮时,它会从相应的库存号中删除1个项目。

1 个答案:

答案 0 :(得分:0)

当您执行fgetc时,文件中的当前位置会前进一步,因此当您编写时,您会在之后写入。在写作之前,你必须向后退一步。

另外,如果值为零,请小心,因为那时你会写两个字符-1,并在数字后面覆盖换行符。

您遇到的问题是fgetc函数的参数应该是文件句柄。请参阅fgetc文档!