Új hozzászólás Aktív témák
-
Castielll
csendes tag
Hali!
Kérnék egy kis segítséget! :-)
Van egy xml fájlom és egy php fájlom.
Úgy szeretném előhívni az adatokat az xml-ből, hogy pl.: ha az "ablak"-on belül a "nyit" és az "ajto"-on belül az "ilyen" mező van kiválasztva akkor azokat listázza ki úgy,-hogy ha a (ablak)"nyit" és az (ajto)"ilyen"-en belül ugyan olyan tagok vannak pl.: (az "a" , "c", "d", "e") akkor azokat ne kétszer írja ki, hanem csak egyszer.
-továbbá ha az (ablak)"nyit" és az (ajto)"ilyen"-en belül van olyan tag, ami a másikban nem szerepel pl.: (a példa alapján most az "f" ) akkor azt meg ne írja ki!
És bárhogy változtatom a változókat, akkor is működjön ez a feltétel...
....................
Xml-em:
<?xml version="1.0" encoding="ISO-8859-2"?>
<content>
<ablak>
<nyit>
<a>kék</a>
<c>piros</c>
<d>sárga</d>
<e>zöld</e>
</nyit>
<zar>
<c>piros</c>
<d>sárga</d>
<f>fekete</f>
</zar>
</ablak>
<ajto>
<ilyen>
<a>kék</a>
<c>piros</c>
<d>sárga</d>
<e>zöld</e>
<f>fekete</f>
</ilyen>
<olyan>
<d>sárga</d>
<e>zöld</e>
</olyan>
</ajto>
</content>....................
Php-m:
<?php
$xml = new DOMDocument;
$xml->load('a.xml');
// A "form"-ban kiválasztott mező:
$mezo1 = $_POST['mezo1'];
$mezo2 = $_POST['mezo2'];
// Ablak ki listázása:
if ($mezo1 == 'nyit') {
$ablak = $xml->getElementsByTagName('nyit');
}
if ($mezo1 == 'zar') {
$ablak = $xml->getElementsByTagName('zar');
}
foreach ($ablak as $ereda) {
echo $ereda->nodeValue;
}
// Ajtók ki listázása:
if ($mezo2 == 'ilyen') {
$ajto = $xml->getElementsByTagName('ilyen');
}
if ($mezo2 == 'olyan') {
$ablak = $xml->getElementsByTagName('olyan');
}
foreach ($ajto as $eredb) {
echo $eredb->nodeValue;
}
?>....................
Előre is köszönöm a segítséget! :-)
Új hozzászólás Aktív témák
- hcl: Eszelős szívatás : kijelzőtükrözés 2026
- Revolut
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- A fociról könnyedén, egy baráti társaságban
- Kormányok / autós szimulátorok topikja
- 3D nyomtatás
- Xbox tulajok OFF topicja
- Gitáros topic
- Milyen egeret válasszak?
- További aktív témák...
- Chieftec GPA-400S8 400W, 80+ minősítésű tápegység
- Quad Core AMD Phenom II X4 965 Black Edition (HDZ965FBK4DGI) processzor
- !AKCIÓ! GAMER PC AMD Ryzen 7 5800X3D/ASUS TUF Gaming B550M-PLUS/RTX 3070Ti 8GB/32 GB DDR4 3200 MHz
- Lenovo Yoga C630 notebook 4K UHD kijelző 15,4 i7-8550U/16GB ram /128GB SSD
- Lenovo Thinkpad T495 Ryzen 5 PRO 3500U/8GB RAM/256 GB SSD/14" FHD Magyar bill. laptop
- BESZÁMÍTÁS! HP Elitedesk 800 G1 USDT brand - i7 4790S 16GB DDR3 256GB SSD Intel HD 4600 250W WIN10
- LG 27GR95UM - 27" MiniLED - UHD 4K - 160Hz 1ms - NVIDIA G-Sync - FreeSync Premium PRO - HDR 1000
- LG 65B4 - 65" OLED - 4K 120Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDMI 2.1 - PS5 és Xbox Ready
- GYÖNYÖRŰ iPhone 13 Pro 128GB Sierra Blue -1 ÉV GARANCIA -Kártyafüggetlen, MS3965
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7800X3D 32/64GB RAM RTX 5090 32GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs

