Door
Ilse Callen
op 31-08-2018 17:25
gewijzigd op 03-09-2018 14:30
3.865 views
Hallo,
Ik probeer een xml bestand aan te maken via javascript. De naam van het bestand moet gemaakt worden in de javascript functie maar hij blijft iedere keer zeggen dat het bestand niet bestaat. Ik kan op internet niet goed vinden wat ik verkeerde doe. Dit is de code dit ik op internet heb gevonden en die heb ik aangepast naar mijn eigen code. Achter chatuser.xml moeten de namen komen van diegene die in de chat zit.
Dit is mijn code. Alvast bedankt.
var xmlDoc = document.implementation.createDocument("chatuser.xml", "user");
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function()
{
if (xhttp.readyState == 4 && xhttp.status == 200)
{
var xmlDoc = xhttp.responseXML;
}
}
xhttp.open("GET", "chatuser.xml", true);
xhttp.send();
var xmlString = "<user></user>";
var parser = new DOMParser();
var xmlDoc = parser.parseFromString(xmlString, "text/xml"); //important to use "text/xml"
var node = xmlDoc.createElement("active");
var elements = xmlDoc.getElementsByTagName("user");
elements[0].appendChild(node);
Dan heb je weinig aan je JavaScipt oplossing. je zult dan hoogstens met JavaScript een AJAX request kunnen doen, waarna je met PHP, en dan met name met SimpleXML of DOMdocument je XML bouwt.
deze code deed ik voorheen in het bestand zelf bij de foreach loop en daar werkte hij gewoon. Ik had net ook een alert in the readystate if gezet en die werd gewoon getoond
als ik bij onclick de pagina door laat verwijzen naar chatxml.php krijg ik dit
<?
$selecteduser ";
$file = "chatuser ".$selecteduser." ".$_SESSION['username'].".xml";
$dom = new DOMDocument();
$dom->preserveWhiteSpace = FALSE;
$dom->loadXML($xmlstring); $dom->save($file); ?>
>?
[size=xsmall]Toevoeging op 03/09/2018 17:47:25:[/size]
hij echo'd de code gewoon zeg maar
[size=xsmall]Toevoeging op 03/09/2018 17:50:05:[/size]
eerst had ik dat xml gedeelte in de foreach loop zitten en dat deed hij wel
<?
while($users = mysqli_fetch_assoc($result))
{
foreach ($users as $value)
{
if ($value != $_SESSION["username"])
{
echo "<label onclick='Chatuser(".$count.")' name='newchat' id='newchat".$count."'>$value</label>";
echo "<br>";