Mam plik, który muszę zaimportować do bazy danych. (Moja baza danych jest dobra, mogę się połączyć i mogę dodać). Teraz mój problem polega na tym, że z jakiegoś powodu nic nie zostaje wstawione.Błąd odczytu pliku tekstowego w php
Mam plik schooldatabase.txt użytkowników/hasło, które muszę dodać do bazy danych. Plik ma 200 linii.
Oto próbka:
test|098f6bcd4621d373cade4e832627b4f6
test2|ad0234829205b9033196ba818f7a872b
Teraz dla każdej z tych linii (nazwę użytkownika i hasło) uczeń mam wstawić je w bazie danych.
Oto mój kod:
function addUser($user,$pass) {
// this code is good
}
function processUser($user,$pass) {
$pass=md5($pass);
$myFile = "schooldatabase.txt";
$fh = fopen($myFile, 'r');
$theData = fread($fh, 5);
$login = "$user|$pass";
if(stristr($theData,$login) !== false){
$result = "rejected";
}
elseif(stristr($theData,$login) !== true){
addUser($user,$pass); // this work I manuall tested
$result = "accepted";
}
fclose($fh);
return $result;
}
var_dump(processUser('invaliduser','test2'));
Dlaczego to return „akceptowane” jeśli użytkownik nie znajduje się w pliku?
Co dokładnie pan próbuje użyć 'plik schooldatabase.txt' za? Ponadto, wątpię, że chcesz tylko czytać 5 bajtów na raz (zobacz ['fread()'] (http://php.net/manual/en/function.fread.php)) – Phil
stristr nigdy nie zwróci PRAWDA. Infact, stristr zwraca dopasowany podciąg lub FALSE, jeśli igła nie zostanie znaleziona. –
Jak duży jest plik schooldatabase.txt? –