Allora ragazzi,
il problema è questo. Ho un file, l'estensione non ha importanza, che contiene 100 password. Mi servono per delle transazione con la banca sella. Ora, per ogni acquisto deve essere inviata una sola password. E poi cancellata dal file. Quindi, devo aprire il file, leggerlo, prendere la prima password, poi cancellarla e così la seconda diventa la prima.
Lo script è questo:
Codice PHP:
$merchant = 'merchant';
$fp =fopen ("$merchant.ric", "r") or die ("File delle OTP non trovato");
flock($fp, 2);
$otpric= fread($fp, 32);
flock($fp, 3);
fclose($fp);
$fp1 =fopen ("$merchant.ric", "r") or die ("File delle OTP non trovato");
flock($fp1, 2);
$otptotal= fread($fp1, 16000);
$rest = substr ($otptotal, 34);
unlink("$merchant.ric");
flock($fp1, 3);
$fp2 =fopen ("$merchant.ric", "w") or die ("File delle OTP non trovato");
flock($fp2, 2);
fwrite ($fp2, $rest);
flock($fp2, 3);
fclose($fp1);
fclose($fp2);
Vi chiedo una cosa, è corretto? L'ho trovato in rete. Ho cercato di capirne il funzionamento. Ma mi lascia perplesso ad esempio la funzione "substr" settata a 34. Perchè? E perchè decide di leggere solo 32 byte del file "merchant.ric"?
Poi vedo che le password totali sono settate a 16000. Se io ne ho 10 nel file, può causare problemi al funzionamento del file?
Senza contare che poi la funzione "unlink" mi da questo warning:
unlink(merchant.ric): Permission denied in c:\programmi\easyphp1-8\www\........................pagamento.php on line 39
Che mi dite?