Advertisement
brandblox

WebLab(29/10/24)

Oct 29th, 2024
198
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 5 6.21 KB | None | 0 0
  1. XML:
  2. <?xml version="1.0" encoding="UTF-8"?>
  3. <users>
  4.     <user>
  5.         <id>1</id>
  6.         <name>John Doe</name>
  7.         <email>john.doe@example.com</email>
  8.         <age>28</age>
  9.     </user>
  10.     <user>
  11.         <id>2</id>
  12.         <name>Jane Smith</name>
  13.         <email>jane.smith@example.com</email>
  14.         <age>32</age>
  15.     </user>
  16.     <user>
  17.         <id>3</id>
  18.         <name>Emily Johnson</name>
  19.         <email>emily.johnson@example.com</email>
  20.         <age>24</age>
  21.     </user>
  22.     <user>
  23.         <id>4</id>
  24.         <name>Michael Brown</name>
  25.         <email>michael.brown@example.com</email>
  26.         <age>45</age>
  27.     </user>
  28.     <user>
  29.         <id>5</id>
  30.         <name>Linda Davis</name>
  31.         <email>linda.davis@example.com</email>
  32.         <age>37</age>
  33.     </user>
  34.     <user>
  35.         <id>6</id>
  36.         <name>James Wilson</name>
  37.         <email>james.wilson@example.com</email>
  38.         <age>29</age>
  39.     </user>
  40.     <user>
  41.         <id>7</id>
  42.         <name>Patricia Garcia</name>
  43.         <email>patricia.garcia@example.com</email>
  44.         <age>36</age>
  45.     </user>
  46.     <user>
  47.         <id>8</id>
  48.         <name>Robert Martinez</name>
  49.         <email>robert.martinez@example.com</email>
  50.         <age>41</age>
  51.     </user>
  52.     <user>
  53.         <id>9</id>
  54.         <name>Jennifer Lopez</name>
  55.         <email>jennifer.lopez@example.com</email>
  56.         <age>30</age>
  57.     </user>
  58.     <user>
  59.         <id>10</id>
  60.         <name>William Taylor</name>
  61.         <email>william.taylor@example.com</email>
  62.         <age>50</age>
  63.     </user>
  64. </users>
  65.  
  66.  
  67.  
  68.  
  69.  
  70. JAVA: (Either write this of the java-script that is below this code)
  71. import org.w3c.dom.*;
  72. import javax.xml.parsers.*;
  73. import java.io.*;
  74. import java.util.Scanner;
  75.  
  76. public class UserDetailFetcher {
  77.  
  78.     public static void main(String[] args) {
  79.         Scanner scanner = new Scanner(System.in);
  80.         System.out.print("Enter User ID: ");
  81.         String userId = scanner.nextLine();
  82.        
  83.         try {
  84.             File inputFile = new File("users.xml");
  85.             DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
  86.             DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
  87.             Document doc = dBuilder.parse(inputFile);
  88.             doc.getDocumentElement().normalize();
  89.  
  90.             NodeList nList = doc.getElementsByTagName("user");
  91.             boolean userFound = false;
  92.  
  93.             for (int i = 0; i < nList.getLength(); i++) {
  94.                Node node = nList.item(i);
  95.                if (node.getNodeType() == Node.ELEMENT_NODE) {
  96.                    Element element = (Element) node;
  97.                    String id = element.getElementsByTagName("id").item(0).getTextContent();
  98.                    
  99.                    if (id.equals(userId)) {
  100.                        String name = element.getElementsByTagName("name").item(0).getTextContent();
  101.                        String email = element.getElementsByTagName("email").item(0).getTextContent();
  102.                        String age = element.getElementsByTagName("age").item(0).getTextContent();
  103.  
  104.                        System.out.println("User Found:");
  105.                        System.out.println("ID: " + id);
  106.                        System.out.println("Name: " + name);
  107.                        System.out.println("Email: " + email);
  108.                        System.out.println("Age: " + age);
  109.                        userFound = true;
  110.                        break;
  111.                    }
  112.                }
  113.            }
  114.  
  115.            if (!userFound) {
  116.                System.out.println("User with ID " + userId + " not found.");
  117.            }
  118.        } catch (Exception e) {
  119.            e.printStackTrace();
  120.        } finally {
  121.            scanner.close();
  122.        }
  123.    }
  124. }
  125.  
  126.  
  127.  
  128.  
  129. JAVASCRIPT: (Either write this of the java that is above this code)
  130. <!DOCTYPE html>
  131. <html lang="en">
  132. <head>
  133.     <meta charset="UTF-8">
  134.     <meta name="viewport" content="width=device-width, initial-scale=1.0">
  135.     <title>User Detail Fetcher</title>
  136. </head>
  137. <body>
  138.     <h1>User Detail Fetcher</h1>
  139.     <label for="userId">Enter User ID:</label>
  140.     <input type="text" id="userId" />
  141.     <button id="fetchBtn">Fetch User Details</button>
  142.  
  143.     <pre id="result"></pre>
  144.  
  145.     <script>
  146.         document.getElementById('fetchBtn').addEventListener('click', function() {
  147.             const userId = document.getElementById('userId').value;
  148.             fetchUserDetails(userId);
  149.         });
  150.  
  151.         async function fetchUserDetails(userId) {
  152.             try {
  153.                 const response = await fetch('users.xml'); // Adjust path if necessary
  154.                 if (!response.ok) {
  155.                     throw new Error(`Error: ${response.status} - ${response.statusText}`);
  156.                 }
  157.                
  158.                 const text = await response.text();
  159.                 const parser = new DOMParser();
  160.                 const xmlDoc = parser.parseFromString(text, 'text/xml');
  161.                 const users = xmlDoc.getElementsByTagName('user');
  162.                
  163.                 let userFound = false;
  164.                 let resultText = '';
  165.  
  166.                 for (let i = 0; i < users.length; i++) {
  167.                    const id = users[i].getElementsByTagName('id')[0].textContent;
  168.                    if (id === userId) {
  169.                        const name = users[i].getElementsByTagName('name')[0].textContent;
  170.                        const email = users[i].getElementsByTagName('email')[0].textContent;
  171.                        const age = users[i].getElementsByTagName('age')[0].textContent;
  172.  
  173.                        resultText = `User Found:\nID: ${id}\nName: ${name}\nEmail: ${email}\nAge: ${age}`;
  174.                        userFound = true;
  175.                        break;
  176.                    }
  177.                }
  178.  
  179.                if (!userFound) {
  180.                    resultText = `User with ID ${userId} not found.`;
  181.                }
  182.  
  183.                document.getElementById('result').textContent = resultText;
  184.  
  185.            } catch (error) {
  186.                console.error('Error fetching data:', error);
  187.                document.getElementById('result').textContent = 'Error fetching data.';
  188.            }
  189.        }
  190.    </script>
  191. </body>
  192. </html>
  193.  
  194.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement