Kịch bản đó có vấn đề nghiêm trọng, phá vỡ thỏa thuận. Nó sẽ không hoạt động đối với bất kỳ cơ sở dữ liệu tầm thường nào.
- NULL không được hỗ trợ.
- Các bộ ký tự không được tính đến.
- Tên bảng không được phân tách.
- Chỉ hỗ trợ các bảng - không hỗ trợ các khung nhìn, các thủ tục được lưu trữ, các trình kích hoạt, các hàm, v.v.
-
addlashes () không được đặt ký tự an toàn
. -
mysql_query ()
tìm nạp trước tất cả các hàng từ bảng, vì vậy nếu bạn truy vấn một bảng có hàng triệu hàng, bạn sẽ vượt quá giới hạn bộ nhớ PHP của mình. Sử dụngmysql_unbuffered_query ()
thay thế. Suy nghĩ kỹ lại, tôi thấy bạn thu thập tất cả đầu ra để đổi lại $ nên đây là cuộc tranh luận. - Việc bạn khắc phục lỗi với
@
nhà điều hành là thực hành không tốt. Kiểm tra lỗi và không thành công với một thông báo đầy đủ thông tin.
Yêu cầu của bạn không sử dụng mysqldump là vô lý.
Tại sao bạn phải mất quá nhiều công sức để phát minh lại bánh xe mà vẫn làm sai như vậy? Chỉ cần chạy mysqldump qua shellexec ()
.
Xem thêm: