Hallo. Ben lekker bezig met php. Ik heb een html formulier waarbij de ingevoerde waarde wordt doorgestuurd naar en php-bestand die deze weer schrijft in een extern html bestand (test.html). het werkt allemaal prima, dankzij ook hulp van dit forum. Echter ik zoek een manier hoe ik de content van test.html weer opnieuw kan inlezen en in een formulier kan importeren en deze dan kan aanpassen en dan tegelijk ook weer opnieuw kan opslaan in test.html.

Ik ben al even bezig, maat ik kan niet echt vinden hie ik dit voor elkaar kan krijgen. Hopelijk dat iemand van jullie hier kennis van heeft. bij voorbaat dank.


Onderstaand het formulier dat in een bestand staat.


<form action="post-method.php" method="post">
 

<textarea rows = "30" cols = "150" name = "mytext">
          
         </textarea>
 
 <input type="submit" name="submit" /> </form> 


Onderstaand het php bestand. de server gegevens heb ik even weggehaald

<?php
$username = "dbtest";
$password = "geheim";
$dbname = "dbs00001111";

$conn = new mysqli($servername, $username, $password, $dbname); // Create connection
if ($conn->connect_error) {     // Check connection
    die("Connection failed: " . $conn->connect_error);
} 

$myfile2= "test.html"; // or .php   
$string2 = file_get_contents($myfile2);

$replace2 = $_REQUEST['mytext'];

$content2 = preg_replace('#(<p[^>]*>).*?(</p>)#', '$1'.$replace2.'$2', $string2);
file_put_contents($myfile2, $content2);

echo $content2;

echo $mytext;

?>
Je hebt vast wel wat aan [php]file_put_contents[/php].
is toch om volgens mij om data erin te schrijven? Wat ik wil bereiken is dat ik een form open en dat de content van het bestand test.html weer opnieuw verschijnt. Ik weet wel hoe ik de content in een variable kan opslaan, maar geen idee hoe ik dit dan in een html form kan importeren. Heb wel gelezen van method "get" maar daar kom ik niet aan uit.

[size=xsmall]Toevoeging op 05/01/2022 14:54:24:[/size]

ben er nog eens ingedoken, maar krijg het niet voor elkaar.
Heb dit ervan gemaakt.

tekst_template.html

<style>
h1 { font-style: italic; }
p  { font-weight: bold; }
</style>

<h1>Template</h1>

<p>{TEXTAREA}</p>


Het PHP bestand

<?php

$tekst_template = "tekst_template.html";

$template = file_get_contents( $tekst_template );

$_REQUEST['mytext'] = 'Komt van FORM TEXTAREA';

$replace = $_REQUEST['mytext'];

$template = preg_replace( '^\{TEXTAREA\}^', $replace, $template );

$file_out = 'tekst_uit.html';

file_put_contents( $file_out, $template );

echo '<h3>Van TEXTAREA FORM</h3>';
echo $replace;

echo '<hr />';

echo '<h3>Vervangen in template</h3>';
echo $template;

echo '<hr />';

echo '<h3>Uitvoerbestand</h3>';
include($file_out);

?>


[size=xsmall]Toevoeging op 05/01/2022 16:39:34:[/size]

Zag over het hoofd dat de ingevoerde tekst eer in het textarea moest verschijnen.

Dan zo maar .

<?php
if( $_POST['submit'] )
{
	$tekst_template = "tekst_template.html";
	$template = file_get_contents( $tekst_template );
	//$_REQUEST['mytext'] = 'Komt van FORM TEXTAREA';
	$replace = $_REQUEST['mytext'];
	$template = preg_replace( '^\{TEXTAREA\}^', $replace, $template );
	$file_out = 'tekst_uit.html';
	file_put_contents( $file_out, $template );
	echo '<h3>Van FORM TEXTAREA</h3>';
	echo $replace;
	echo '<hr />';
	echo '<h3>Vervangen in template</h3>';
	echo $template;
	echo '<hr />';
	echo '<h3>Uitvoerbestand</h3>';
	include($file_out);
}
?>

<form method="post">

<textarea rows = "30" cols = "150" name = "mytext">
<?php echo $replace; ?>
</textarea>

<input type="submit" name="submit" />

</form>
Bedankt voor de input. Echter ik wil de content kunnen aanpassen. Dus Nadat de content is weggeschreven naar het bestand, wil ik de content weer terug inlezen zodat deze in een formulier kan worden aangepast en weer opnieuw kan worden weggeschreven.

[size=xsmall]Toevoeging op 05/01/2022 17:00:43:[/size]

oh sorry. laatste bericht gemist van je.

[size=xsmall]Toevoeging op 05/01/2022 17:10:10:[/size]

Super bedankt werkt zo ja. Ik zoek alleen nog een manier dat wanneer ik alles heb afgesloten en het php bestand weer open de textare in het formulier al met de content wordt gevuld.
Even een vraag tussendoor ... waarom wil je dingen in een bestand schrijven en niet in de database? (Ik stel deze vraag voor de zekerheid om wellicht te voorkomen dat je helemaal in de verkeerde richting bezig bent.)
Ja een database kan ook natuurlijk. maakt dat alles eenvoudiger?
Zeker, vooral omdat je alles netjes kan ordenen, sorteren en filteren.
super bedankt het is trouwens overigens ook gelukt om de data weer in te lezen vanaf het bestand zodat deze bij openen van de php weer gelijk wordt getoond.

[size=xsmall]Toevoeging op 05/01/2022 18:21:40:[/size]

ben trouwens bezig met een cms systeem op te zetten waarin de bezoeker html elementen kan kiezen per rij.
Vervolgens moet het ook mogelijk zijn om de tekst daarin weer aan te passen etc etc..
is veel werk, maar wel leuk om te doen.
Oké. Dat is dus niet iets om via het wegschrijven en lezen van een bestand te doen, maar via een database.
Klopt. Maar sommige aanpasssingen zijn op die manier handiger. Andere weer via een database. Maar het is wel en helse klus om voor elkaar te krijgen.

Reageren