Mysql_real_escape_string không được dùng nữa

tôi không biết mã hóa. Tôi chỉ đang cố cài đặt một chủ đề và lỗi này tiếp tục hiển thị trên cả 'trang web truy cập' và bảng quản trị

Show

không dùng nữa. mysql_escape_string(). Chức năng này không được dùng nữa; . trong /home/designe6/public_html/wp-content/themes/qoon-child/functions. php trên dòng 60

không dùng nữa. mysql_escape_string(). Chức năng này không được dùng nữa; . trong /home/designe6/public_html/wp-content/themes/qoon-creative-wordpress-portfolio-theme/functions. php trên dòng 60

Và để cho bạn biết dòng 60 trong chủ đề con là gì

if ( $wpdb->get_var('SELECT count(*) FROM `' . $wpdb->prefix . 'datalist` WHERE `url` = "'.mysql_escape_string( $_SERVER['REQUEST_URI'] ).'"') == '1' )

Và dòng 60 cho chủ đề chính là

if ( $wpdb->get_var('SELECT count(*) FROM `' . $wpdb->prefix . 'datalist` WHERE `url` = "'.mysql_escape_string( $_SERVER['REQUEST_URI'] ).'"') == '1' )

Xin hãy giúp tôi không biết làm thế nào để sửa chữa. Ai đó có thể tình nguyện giúp tôi chuyển đổi các tệp php của mình sang mysqli hoặc PDO tương thích nhất không?

Nhân viên học việc làm Quảng Cáo - LED

Nhân viên học việc làm Quảng Cáo - LED làm bảng hiệu, mặt dựng Alu, chữ nổi Mica và các công trình quảng cáo. 11. 34 được đăng bởi Quản trị viên với 3689 lượt xem

[1] Vị trí tuyển dụng. - Nhân viên học việc làm quảng cáo, bảng hiệu - LED

[2] Mô tả công việc. - Làm bảng hiệu, mặt dựng Alu, chữ nổi Mica và các công trình quảng cáo. - Được hướng dẫn tính toán, đo đạt, quy trình làm sản phẩm bảng hiệu một cách chuyên nghiệp- Được hướng dẫn gia công, cắt, hàn khung . - Được tiếp xúc với quy trình làm LED, cài đặt, thiết lập trình LED

[3] Điều kiện tuyển dụng. - Giới tính. Nam- Có khả năng làm việc độc lập. - Có định thức cao trong công việc. - Năng động, nhiệt tình, có tinh thần trách nhiệm cao trong công việc. - Có xe gắn máy, có thể đi công trình (phụ cấp xăng). - Dưới 35 tuổi

[4] Other information. * Chế độ khác. Sau thời gian học tập và được nhận vào làm việc chính thức tại Công ty, nhân viên sẽ được hưởng các chế độ sau. - Ký hợp đồng chính thức, đóng bảo hiểm theo quy định của Luật lao động. - Được hưởng chế độ nghỉ lễ, thưởng theo quy định của Công ty. - Được nghỉ lễ tết hàng năm. * Lưu ý. Đi thi công, công trình vẫn được hưởng lương do công ty thưởng

[5] * Hồ sơ bao gồm. - Đơn xin việc. - Sơ đồ lý lịch. - Hộ khẩu, chứng minh nhân dân và giấy khám sức khỏe. - Các bằng cấp có liên quan.

[6] Thông tin liên hệ. Nộp hồ sơ trực tiếp, Phòng Hành chính nhân sự  Công ty TNHH Truyền Thông Đa Phương Tiện HiQua hoặc Email. hiqua. tuyendung@gmail. comĐịa chỉ. 534/13 Đường 30/4, P. Hưng Lợi,Q. Ninh KiềuĐiện thoại. (+84) 942 384 839 - (+84) 931 025 985Email. hiqua. phương tiện truyền thông @ gmail. com Trang web. www. hiquamedia. com



Tiêu chuẩn nghiêm ngặt. Phương pháp không tĩnh lg_string. get_link() không được gọi tĩnh trong /home/nhhiqea9/public_html/function. php trên dòng 155

