[PHP] txt bestanden schrijven/uitlezen

Status
Niet open voor verdere reacties.
Form.html
Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Input Form</title>
</head>

<body>
<form action="process.php" method="POST" name="inputform" id="inputform">
Uw naam: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="text" size="50" name="field1" />
<BR>
<BR> 
Uw e-mailadres: 
<input type="text" size="50" name="field2" />
<BR>
<BR>
Uw bericht: <BR>
<textarea rows="10" cols="50" name="field3">
Typ hier uw bericht.
</textarea>
<BR>
<BR>
<input type="submit" name="submit" value="Submit" />
</form>
</body>
</html>

process.php
Code:
<?php 
if ($_SERVER['REQUEST_METHOD'] == 'POST') { 
$field1 = $_POST['field1'] ; 
$field2 = $_POST['field2'] ; 
$field3 = $_POST['field3'] ;
$f=fopen("file.txt","a"); 
fwrite($f,"$field1 | $field2 | $field3
 \r\n"); 
fclose($f); 
} 
?>

sla it op in dezelfde map en open form.html, typ u bericht in en klik op verstuur, dan word er een text bestand aangemaakt.
 
aardig dat je steeds dat script herhaald,, maar daar heb ik niets aan
van kopieren leer je niks en ik wil php leren.
dus uitleg hoe ik ut moet doen.

zei mijn maat ook al :D ,
maar effe dit

nu wil ik zo maken dat als je iets een textarea typt en dan op save drukt dat het in de file wordt opgeslagen
alleen hoe krijg je die form dan in php?
en hoe zorg je er voor dat hij alles netjes opslaat INCLUSIEF DE NIEUWE REGELS
dat het niet "hallo ik jordy ik ben 15 jaar ik woon in nederland" wordt
maar gewoon
"Hallo ik ben jordy
ik ben 15 jaar
ik woon in nederland"

dit is mijn form
PHP:
<form name="Tekst_form" method="POST" style="margin:0px">

<textarea name="Tekst_vak" style="position:absolute;left:7px;top:53px;width:345px;height:274px;z-index:3">Typ hier de tekst.</textarea>

<input name="plaats_knop" type="submit" value="Plaatsen" style="position:absolute;left:263px;top:368px;z-index:4">

</form>
en dit mijn 'write.php' script.
PHP:
<?php
    echo "Start<br/>";
    
    $bestand = 'test.txt';
    $tekst = " regel 1 \r\n regel 2 \r\n regel 3"; // dit wordt er in het bestand weggeschreven.
    if (is_writable($bestand)) 
    {	
        if (!$handle = fopen($bestand, 'w')) // de a optie staat voor append (toevoegen)
        {
            echo "kan het bestand $bestand niet openen<br/>";
            exit;
        }
 
        if (fwrite($handle, $tekst) === FALSE) 
        {
            echo "kan niet scrijfen naar het bestand $bestand)<br/>";
            exit;
        }
 
        echo "$tekst is opgeslagen in $bestand<br/>";
 
        fclose($handle);
		echo "\r\n";
    
    }
    else
    {
        echo "kan niet schrijven in het bestand $bestand<br/>";
    }
    
?>
 
Laatst bewerkt:
aardig dat je steeds dat script herhaald,, maar daar heb ik niets aan
van kopieren leer je niks en ik wil php leren.
dus uitleg hoe ik ut moet doen.

Eerlijk gezegt heb ik dit script ook van internet geplukt, en ik kan ook niet zo 1 2 3 zegen wat alles doet.
 
Oke. :cool:
maar kan iemand nog ff naar mijn vraag kijken.. 2posts omhoog
 
Laatst bewerkt:
PHP:
<form name="Tekst_form" method="POST" style="margin:0px">

<textarea name="Tekst_vak" style="position:absolute;left:7px;top:53px;width:345px;height:274px;z-index:3">Typ hier de tekst.</textarea>

<input name="plaats_knop" type="submit" value="Plaatsen" style="position:absolute;left:263px;top:368px;z-index:4">

</form>

Je vorige write.php had standaard tekst in de variabel $text zitten. Als je een formulier verstuurd van uit HTML naar PHP worden deze in PHP aangesproken met $_POST of $_GET afhankelijk van de method die je in het formulier mee geeft!
PHP:
<?php
    echo "Start<br/>";
    
    $bestand = 'test.txt';
    // als je print_r($_POST) doet zie je alle variabelen 
    // die door een formulier verstuurd worden.
    // $_POST[naam-van-input-veld/textarea] in dit gevel 
    // tekst_vak kan je dus aanspreken als $_POST['tekst_vak']
    $tekst = $_POST['tekst_vak']; 
    if (is_writable($bestand)) 
    {	
        if (!$handle = fopen($bestand, 'w')) // de a optie staat voor append (toevoegen)
        {
            echo "kan het bestand $bestand niet openen<br/>";
            exit;
        }
 
        if (fwrite($handle, $tekst) === FALSE) 
        {
            echo "kan niet scrijfen naar het bestand $bestand)<br/>";
            exit;
        }
 
        echo "$tekst is opgeslagen in $bestand<br/>";
 
        fclose($handle);
		echo "\r\n";
    
    }
    else
    {
        echo "kan niet schrijven in het bestand $bestand<br/>";
    }
    
?>

Probeer dit eens...
 
weet iemand hoe je van deze 2 scripts 1 script van maakt ?
PHP:
<form name="form_form" method="POST" style="margin:0px">

<textarea name="formt_tekstvak" style="position:absolute;left:7px;top:53px;width:345px;height:274px;z-index:3">Typ hier de tekst.</textarea>

<input name="form_knop" type="submit" value="Plaatsen" style="position:absolute;left:263px;top:368px;z-index:4">

</form>

PHP:
<?php
    echo "Start<br/>";
    
    $bestand = 'test.txt';
    // als je print_r($_POST) doet zie je alle variabelen 
    // die door een formulier verstuurd worden.
    // $_POST[naam-van-input-veld/textarea] in dit gevel 
    // tekst_vak kan je dus aanspreken als $_POST['tekst_vak']
    $tekst = $_POST['tekst_vak']; 
    if (is_writable($bestand)) 
    {	
        if (!$handle = fopen($bestand, 'w')) // de a optie staat voor append (toevoegen)
        {
            echo "kan het bestand $bestand niet openen<br/>";
            exit;
        }
 
        if (fwrite($handle, $tekst) === FALSE) 
        {
            echo "kan niet scrijfen naar het bestand $bestand)<br/>";
            exit;
        }
 
        echo "$tekst is opgeslagen in $bestand<br/>";
 
        fclose($handle);
		echo "\r\n";
    
    }
    else
    {
        echo "kan niet schrijven in het bestand $bestand<br/>";
    }
    
?>
 
Uhm, de twee scripts op dezelfde pagina plakken? PHP code boven, Form onder.
 
Automatisch, de form heeft geen action element, dus hij gaat terug naar dezelfde pagina, alleen stuurt hij de opgegeven waarden mee in de $_POST variabele.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan