09/10/2018, 23:54

loi session khi up lên host

Tôi dùng biến session để làm bộ đếm.
ở localhost thì chạy ok. Nhưng khi up lên host thì lại bị lỗi này!
---
Warning: Unknown: Your script possibly relies on a session side-effect which existed until PHP 4.2.3. Please be advised that the session extension does not consider global variables as a source of data, unless register_globals is enabled. You can disable this functionality and this warning by setting session.bug_compat_42 or session.bug_compat_warn to off, respectively. in Unknown on line 0
---
nhưng nếu load lại trang web lần thứ 2 thì kô bị lỗi này nữa.
xin anh em chỉ cách khắc phục.
vnmarser viết 02:08 ngày 10/10/2018
bác post cái code ấy lên đây tớ nghía thử cái nào
anduongvn viết 02:07 ngày 10/10/2018
đây là code của tôi, cái này tôi để ở đầu mỗi trang. hình như phần bị lỗi là ở phần session_register("nguoidung"), nếu bỏ đoạn này đi thì ko bị lỗi nữa. Cái này tôi up lên host linux của Mắt Bão. Mà hỏi Mắt Bão đợi 1 ngày chưa có câu trả lời, khi trả lời rồi thì tôi cũng chịu thua luôn.
<?php
session_start();
$CountFile = "counter.log";
$Visitor = 0;
if (session_is_registered("nguoidung"))
{ // nguoi cu
$CF = fopen ($CountFile, "r");
$Visitor = fread ($CF, filesize ($CountFile) );
fclose ($CF);
}
else
{ // nguoi moi
$nguoidung = session_id();
session_register("nguoidung");
$CF = fopen ($CountFile, "r");
$Visitor = fread ($CF, filesize ($CountFile) );
fclose ($CF);
$Visitor++;
$CF = fopen ($CountFile, "w");
fwrite ($CF, $Visitor);
fclose ($CF);
}
?>
anduongvn viết 02:09 ngày 10/10/2018
cái này do thằng Mắt Bão nó để register_global là OFF. mình đã bảo nó sửa lại thành ON rồi mà nữa ngày nó vẫn chưa làm. tức thiệc
anduongvn viết 02:05 ngày 10/10/2018
sửa file .htaccess trong thư mục muốn gán giá trị register_global là on như sau:
php_flag register_globals on
vanhung123 viết 02:07 ngày 10/10/2018
Quote Được gửi bởi anduongvn View Post
sửa file .htaccess trong thư mục muốn gán giá trị register_global là on như sau:
php_flag register_globals on
Nếu đặt như bạn nói trình duyệt sẽ báo lỗi không tìm thấy file.

Tạo file php.ini với nội dung là: Register_global = on .Đặt tại thư mục web của mình.Như một số bạn chỉ cho mình thì cũng không có tác dụng gì.

Các bạn có cách nào khác không.
anduongvn viết 02:07 ngày 10/10/2018
theo tôi tìm hiểu thì dùng file .htaccess là rất tối ưu trên nền linux và hệ thống Apache. nếu dùng trên Windows thì chạy có phần lỗi linh tinh.
bạn đang dùng hệ thống như thế nào.
bạn có thể tham khảo file .htaccess của tôi dưới đây.
đây chỉ file căn bản thôi, chứ tìm hiểu về file .htaccess rất là nhiều vấn đề hữu ích, nhất là về bảo mật.
vanhung123 viết 02:10 ngày 10/10/2018
Chào bạn Anduongvn
Bạn đặt dòng php_flag register_globals on trong file .htaccess thì được,tại sao mình đặt dòng này vào file .htaccess thì lập tức Server báo lỗi Internal Server Error.Xóa dòng này thì không báo lỗi này nửa
Host mình thuê OS Linux, Apache version 2.2.6, PHP version 5.2.5
Vậy có nghĩa là phải đặt trước nó dòng nào nửa không,file .htaccess mình đặt trong thư mục public_html.
anduongvn viết 02:04 ngày 10/10/2018
ái chà, mình cũng chẳng siêu gì vấn đề này cả.
có lẽ mình may mắn, host của mình bỏ vào là nó chạy thôi. Mình để dòng cuối cùng thôi.
php_flag register_globals on
Server mình giống như bạn vậy. bạn thuê host ở đâu vậy. có thể liên hệ để nó support giúp. Hy vọng không phải là host MB vì nó trả lời chậm kinh khủng.
chúc thành công.
Bài liên quan
0