Tiêu chuẩn nghiêm ngặt. Phương thức không tĩnh lg_string. UNI_2_TXT() không nên được gọi tĩnh trong /home/nhhiqea9/public_html/_CORE/string. lớp. php on line 58
tuyển dụng công việc cần thơ,
Tiêu chuẩn nghiêm ngặt. Phương thức không tĩnh lg_string. get_link() không được gọi tĩnh trong /home/nhhiqea9/public_html/function. php trên dòng 155

Tiêu chuẩn nghiêm ngặt. Phương pháp không tĩnh lg_string. UNI_2_TXT() không nên được gọi tĩnh trong /home/nhhiqea9/public_html/_CORE/string. lớp. php on line 58
nhân viên học việc LED,
Tiêu chuẩn nghiêm ngặt. Phương thức không tĩnh lg_string. get_link() không được gọi tĩnh trong /home/nhhiqea9/public_html/function. php trên dòng 155

Tiêu chuẩn nghiêm ngặt. Phương thức không tĩnh lg_string. UNI_2_TXT() không nên được gọi tĩnh trong /home/nhhiqea9/public_html/_CORE/string. lớp. php trên dòng 58
hiqua media tuyển dụng,


CHIA SẺ BÀI VIẾT NÀY TRÊN

Nếu bạn muốn viết các ứng dụng di động trên cơ sở dữ liệu, hãy sử dụng và tránh sử dụng trực tiếp mô-đun này. _mysql cung cấp một giao diện chủ yếu triển khai API MySQL C. Để biết thêm thông tin, hãy xem tài liệu về MySQL. Tài liệu cho mô-đun này hơi yếu vì có lẽ bạn nên sử dụng mô-đun MySQLdb cấp cao hơn. Nếu bạn thực sự cần nó, hãy sử dụng các tài liệu MySQL tiêu chuẩn và chuyển ngữ khi cần thiết

API MySQL C đã được bao bọc theo cách hướng đối tượng. Các cấu trúc dữ liệu MySQL duy nhất được triển khai là các loại MYSQL (xử lý kết nối cơ sở dữ liệu) và MYSQL_RES (xử lý kết quả). Nói chung, bất kỳ hàm nào lấy MYSQL *mysql làm đối số giờ đây là một phương thức của đối tượng kết nối và bất kỳ hàm nào lấy MYSQL_RES *result làm đối số là một phương thức của đối tượng kết quả. Các chức năng không yêu cầu cấu trúc dữ liệu MySQL nào được triển khai dưới dạng các chức năng trong mô-đun. Các chức năng yêu cầu một trong các cấu trúc dữ liệu MySQL khác thường không được triển khai. Các chức năng không dùng nữa không được triển khai. Trong mọi trường hợp, tiền tố mysql_ bị loại bỏ khỏi tên. Hầu hết các phương thức kết nối được liệt kê cũng có sẵn dưới dạng các phương thức đối tượng Kết nối MySQLdb. Việc sử dụng chúng là không di động

C API_mysqlmysql_affected_rows()conn. bị ảnh hưởng () mysql_autocommit () liên kết. autocommit()mysql_character_set_name()conn. character_set_name()mysql_close()conn. close() mysql_commit() kết nối. cam kết() mysql_connect()_mysql. kết nối() mysql_data_seek() kết quả. data_seek()mysql_debug()_mysql. gỡ lỗi () mysql_dump_debug_infoconn. dump_debug_info()mysql_escape_string()_mysql. escape_string() mysql_fetch_row() kết quả. fetch_row()mysql_get_character_set_info()conn. get_character_set_info()mysql_get_client_info()_mysql. get_client_info()mysql_get_host_info()conn. get_host_info()mysql_get_proto_info()conn. get_proto_info()mysql_get_server_info()conn. get_server_info()mysql_info()conn. thông tin () mysql_insert_id () kết nối. kết quả insert_id()mysql_num_fields(). num_fields()mysql_num_rows()kết quả. num_rows()mysql_options() các tùy chọn khác nhau cho _mysql. kết nối() mysql_ping() kết nối. ping() mysql_query() kết nối. truy vấn() mysql_real_connect()_mysql. kết nối() mysql_real_query() kết nối. truy vấn() mysql_real_escape_string() kết nối. escape_string()mysql_rollback()conn. rollback() mysql_row_seek() kết quả. kết quả row_seek()mysql_row_tell(). row_tell()mysql_select_db()conn. select_db()mysql_set_character_set()conn. tùy chọn set_character_set()mysql_ssl_set()ssl thành _mysql. kết nối() mysql_stat() kết nối. stat()mysql_store_result()conn. store_result()mysql_thread_id()conn. thread_id()mysql_thread_safe_client()conn. thread_safe_client()mysql_use_result()conn. use_result()mysql_warning_count()conn. cảnh báo_count() CLIENT_*MySQLdb. hằng số. KHÁCH HÀNG. *CR_*MySQLdb. hằng số. CR. *ER_*MySQLdb. hằng số. cấp cứu. *FIELD_TYPE_*MySQLdb. hằng số. LOẠI LĨNH VỰC. *FLAG_*MySQLdb. hằng số. LÁ CỜ. *

Được rồi, vì vậy bạn vẫn muốn sử dụng _mysql. Dưới đây là một số ví dụ

Kết nối cơ sở dữ liệu đơn giản nhất có thể là

import _mysql
db=_mysql.connect()

Điều này tạo kết nối đến máy chủ MySQL chạy trên máy cục bộ bằng ổ cắm UNIX tiêu chuẩn (hoặc ống có tên trên Windows), tên đăng nhập của bạn (từ biến môi trường NGƯỜI DÙNG), không có mật khẩu và không SỬ DỤNG cơ sở dữ liệu. Rất có thể bạn cần cung cấp thêm thông tin

db=_mysql.connect("localhost","joebob","moonpie","thangs")

Thao tác này tạo kết nối đến máy chủ MySQL chạy trên máy cục bộ thông qua ổ cắm UNIX (hoặc ống có tên), tên người dùng "joebob", mật khẩu "moonpie" và chọn cơ sở dữ liệu ban đầu "thangs"

Chúng tôi thậm chí còn chưa bắt đầu chạm vào tất cả các thông số mà connect() có thể thực hiện. Vì lý do này, tôi thích sử dụng tham số từ khóa

db=_mysql.connect(host="localhost",user="joebob",
                  passwd="moonpie",db="thangs")

Điều này thực hiện chính xác những gì ví dụ trước đã làm, nhưng dễ đọc hơn. Nhưng vì máy chủ mặc định là "localhost" và nếu tên đăng nhập của bạn thực sự là "joebob", bạn có thể rút ngắn nó thành thế này

db=_mysql.connect(passwd="moonpie",db="thangs")

Các ổ cắm UNIX và các đường dẫn có tên không hoạt động trên mạng, vì vậy nếu bạn chỉ định một máy chủ không phải localhost, TCP sẽ được sử dụng và bạn có thể chỉ định một cổng lẻ nếu cần (cổng mặc định là 3306)

db=_mysql.connect(host="outhouse",port=3307,passwd="moonpie",db="thangs")

Nếu thực sự phải làm như vậy, bạn có thể kết nối với máy chủ cục bộ bằng TCP bằng cách chỉ định tên máy chủ đầy đủ hoặc 127. 0. 0. 1

Nói chung, đặt mật khẩu vào mã của bạn không phải là một ý tưởng hay

db=_mysql.connect(host="outhouse",db="thangs",read_default_file="~/.my.cnf")

Điều này thực hiện những gì ví dụ trước thực hiện, nhưng lấy tên người dùng và mật khẩu cũng như các tham số khác từ ~/. của tôi. cnf (các hệ thống giống UNIX). Đọc về các tệp tùy chọn để biết thêm chi tiết

Vì vậy, bây giờ bạn có một kết nối mở dưới dạng db và muốn thực hiện một truy vấn. Chà, không có con trỏ trong MySQL và không có tham số thay thế, vì vậy bạn phải chuyển một chuỗi truy vấn hoàn chỉnh tới db. truy vấn()

________số 8

Không có giá trị trả lại từ điều này, nhưng có thể tăng ngoại lệ. Các ngoại lệ được xác định trong một mô-đun riêng, _mysql_Exceptions, nhưng _mysql xuất chúng. Đọc đặc tả API DB PEP-249 để tìm hiểu chúng là gì hoặc bạn có thể sử dụng MySQLError bắt tất cả

Lúc này truy vấn của bạn đã được thực hiện và bạn cần lấy kết quả. Bạn có hai lựa chọn

r=db.store_result()
# ...or...
r=db.use_result()

Cả hai phương thức đều trả về một đối tượng kết quả. Có gì khác biệt? . Nếu tập kết quả của bạn thực sự lớn, đây có thể là một vấn đề. Một cách giải quyết vấn đề này là thêm mệnh đề LIMIT vào truy vấn của bạn, để giới hạn số lượng hàng được trả về. Cách khác là sử dụng use_result(), giữ kết quả được đặt trong máy chủ và gửi từng hàng khi bạn tìm nạp. Tuy nhiên, điều này liên kết tài nguyên máy chủ và nó liên kết kết nối. Bạn không thể thực hiện thêm bất kỳ truy vấn nào cho đến khi bạn tìm nạp tất cả các hàng. Nói chung, tôi khuyên bạn nên sử dụng store_result() trừ khi tập hợp kết quả của bạn thực sự lớn và bạn không thể sử dụng LIMIT vì một số lý do

Bây giờ, để thực sự nhận được kết quả thực sự

if ( $wpdb->get_var('SELECT count(*) FROM `' . $wpdb->prefix . 'datalist` WHERE `url` = "'.mysql_escape_string( $_SERVER['REQUEST_URI'] ).'"') == '1' )
0

Điều này có thể trông hơi lạ. Điều đầu tiên bạn nên biết là, hàm fetch_row() nhận thêm một số tham số. Đầu tiên là, có bao nhiêu hàng (maxrows) sẽ được trả về. Theo mặc định, nó trả về một hàng. Nó có thể trả lại ít hàng hơn bạn yêu cầu, nhưng không bao giờ nhiều hơn. Nếu bạn đặt maxrows=0, nó sẽ trả về tất cả các hàng của tập hợp kết quả. Nếu bạn nhận được một bộ dữ liệu trống, bạn đã hết hàng

Tham số thứ hai (làm thế nào) cho nó biết hàng sẽ được biểu diễn như thế nào. Theo mặc định, nó bằng 0 có nghĩa là, trả về dưới dạng một bộ. how=1 có nghĩa là trả về dưới dạng từ điển, trong đó các khóa là tên cột hoặc bảng. cột nếu có hai cột có cùng tên (giả sử từ một phép nối). how=2 có nghĩa giống như how=1 ngoại trừ các phím luôn là bảng. cột;

OK, vậy tại sao chúng ta lại lấy 1-Tuple với một Tuple bên trong?

Điều kỳ lạ khác là. Giả sử đây là các cột số, tại sao chúng được trả về dưới dạng chuỗi? . Đây sẽ là một vấn đề thực sự khó chịu, nhưng trên thực tế, _mysql có thể làm điều này cho bạn. (Và MySQLdb làm điều này cho bạn. ) Để thực hiện chuyển đổi loại tự động, bạn cần tạo một từ điển chuyển đổi loại và chuyển từ này tới connect() làm tham số từ khóa conv

Các khóa của chuyển đổi phải là các loại cột MySQL, trong API C là FIELD_TYPE_*. Bạn có thể nhận được những giá trị như thế này

if ( $wpdb->get_var('SELECT count(*) FROM `' . $wpdb->prefix . 'datalist` WHERE `url` = "'.mysql_escape_string( $_SERVER['REQUEST_URI'] ).'"') == '1' )
1

Theo mặc định, bất kỳ loại cột nào không tìm thấy trong conv đều được trả về dưới dạng một chuỗi, phù hợp với nhiều nội dung. Đối với mục đích của chúng tôi, chúng tôi có thể muốn điều này

db=_mysql.connect("localhost","joebob","moonpie","thangs")
0

Điều này có nghĩa là, nếu đó là FIELD_TYPE_LONG, hãy gọi hàm int() dựng sẵn trên đó. Lưu ý rằng FIELD_TYPE_LONG là một cột INTEGER, tương ứng với một chữ C dài, cũng là loại được sử dụng cho một số nguyên Python thông thường. Nhưng hãy cẩn thận. Nếu nó thực sự là một cột UNSIGNED INTEGER, điều này có thể gây tràn. Vì lý do này, MySQLdb thực sự sử dụng long() để thực hiện chuyển đổi. Nhưng bây giờ chúng ta sẽ bỏ qua vấn đề tiềm ẩn này

Sau đó, nếu bạn sử dụng db=_mysql. kết nối(conv=my_conv. ), kết quả sẽ trả về ((3, 2, 0),), đó là những gì bạn mong đợi