Ik ben al verschillende dagen bezig om een scriptje te maken waar ik online een pagina kan aanpassen. De bedoeling is dat de gebruiker eerst een keuze maakt welk script hij wil aan passen en dan een nieuw venster krijgt met het aan te passen bestand.
Om een keuze te maken heb ik ondertussen al werkend gekregen maar als ik de wijzegingen wil bevestigen dan doet het script niets meer.
Nu heb ik het gedeelte om de pagina aan te passen eens appart geprobeerd zonder het keuzemenu en dan werkt het. Plaats ik alles opnieuw bij elkaar doet hij weer niets. Iemand een idee wat ik fout doe.


alvast bedankt.


<?php
if($_SERVER['REQUEST_METHOD'] == 'POST' && isset( $_POST['submit_admin'] )){
  
	$filename = $_POST['keuze_pagina'];                //Dit is de naam van het bestand dat moet worden aangepast
	echo $filename;

	//Hieronder niets veranderen
	if ($_SERVER['REQUEST_METHOD'] == 'POST' && isset( $_POST['submit_aanpassen'] ))
	{
		$content = $_POST['content'];
			
		// Kunnen we schrijven naar het bestand?
		// Kan dit niet, dan error
		if (is_writable($filename)) {
				
			// Open het bestand
			// Kan dit niet, dan error
			if (!$handle = fopen($filename, 'w')) {
				echo "Cannot open file ($filename)";
				exit;
			}
				
			// Schrijf de tekst uit de textarea naar het bestand
			// Kan dit niet, dan error
			if (fwrite($handle, $content) === FALSE) {
				echo "Cannot write to file ($filename)";
				exit;
			}
				
			// Meld dat het schrijven is gelukt
			echo "Success, wrote ($content) to file: $filename";
			fclose($handle);
		} 
		else {
			// Error van schrijfbaarheids check
			echo "The file $filename is not writable";
		}
		
	} 
	else {
		// Open bestand en lees het uit, bestaat het bestand niet, dan wordt het gemaakt.
		$handle = fopen($filename, 'a+');
				
		// Controleer of er iets in file staat
		// is deze leeg dan een size van 1 geven, bij 0 krijg je namelijk error.
		if(filesize($filename) > 0){$size = filesize($filename);}else{$size = 1;}
				
		// Maak string met inhoud van bestand
		$content = fread($handle, $size);
		fclose($handle);
		echo '
		<html>
				<head>
					<script src="SpryAssets/SpryValidationSelect.js" type="text/javascript"></script>
					<script type="text/javascript">
					<!-- Start open popUP -->
					function openPopUp(url) {
					newwindow=window.open(url, "hulp HTML", config="location=0, directories=0, status=0, resizable=1, menubar=0, toolbar=0, scrollbars=1, width=640,height=480");
					if (window.focus) {newwindow.focus()}
					return false;
					}
					// einde openen popUP -->
					</script>
		</head>
				<body>
			 
				
				
				<form action="'. $_SERVER["PHP_SELF"].'" method="POST">
				<textarea name="content" style="width: 400px; height: 400px;">'.$content.'</textarea>                <!-- Plaatsen textvlak -->
				<br />
				<input type="submit" name="submit_aanpassen" value="Inhoud aanpassen" onClick="value= &lsquo; Opdracht wordt verwerkt... &lsquo; " style="width: 400px;"> <!-- Plaatsen Knop "inhoude aanpassen -->
				
				</form>
				
				
		</body>
				</html>';
			
			}
			 
}
else {
?>
<html>
<head>
  <title></title>
</head>
<body>

Welke pagina wil je aanpassen?
    <form name="form1" method="post" action="">
        <select name="keuze_pagina" id="keuze_pagina" size="1">
            <option selected>----</option>
            <option value="kalender_medewerkers.php">Kalender Medewerkers</option>
            <option value="kalender_leden.php">Kalender Leden</option>
        </select>
        <input type="submit" name="submit_admin" id="submit" value="Bevestigen">
    </form>
</body>
</html>
<?php
}
?> 
Ik heb het script even snel bekeken,
Wil je mensen een php pagina laten bewerken?
de bedoeling is dat deel achteraf op een afgeschermd deel van de site komt zodat enkel bevoegde mensen er aanpassingen kunnen aan doen
nu werkt het script maar ik krijg nog steeds geen bestand weggeschreven.
Eerst moet men een keuze maken en die keuze wordt via
 $filename = $_POST['keuze_pagina'];  
weggeschreven in $filename. Via deze mannier lukt het niet. Als ik rechtstreeks iets in de variabele steek dan werkt het wel
 $filename = kalender_medewerkers.php


Nu begrijp ik echt niet waar het probleem zit. bovenaan de code staat er
 echo $filename;

die geeft de juiste waarde maar desondanks dat krijg ik het niet werkend.

Gelieve Niet Bumpen:

Twee of meer keer achter elkaar in een topic posten heet bumpen. Bumpen is pas na 24 uur toegestaan en kan een reden zijn voor de admins en moderators om een topic te sluiten. Gebruik indien nodig de knop om je tekst aan te passen.

SanThe.

Reageren