Ik heb een formulier en daar worden drie velden ingevuld:
Datum, Kopzin en Bodytekst. Na de submit wil ik de gegevens in een bestand opslaan

De code

$datum = $_POST['datum']; // required
$kopzin = $_POST['kopzin']; // required
$bodytekst = $_POST['bodytekst']; // required

//fase 1, vul de variabelen uit het formuloer en schrijf de tekst met linebreaks naar bestand 'stuff.txt	
$filename = "stuff.txt";
$content = .$datum."\n".$kopzin."\n".$bodytekst."\n";
$filehandle = fopen($filename, 'w');
fwrite($filehandle, $content);
fclose($filehandle);

//fase 2, open het bestand nieuwsoverzicht, lees het in, zet de nieuw ingevoerde tekst vanuit het formulier vooraan. En schrijf dan het hele bestand weer weg.	
$filename = "nieuwsoverzicht.txt";	
$filehandle = fopen($filename, 'w');
$inputcontent = fread($filehandle, filesize($filename));
$inputfile  = .$content."\n\n".$inputcontent.;
fwrite($filehandle, $inputfile);
fclose($filehandle);	


Ik krijg de melding dat ik variabelen niet goed vul. En ik snap het even niet.

Wie helpt mij op weg?
groet
Jan
Om te beginnen, regel 8 zal een syntaxfout moeten geven. Hetzelfde geldt om dezelfde reden op regel 18. Je hebt een aantal punten teveel. Daarnaast snap ik niet waarom je $inputfile en $content eerst leegt om ze daarna in 1 keer te vullen. Voor het gemak zou ik ook even kijken naar [php]file_put_contents[/php] en [php]file_get_contents[/php].
En waar komt $output vandaan?
- SanThe - op 27/07/2017 23:41:15

En waar komt $output vandaan?

Dank voor de reacties. Ik moet met het verhaal van Ben even aan het werk. SanThe. $output had $content moeten zijn. Maar dat zou een lege inhoud toevoegen aan het bestand. Nu wel aangepast.

[size=xsmall]Toevoeging op 28/07/2017 08:03:38:[/size]

Ben van Velzen op 27/07/2017 22:37:00

Om te beginnen, regel 8 zal een syntaxfout moeten geven. Hetzelfde geldt om dezelfde reden op regel 18. Je hebt een aantal punten teveel. Daarnaast snap ik niet waarom je $inputfile en $content eerst leegt om ze daarna in 1 keer te vullen. Voor het gemak zou ik ook even kijken naar [php]file_put_contents[/php] en [php]file_get_contents[/php].

Een beetje ouderwets om een variabele leeg te maken. Ik kijk naar jouw opmerkingen, dank.

[size=xsmall]Toevoeging op 28/07/2017 08:12:11:[/size]

Ik heb nu eea aangepast.

//fase 1, vul de variabelen uit het formuloer en schrijf de tekst met linebreaks naar bestand 'stuff.txt    
		$filename = "stuff.txt";
		$content = $datum."\n".$kopzin."\n".$bodytekst."\n";
		$filehandle = fopen($filename, 'w');
		fwrite($filehandle, $content);
		fclose($filehandle);

	//fase 2, open het bestand nieuwsoverzicht, lees het in, zet de nieuw ingevoerde tekst vanuit het formulier vooraan. En schrijf dan het hele bestand weer weg.    
		$filename = "nieuwsoverzicht.txt";    
		$filehandle = fopen($filename, 'w');
		$inputcontent = fread($filehandle, filesize($filename));
		$inputfile  = $content."\n\n".$inputcontent;
		fwrite($filehandle, $inputfile);
		fclose($filehandle);


Nu krijg ik alleen nog een foutmelding op de fread waarbij de parameter>0 moet zijn. En dat pak ik nog aan.

[size=xsmall]Toevoeging op 28/07/2017 09:06:21:[/size]

Dank voor de hulp. Ik heb een regel aangepast in plaats van $inputcontent=fread($filehandle, filesize($filename);

En wel:
$inputcontent= file_get_contents($filename);

Nu werkt alles zoals bedoeld was. Dank!

Reageren