BOOK <=
10 příspěvků
Archiv diskusního fóra
Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.
-
udelal jsem si tenhle skript a kdyz pridam prispevek, tak se priradi na konec souboru a rad bych vedel jak to zmenit aby se prirazval nahoru. <form action="<?php echo $PHP_SELF; ?>" method="post"> <font face="Bank Gothic LT AT">NICK</font> <input type="text" value="<?php echo $jmeno; ?>" name="jmeno"><br> <font face="Bank Gothic LT AT">EMAIL</font><input type="text" value="<?php echo $email; ?>" name="email"><br> <font face="Bank Gothic LT AT">TEXT</font><br> <textarea name="text" rows=5 cols=40></textarea> <input type="submit" name="zapsat" value="Odeslat zprávu"> <br><br><br></center> PŘÍSPĚVKY: <img src="http://vesmir.webz.cz/OBRAZKY/booklista.jpg"> <?php if ($zapsat): $fp = fopen ("./kniha.dat", "a"); if (!$fp) exit; $prispevek = "<i><li><p align=\"left\"><font color=\"red\" size=5 face=\"Bank Gothic Lt At\">" . htmlspecialchars ($jmeno) . "</font><li></i>"; if ($email) echo"<b>"; $prispevek = "<a href=\"mailto:" . htmlspecialchars ($email) . "\">" . $prispevek . "</a>"; $prispevek .= ", " . date("j.n.Y G:i:s") . "\n</font><br>" . nl2br(htmlspecialchars ($text)) . "<br><img src=\"http://vesmir.webz.cz/OBRAZKY/booklista.jpg\">\n"; fputs ($fp, $prispevek); fclose ($fp); endif; ?> <?php if (File_exists ("./kniha.dat")) readfile ("./kniha.dat"); ?> <?php if ($zapsat): $fp = fopen ("./kniha.dat", "a"); if (!$fp) exit; endif; ?>
-
Cusik jestli chces aby se ti to priradilo na zacatek souboru tak musis otevrit ten soubor pro! r+ - Otevřít pro čtení a zápis; nastaví ukazatel na začátek souboru.
-
Blbost, to nepůjde. jak dáš parametr Fopen jako a tak to bude vždycky na konec. Už to tady bylo mockrát - musíš obsah souboru uložit do řetězce pak soubor přepsat novými daty a za ně pak uložit ten původní řetězec. Prostě: if (File_Exists ("./bok.dat")): //existuje soubor? $fp = FOpen ("./bok.dat", "r"); //otevře soubor pro čtení $obsah = FRead ($fp, FileSize("./bok.dat")); //přečte data ze souboru a uloží do proměnné $obsah FClose($fp); //zavře soubor endif; $fp = FOpen ("./bok.dat", "w"); //otevře pro přepis nebo vytvoření FWrite ($fp, $new.$obsah); //zápis do souboru $new na začátek pak $obsah FClose ($fp);
-
Ale daleko lepší je zapisovat do souboru každý příspěvek na nový řádek a vždycky na konec souboru. Potom načíst soubor do pole pomocí File() a to pole potom cyklem vypsat od posledního řádku k prvnímu. A je to.
-
nemohl bys mi ten skript zkombinovat nejak s tim, co jsem napsal ja? asi to nedam do kupy :((
-
tak uz nic, ono fakt stacilo jenom r+ :)))))))
-
tak jsem se spletl. to r+ nestaci :((((((
-
<HTML><i>nemohl bys mi ten skript zkombinovat nejak s tim, co jsem napsal ja?</i> tvuj source predelavat nebudu,ale snadno ti to npisu jinak: // ULOZENI: $f = fopen("soubor.dat", "a"); flock($f, LOCK_EX); fwrite($f, "Toto je testovaci prizpevek\n"); flock($f, LOCK_UN); fclose($f); // CTENI: $dat = file("soubor.dat"); $dat = array_reverse($dat); // VYPSANI: foreach($dat as $val) { echo nl2br($val); }</HTML>
-
udelal jsem to takhle ale stejne to nefakci: <table border=10 bordercolor="#409ADA"> <font color="white"> <tr><td bgcolor="7CB6EF"><p align="right"> <form action="<?php echo $PHP_SELF; ?>" method="post"> <font face="Bank Gothic LT AT">NICK</font></td><td bgcolor="7CB6EF"> <input type="text" value="<?php echo $jmeno; ?>" name="jmeno"> </td></tr> <tr><td bgcolor="7CB6EF"><p align="right"> <font face="Bank Gothic LT AT">EMAIL</font></td><td bgcolor="7CB6EF"><input type="text" value="<?php echo $email; ?>" name="email"> </td></tr> <tr><td bgcolor="7CB6EF"><p align="right"> <font face="Bank Gothic LT AT">TEXT</font><br></td><td bgcolor="7CB6EF"> <textarea name="text" rows=5 cols=40></textarea> </td></tr> <tr><td align="center" bgcolor="7CB6EF"><p align="right"> <input type="submit" name="zapsat" value="Přidej"> </td><td bgcolor="7CB6EF"></td></tr> </table> <br><br><br></center> <font color="gold"><b>PŘÍSPĚVKY:</font></b> <img src="http://vesmir.webz.cz/OBRAZKY/booklista.jpg"> <font color="lime"> <?php $f = fopen("kniha.dat", "a"); flock($f, LOCK_EX); fwrite($f, "Toto je testovaci prizpevek\n"); flock($f, LOCK_UN); fclose($f); $prispevek = "<i><li><p align=\"left\"><font color=\"red\" size=5 face=\"Bank Gothic Lt At\">" . htmlspecialchars ($jmeno) . "</font></i>"; if ($email) echo "<b>"; $prispevek = "<a href=\"mailto:" . htmlspecialchars ($email) . "\">" . $prispevek . "</a><br><a href=\"mailto:" . htmlspecialchars ($email) . "\">" . "<li><img src=\"http://vesmir.webz.cz/OBRAZKY/ico_mail_new2.gif\" border=0>" . "</a>"; $prispevek .= "<li><font color=\"#D2D2D2\">" . date("j.n.Y G:i:s") . "\n</font></font><br><font color=\"#8AA5C4\">" . nl2br(htmlspecialchars ($text)) . "<br></font><img src=\"http://vesmir.webz.cz/OBRAZKY/booklista.jpg\">\n"; fputs ($fp, $prispevek); fclose ($fp); endif; ?> <?php $dat = file("kniha.dat"); $dat = array_reverse($dat); ?> <?php foreach($dat as $val) { echo nl2br($val); } ?>
-
>fputs ($fp, $prispevek); >fclose ($fp); tohle je sice hezke ale kde nejaky ten soubor otviras? neukldej do souboru HTML kod ale pouze cisty text ktery si az potom rozsejes kam potrebujes...