как отправить содержимое узла в xml на другую страницу с помощью php?
page.php
<!DOCTYPE html> <html> <head> <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1 target-densitydpi=device-dpi" /> <link rel="stylesheet" type="text/css" href="styles.css" /> </head> <body> <div class="container"> <?php $html = ""; $url = "http://d-toma.netne.net/Data.xml"; $xml = simplexml_load_file($url); $title=$xml->page[0]->title; $image=$xml->page[0]->image; echo("<div class=\"main\"><img src=\"$image\"/>$title</div>"); for($i = 1; $i<4;$i++){ $title=$xml->page[$i]->title; $image=$xml->page[$i]->image; $title= $xml->page[$i]->title; //$title=$xml->page->content->asXML(); $html .="<div class=\"sec\"><img src=\"$image\"/>$title</div>"; } echo $html; ?> </div> </body> <html>
я просто хочу, когда я нажимаю на div, чтобы открыть другую страницу, и поместил содержимое узла, на который я нажал, пожалуйста, помогите мне поблагодарить вас, я просто пробовал все, но я не знаю, как решить эту проблему
Следующее решение такое же, как вам нужно, только я использую jQ:
<!DOCTYPE html> <html> <body> <header> <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <style> .container { position: relative; width: 100%; } .menu { float: left; width: 25%; } .menu a { text-decoration: none; } .page { float: left; width: 75%; } </style> </header> <body> <div class="container"> <div class="menu"> <ul> </ul> </div> <div class="page"> </div> </div> <script> var $pageCollection; function buildMenu($xmlDoc) { var $menu = $('div.menu > ul'), $pageDetail = $('div.page'), items = []; // Get page collection $pageCollection = $xmlDoc.find('page'); $pageCollection.each(function (index, element) { var $page = $(element), item = $('<li><a href="javascript:void(0)" data-index="' + index + '">' + $page.find('title').html() + '<br />' + $page.find('desc').html() + '</a></li>'); items.push(item); }); // Show page 0 for default var $firstPage = $pageCollection.first(), $contentPage = $firstPage.find('content').html(); $pageDetail.html($contentPage); // Add event handlers $menu.append(items); $menu.on('click', 'a', onAnchorClick); } function getXml(url, callback) { $.get(url, function (response) { var $xmlDoc = $(response); callback($xmlDoc); }); } function onAnchorClick(event) { var $pageDetail = $('div.page'), $anchor = $(event.currentTarget), index = $anchor.attr('data-index'); // Clear previous content $pageDetail.empty(); // Show current page var $currentPage = $pageCollection.eq(index), $contentPage = $pageCollection.find('content').html(); $pageDetail.html($contentPage); } $(function () { var url = 'http://d-toma.netne.net/Data.xml'; getXml(url, buildMenu); }); </script> </body> </html>
Это решение загружает с использованием AJAX XML-файл и анализирует этот поиск для тега content
. Якорь в меню div сохраняет позицию индекса в XML, используя его для выбора текущей страницы в коллекции страниц XML.
С уважением!
Вы можете использовать сеансы. Важно помнить, что в заголовке ниже ( header('Location: http://www.yoururl.com/displaypage.php');
) должен быть тем же URL-адресом, которым вы обладали сайтом вместе с /displaypage.php ,
Поэтому, если вы получили доступ к «yoururl.com», тогда должен быть: header('Location: http://yoururl.com/displaypage.php');
но если вы получили доступ к «www.yoururl.com», тогда должен быть: header('Location: http://www.yoururl.com/displaypage.php');
, Это необходимо для сохранения вашего доступа к сеансу.
session_start(); $_SESSION['TitleImageInfo'] = array(); for($i = 1; $i < 4; $i++) { $title=$xml->page[$i]->title; $image=$xml->page[$i]->image; //Add title, image html to the $_SESSION['TitleImageInfo'] session array. $_SESSION['TitleImageInfo'] = "<div class=\"sec\"><img src=" . $image . "/>" . $title . "</div>"; } header("Location: http://www.yoururl.com/displaypage.php");
На displaypage.php:
<?php session_start(); for($i = 1; $i < count($_SESSION['TitleImageInfo']); $i++) { echo($_SESSION['TitleImageInfo'][i]); } ?>