这是我的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个项目。
答案 0 :(得分:0)
当您执行fgetc
时,文件中的当前位置会前进一步,因此当您编写时,您会在之后写入。在写作之前,你必须向后退一步。
另外,如果值为零,请小心,因为那时你会写两个字符-1
,并在数字后面覆盖换行符。
您遇到的问题是fgetc
函数的参数应该是文件句柄。请参阅fgetc
文档!