Autor Zpráva
Truuhlik
Profil
Mám tento formulář,
<form action="send.php" method="post">
<tr><td>Titulek zprávy:</td><td><input name="titulek" size="33"></td></tr>
<tr><td>Datum:</td><td><input name="datum" size="33"></td></tr>
<tr><td>Zpráva</td><td><textarea name="zprava" rows="10" cols="50"></textarea></td></tr>
<tr><td>Autor:</td><td><input name="autor" size="33">&nbsp;<input type="submit" value="Přidat příspěvek">&nbsp;<input type="reset" value="Zrušit text"></td></tr>
<tr><td>Kontrola:</td><td><input name="kontrola" size="5">= 2 x 5</td></tr>
</form>


pomocí kterého, při odeslání vytvořím nový soubor s obsahem, který jsem vyplnil v tom formuláři.

Toto je soubor, který slouží jako odesílací skript. Můj dotaz je hlavně to, jak jednoduše by se dalo udělat abych mohl jednotlivé vytvořené soubory editovat.
<?php
$titulek = $_POST['titulek'];
$datum = $_POST['datum'];
$zprava = $_POST['zprava'];
$autor = $_POST['autor'];
$kontrola = $_POST['kontrola'];

if ($titulek!="" and $datum!="" and $zprava!="" and $autor!="" and $kontrola!=="10"){
echo "<h3>Příspěvek byl přidán - Děkujeme!</h3>";
}
else{
echo "<h3>Protože nebyla vyplněna všechna pole, nemohl být příspěvek odeslán.</h3>";
}
$x = 1;
$nazev = $titulek.$x+1;
if (isset($titulek) && isset($datum) && isset($zprava) && isset($autor)){
$fp = fopen("$nazev.html", "a");
fwrite($fp,'<table width="400">
<tr><td valign="top" width="50%"><strong>'.$titulek.'</strong></td><td width="50%"><strong>'.$datum.'</strong></td></tr>
<tr><td valign="top"><p style="line-height: 15px; font-size: 13px; font-family: Arial;">'.$zprava.'</p></td></tr>
<tr><td valign="top"><em>'.$autor.'</em></td></tr></table>');
fclose ($fp);
}

?>
gogy27
Profil
no spravis si dalsiu stranku kde budes mat cez SELECT vyber clankov z databazy ktore sa mozu upravit.
Vyberie sa nejaka, a z nej si povyberas dane udaje.

<form action="send.php" method="post">
<tr><td>Titulek zprávy:</td><td><input name="titulek" size="33" value = "<?php tu bude z databazy ten titulek ?>"></td></tr>
<tr><td>Datum:</td><td><input name="datum" size="33" value = "<?php tu bude z databazy ten datum ?>"></td></tr>
<tr><td>Zpráva</td><td><textarea name="zprava" rows="10" cols="50" value = "<?php tu bude z databazy ta sprava ?>"></textarea></td></tr>
// toto som odkomentoval lebo to asi netreba<tr><td>Autor:</td><td><input name="autor" size="33">&nbsp;
<input type="submit" value="Přidat příspěvek">&nbsp;<input type="reset" value="Zrušit text"></td></tr>
<tr><td>Kontrola:</td><td><input name="kontrola" size="5">= 2 x 5</td></tr>
</form>
a potom si to ulozis do databazy cez UPDATE
vynalezce
Profil
editovat to pude těžko by se tam pletlo html a když to protahneš htmlspecialchars() nebude to fungovat(v případě že se vše uloží do jednoho souboru i s úpravou vzhledu)
takže leda do databáze nadpis autor atd. a adresa souboru (číslo souboru[123456.html] se ti může ukládat do souboru a vždy se k němu přičte jedna) potom do textovejch polí z databáze naleješ autora atd.
a do textarey text článku(fread)
Truuhlik
Profil
Ok, ok - rozumím ti jak to myslíš - já mám hlavně problém v tom, že jenom samotné vytvoření souboru je už bez databáze - takže nevím jak to mám vlastně udělat - nevěděl bys náhodou jak? fakt promiň že s tím otravuju ale nějak jsem v koncích
Alphard
Profil
I když by šlo parsovat i to html, tak je to zbytečně složité. Nejlepší by bylo ukládat do databáze. Pokud trváte na souboru, tak použít třeba JSON. S funkcemi json_decode() a json_encode() by se dal snadno zajistit převod a s daty pracovat jako s poli. Předpokladem je, že data nebudou moc objemná, pak už jedině databáze.
Truuhlik
Profil
Fjůha, tak nelepší způsob se mi zdá rozhodně ta databáze - to co psal vynalezce, chtěl jsem se zeptat, uměl byste někdo něco takového napsat - já se o to pokouším, ale nějak pořád nechápu souvislost jak to udělat (úplný začátečník sice nejsem, ale přece se někdy nějaká rada hodí)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: