Archief - XML: kan niet opslaan in xml

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

The_Rastaman

Legacy Member
voor een schoolproject moet ik een portaalsite maken met gebruik van PHP en XML (geen SQL).

Alles is vrij goed gelukt, behalve het toevoegen van nieuwe links op de site.

Als fout melding krijg ik telkens

Code:
Warning: DOMDocument::save(links.xml) [function.DOMDocument-save]: failed to open stream: Permission denied in D:\phpbestanden\test\addlink.php on line 51
Toevoegen mislukt

Tevens krijg ik dezelfde foutmelding bij toevoegen van users :
Code:
Warning: DOMDocument::save(users.xml) [function.DOMDocument-save]: failed to open stream: Permission denied in D:\phpbestanden\test\users.php on line 60

Als ik manueel alles ingeef in xml, wordt alles perfect getoond op de site.

zie hier de code van addlink.php

Code:
<?php
session_start();
include("loginfties.php");
include("login.php");
include("rssfties.php");
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Link toevoegen</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" type="text/css" href="style.css" />
</head>

<body>
<?php
	echo $printvalue;
	if(!login_check()){ die('<div align="center"><h1>Toegang Geweigerd!</h1></div></body></html>');}
	if(isset($_POST['exe']) && $_POST['exe'] == 'toevoegen'){
		$doc = new DOMDocument('1.0', 'iso-8859-1');
		if(!$doc->load("links.xml")){
			$doc->load("links.bak.xml");
		}
		
		$rootlist = $doc->getElementsByTagName('root');
		$xml = $rootlist->item(0);
		$link = $doc->createElement('link');
		$link = $xml->appendChild($link);
		
		$titel = $doc->createElement('titel');
		$titel = $link->appendChild($titel);
		$titel_tekst = $doc->createTextNode($_POST['titel']);
		$titel_tekst = $titel->appendChild($titel_tekst);
		
		$url = $doc->createElement('url');
		$url = $link->appendChild($url);
		$url_tekst = $doc->createTextNode($_POST['url']);
		$url_tekst = $url->appendChild($url_tekst);
		
		$cat = $doc->createElement('cat');
		$cat = $link->appendChild($cat);
		$cat_tekst = $doc->createTextNode($_POST['cat']);
		$cat_tekst = $cat->appendChild($cat_tekst);
		
		$subcat = $doc->createElement('subcat');
		$subcat = $link->appendChild($subcat);
		$subcat_tekst = $doc->createTextNode($_POST['subcat']);
		$subcat_tekst = $subcat->appendChild($subcat_tekst);
		echo '<div align="center">'."\n";
		echo '<h3><table style="border: 0 none; text-align:center; width:auto;"><tr><td style="border: 0 none; text-align:left;">'."\n";
		if($doc->save("links.xml")){
			$doc->save("links.bak.xml");
			echo '<u>Toevoegen geslaagd</u></td></tr><r><td style="border: 0 none; text-align:left;"><u>Titel:</u> '.$_POST['titel'].'</td></tr><tr><td style="border: 0 none; text-align:left;"><u>Url:</u> '.$_POST['url'].'</td></tr><tr><td style="border: 0 none; text-align:left;"><u>Categorie:</u> '.$_POST['cat'].'</td></tr><tr><td style="border: 0 none; text-align:left;"><u>Subcategorie:</u> '.$_POST['subcat']."\n";
			
			rss_add_item('Nieuwe link...', $_POST['url'], 'De link met titel "'.$_POST['titel'].'", en url "'.$_POST['url'].'" is toegevoegd in categorie "'.$_POST['cat'].' - '.$_POST['subcat'].'".');
			
		}else{
			echo '<u>Toevoegen mislukt</u>'."\n";
		}
		echo '</td></tr></table></h3>'."\n";
		echo '</div><hr />'."\n";
	}
?>
<div align="center">
<h2><u>Link toevoegen</u></h2>
<form method="post">
	<table class="login">
		<tr><td>URL:</td><td><input type="text" name="url" tabindex="1" size="70" value="http://"></input></td><td rowspan="4" style="vertical-align:middle"><input type="submit" value="Toevoegen"  tabindex="5"></input></td></tr>
		<tr><td>Titel:</td><td><input type="text" name="titel" tabindex="2" size="70"></input></td></tr>
		<tr><td>Categorie:</td><td><input type="text" name="cat" tabindex="3" size="70"></input></td></tr>
		<tr><td>Subcategorie:</td><td><input type="text" name="subcat" tabindex="4" size="70"></input></td></tr>
	</table>
	<input type="hidden" name="exe" value="toevoegen"></input>
</form>
</div>
</body>
</html>

Als webserver gebruik ik IIS 6.0 met laatste versie van PHP.
Alle machtigingen staan ingesteld dat iedereen kan doen en laten wat hij wil (schrijven, lezen, ...)

machtigingen%20IIS.JPG

passero

Legacy Member
die image toont de verkeerde info :)

Je moet de machtigingne aanpassen in windows verkenner. je moet naar de map gaan waar de xml's staan => rechterklik op die map, properties
tabblad security en dan rechten geven aan IIS_USER of gewoon aan iedereen alle rechten, dan ben je zeker.

The_Rastaman

Legacy Member
het vreemde vind ik bij 'eigenschappen' van de map. Er staat 'alleen lezen' aangevinkt => zet ik deze uit (toepassen op alle submappen) => kijk ik opnieuw naar de eigenschappen staat 'alleen lezen' terug aangevinkt.

of zou het hiermee iets mee te maken hebben ?

resultaat%203-4.JPG

borracho

Legacy Member
je moet doen wat passero zegt maar het tabblad beveiligingen zie je maar nadat je bij mapopties iets hebt aan- of uitgevinkt. Weet het niet vanbuiten meer.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan