PHP nhận được bên tronghtml

Tôi muốn có thể lấy dữ liệu từ MySQL DB và đặt nó vào các phần tử div khác nhau. Tôi muốn làm điều này sau khi trang đã được hiển thị. Tôi biết tôi có thể làm điều này bằng cách sử dụng JavaScript với InternalHTML, nhưng tôi không biết nên sử dụng chức năng nào trong PHP. Vui lòng chỉ cho tôi đúng hướng hoặc chỉ cho tôi mã

Cảm ơn bạn

php

0 0

Chia sẻ

  • 3 Cộng tác viên
  • 4 Trả lời
  • 13K Lượt xem
  • 19 giờ Khoảng thời gian thảo luận
  • Bài đăng mới nhất 11 năm trước Bài đăng mới nhất bởi vitaquous

Câu trả lời được đề xuất

Đã trả lời bởi floatingDivs 21 trong một bài đăng từ 11 năm trước

Trong JavaScript, một cái gì đó như thế này sẽ chèn "Xin chào thế giới" vào một phần tử

var element = document.getElementById('content');
element.innertHTML = "Hello World";

(Đại loại thế. Tôi không giỏi về JS)

Trong PHP, nó đơn giản hơn nhiều

Chuyển đến bài đăng

Mỗi 4 câu trả lời

PHP nhận được bên tronghtml

floatingDivs 21 Áp phích trẻ

11 năm trước

Trong JavaScript, một cái gì đó như thế này sẽ chèn "Xin chào thế giới" vào một phần tử

var element = document.getElementById('content');
element.innertHTML = "Hello World";

(Đại loại thế. Tôi không giỏi về JS)

Trong PHP, nó đơn giản hơn nhiều

0 0

Chia sẻ

Đã chỉnh sửa 11 năm trước bởi floatingDivs vì. không có

PHP nhận được bên tronghtml

sức sống 0 Áp phích dành cho người mới

11 năm trước

bây giờ tôi cảm thấy ngu ngốc. Cảm ơn bạn đã giúp đỡ

Tôi sẽ có năm phần tử div, tôi sẽ sử dụng InternalHTML và đặt chúng vào đúng div. Tôi nghĩ rằng tôi có thể sử dụng PHP nhưng sau đó nhìn vào câu trả lời của bạn, tôi nhận ra lỗi của mình vì PHP nằm trong máy chủ chứ không phải trên máy khách

Tôi muốn lấy tập dữ liệu từ MySQL DB, sau đó hiển thị từng bản ghi trên 5 phần tử div của trang. Tôi sẽ sử dụng cái gì để giữ tập dữ liệu từ DB để tôi có thể truy cập nó bằng JavaScript

Xin lỗi tôi đã ra khỏi đây được 6 năm và đang cố gắng hết sức

0 0

Chia sẻ

PHP nhận được bên tronghtml

nquinlan 0 Áp phích dành cho người mới

11 năm trước

Tôi khuyên bạn nên sử dụng truy vấn AJAX cho tệp php có thể cung cấp dữ liệu cho bạn. Một ví dụ tương tự được cung cấp bởi W3Schools

Lớp domdocument của Php là một lớp rất tiện dụng có thể được sử dụng cho một số tác vụ như phân tích cú pháp xml, html và tạo xml. Nó được ghi lại ở đây

Trong hướng dẫn này, chúng ta sẽ xem cách sử dụng lớp này để phân tích nội dung html. Nhu cầu phân tích cú pháp html xảy ra khi bạn viết ví dụ về trình dọn dẹp hoặc các tập lệnh trích xuất dữ liệu tương tự

html mẫu

Sau đây là tệp html mẫu mà chúng tôi sẽ sử dụng với DomDocument


	
		
This is the mango div. It has some text and a form too.
HappySky
HappySky
HappySky
HappySky
HappySky
HappySky

1. Đang tải html

Vì vậy, điều đầu tiên cần làm là xây dựng một đối tượng domdocument và tải nội dung html trong đó. Hãy xem làm thế nào để làm điều đó

// a new dom object
$dom = new domDocument; 

// load the html into the object
$dom->loadHTML($html); 

// discard white space
$dom->preserveWhiteSpace = false;

Xong. Đối tượng $dom đã tải nội dung html và có thể được sử dụng để trích xuất nội dung từ toàn bộ cấu trúc html giống như được thực hiện bên trong javascript. Các chức năng phổ biến nhất là getElementsByTagName và getElementById

Bây giờ html đã được tải, đã đến lúc xem các nút và phần tử con có thể được truy cập như thế nào

2. Nhận một phần tử theo id html của nó

Điều này sẽ nắm giữ một nút/phần tử bằng cách sử dụng ID của nó

//get element by id
$mango_div = $dom->getElementById('mango');

if(!mango_div)
{
	die("Element not found");
}

echo "element found";

Lấy giá trị/html của một nút

Thuộc tính "nodeValue" của một nút sẽ cung cấp giá trị của nó nhưng loại bỏ tất cả html bên trong nó. Ví dụ

echo $mango_div->nodeValue;

Phương pháp thứ hai là sử dụng hàm saveHTML, hàm này lấy ra chính xác html bên trong nút cụ thể đó

________số 8

Lưu ý rằng hàm saveHTML được gọi trên đối tượng dom và đối tượng nút được truyền dưới dạng tham số. Hàm saveHTML sẽ cung cấp toàn bộ html (html bên ngoài) của nút bao gồm cả các thẻ html của chính nút đó

Một chức năng khác gọi là C14N thực hiện điều tương tự nhanh hơn

//echo the contents of mango_div element
echo $mango_div->C14N();

html bên trong

Để chỉ lấy html bên trong, hãy thực hiện theo cách tiếp cận sau. Nó thêm html của tất cả các nút con

0

Hàm get_inner_html lấy html bên trong của phần tử html. Lưu ý rằng chúng tôi đã sử dụng hàm saveXML thay vì hàm saveHTML. Thuộc tính "childNodes" cung cấp các nút con của một phần tử. Đây là những đứa trẻ trực tiếp

3. Lấy các phần tử theo tên thẻ

Điều này sẽ nhận được các yếu tố theo tên thẻ

1

Hàm getElementsByTagName trả về một đối tượng kiểu DomNodeList có thể được đọc dưới dạng một mảng các đối tượng kiểu DomNode. Một cách khác để tìm nạp các nút của NodeList là sử dụng hàm item

2

Hàm mục lấy chỉ mục của mục được tìm nạp. Thuộc tính độ dài của DomNodeList đưa ra số lượng đối tượng được tìm thấy

4. Lấy các thuộc tính của một phần tử

Mỗi DomNode có một thuộc tính được gọi là "thuộc tính" là tập hợp tất cả các thuộc tính html của nút đó.
Đây là một ví dụ nhanh

3

Để lấy một thuộc tính cụ thể bằng tên của nó, hãy sử dụng hàm "getNamedItem" trên đối tượng thuộc tính

// a new dom object
$dom = new domDocument; 

// load the html into the object
$dom->loadHTML($html); 

// discard white space
$dom->preserveWhiteSpace = false;
0

5. Con của một nút

Một DomNode có các thuộc tính sau cung cấp quyền truy cập cho các phần tử con của nó

1. nút con
2. firstChild
3. con cuối cùng

// a new dom object
$dom = new domDocument; 

// load the html into the object
$dom->loadHTML($html); 

// discard white space
$dom->preserveWhiteSpace = false;
1

Kiểm tra xem các nút con có tồn tại không

Có thể sử dụng hàm hasChildNodes để kiểm tra xem một nút có nút con nào không.
Ví dụ nhanh

// a new dom object
$dom = new domDocument; 

// load the html into the object
$dom->loadHTML($html); 

// discard white space
$dom->preserveWhiteSpace = false;
2

6. So sánh 2 phần tử cho bằng nhau

Có thể cần kiểm tra xem phần tử trong 1 biến có giống với phần tử trong biến khác không. Chức năng "isSameNode" được sử dụng cho việc này. Hàm được gọi trên một nút và nút kia được truyền dưới dạng tham số. Nếu các nút giống nhau, thì giá trị boolean true được trả về

// a new dom object
$dom = new domDocument; 

// load the html into the object
$dom->loadHTML($html); 

// discard white space
$dom->preserveWhiteSpace = false;
3

Biến var_dump sẽ hiển thị đúng, cho biết rằng các bảng trong cả $table và $table2 đều giống nhau

Phần kết luận

Các ví dụ trên cho thấy cách Domdocument có thể được sử dụng để truy cập các phần tử trong tài liệu html theo cách hướng đối tượng. Domdocument không chỉ có thể phân tích cú pháp html mà còn có thể tạo/sửa đổi html và xml. Trong các bài viết sau chúng ta sẽ xem làm thế nào để làm điều đó

Làm cách nào để có được InternalHTML trong PHP?

hàm php DOMinnerHTML(DOMNode $element) { $innerHTML = ""; . = $element->ownerDocument->saveHTML($child);

InternalHTML có hoạt động trên PHP không?

Hàm innerHTML() được trình bày trong trang này, nó tương đương với thuộc tính innerHTML từ JavaScript. Hàm này có thể được sử dụng trong PHP để lấy nội dung HTML từ phần tử HTML trong đối tượng DOMDocument .

Làm cách nào để lấy phần tử HTML DOM trong PHP?

Tài liệu DOM. Hàm getElementById() là một hàm có sẵn trong PHP dùng để tìm kiếm một phần tử có id nhất định. Thông số. Hàm này chấp nhận một tham số duy nhất $elementId chứa id để tìm kiếm. Giá trị trả về. Hàm này trả về DOMElement hoặc NULL nếu không tìm thấy phần tử.

Làm cách nào để lấy id từ InternalHTML trong JavaScript?

Thuộc tính id đặt hoặc trả về id của phần tử. .
showID() {
Getid = tài liệu. getElementById('Tin nhắn văn bản');
cảnh báo (getid. Tôi);
.