Tôi có tệp cần nhập vào cơ sở dữ liệu. (Cơ sở dữ liệu của tôi là tốt, tôi có thể kết nối và tôi có thể thêm). Bây giờ vấn đề của tôi là vì lý do nào đó không có gì được chèn vào.Lỗi khi đọc tệp văn bản trong php
Tôi có tệp schooldatabase.txt người dùng/mật khẩu tôi cần thêm vào cơ sở dữ liệu. Tệp có 200 dòng.
Dưới đây là một ví dụ:
test|098f6bcd4621d373cade4e832627b4f6
test2|ad0234829205b9033196ba818f7a872b
Bây giờ cho mỗi người trong các dòng (tên người dùng và mật khẩu sinh viên) tôi phải chèn chúng trong một cơ sở dữ liệu.
Dưới đây là mã của tôi:
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'));
Tại sao nó trở về "chấp nhận" nếu người dùng mà không phải là trong file?
biết chính xác là bạn cố gắng sử dụng các file 'schooldatabase.txt' cho? Ngoài ra, tôi nghi ngờ bạn chỉ muốn đọc 5 byte tại một thời điểm (xem ['fread()'] (http://php.net/manual/en/function.fread.php)) – Phil
stristr sẽ không bao giờ trả về TRUE. Infact, stristr trả về chuỗi con phù hợp hoặc FALSE nếu không tìm thấy kim. –
Tệp schooldatabase.txt lớn như thế nào? –