Autor | Zpráva | ||
---|---|---|---|
ala Profil |
#1 · Zasláno: 22. 5. 2005, 15:23:13
Mám jednoduchou navstevni knihu, ale nejdou mi v ni odeslat zpravy... Muzete se na to nekdo mrknout?
Je to tady |
||
Hugo Profil |
#2 · Zasláno: 22. 5. 2005, 15:29:57
Pokud sem nehodis kod, tak ti tu asi nikdo moc nepomuze :-). Z HTML toho moc zjistit nejde.
|
||
Leo Profil |
#3 · Zasláno: 22. 5. 2005, 15:38:55
Tak tak, nedela to vubec nic, takze tezko rict kam jde ten kour :-) Leo
|
||
Rick Profil * |
#4 · Zasláno: 22. 5. 2005, 17:09:13
Chyba je podle mě v kontrole nevyplněných polí. Ne v php
|
||
none Profil |
#5 · Zasláno: 22. 5. 2005, 17:21:20
Chyba je v tom ze soubor book.dat ma byt uplne prázdny a nema byt v nem nejaky php skript co ma potom ten guest book delat ze?
myslim ze je prave v tom chyba |
||
ala Profil |
#6 · Zasláno: 22. 5. 2005, 18:27:58
Zdrojový kod:
<? Header("Expires: ".GMDate("D, d M Y H:i:s")." GMT"); ?> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1250"> <LINK href="styl.css" rel="stylesheet" type="text/css"> <title>Kniha návštev - PHP</title> </head> <body> <table width="500" align="center"> <tr> <td width="500"> <center><font class=nadpis>Kniha návštev</font> <br><br> <font class="male"></font></center> <hr color="#00008B"> <br> <table border="0" cellspacing="0" cellpadding="0" align="center"> <form action="" method="post"> <tr> <td width=120 class=povinne> Jméno: </td> <td> <input type="text" name="jmeno" size="30" value="<? if ($jmeno=="" || $email=="" || $popis==""): //pokud nebudou zadány všechny povinné údaje, objeví se formulář znovu (s údaji, které již byly vyplněny) echo $jmeno; endif; ?>"> </td> </tr> <tr> <td width=120 class=povinne> E-mail: </td> <td> <input type="text" name="email" size="30" value="<? if ($jmeno=="" || $email=="" || $popis==""): //pokud nebudou zadány všechny povinné údaje, objeví se formulář znovu (s údaji, které již byly vyplněny) echo $email; endif; ?>"> </td> </tr> <tr> <td width=120 class=nepovinne> Web (i s http://): </td> <td> <input type="text" name="web" size="30" value="<? if ($jmeno=="" || $email=="" || $popis==""): //pokud nebudou zadány všechny povinné údaje, objeví se formulář znovu (s údaji, které již byly vyplněny) echo $web; endif; ?>"> <input type="hidden" name="odeslano" value="ano"> </td> </tr> <tr> <td valign=top width=120 class=povinne> Text zprávy: </td> <td> <textarea cols="29" rows="5" name="popis"><? if ($jmeno=="" || $email=="" || $popis==""): //pokud nebudou zadány všechny povinné údaje, objeví se formulář znovu (s údaji, které již byly vyplněny) echo $popis; endif; ?></textarea> </td> </tr> <tr> <td width=120> </td> <td> <center><input type="submit" value="Odeslat"> <input type="Reset" value="Vymazat"></center> </td> </tr> </form> </table> <? if ($odeslano=="ano"): if ($jmeno=="" || $email=="" || $popis==""): //kontrola zadaných udajů, pokud nebyly zadány všechny povinné údaje, do knihy se nic nezapíše echo "<center><br><font class=male>musíte vyplnit všechny povinné údaje<br></font></center>"; else: //včechny povinné údaje jsou zadány $name = "<font class=jmeno>$jmeno</font><BR>\n"; //do proměnné "name" uloží Jméno, zformátuje jej pomocí tagu <FONT> a otevře nový řádek $e_mail = "<A class=odkaz HREF=mailto:$email>$email</A><BR>\n"; //do proměnné "e_mail" uloží Email, zformátuje jej pomocí tagu <FONT>, přidá odkaz typu MAILTO a otevře nový řádek if ($web!=""): //pokud byl zadán Web, vytvoří proměnnou "www" $www = "<A class=odkaz HREF=\"$web\">$web</A><BR>\n"; //do proměnné "www" uloží Web, zformátuje jej pomocí tagu <FONT>, přidá odkaz na danou stránku a otevře nový řádek endif; $cas = "<font class=cas>" . Date("j. " . "m. " . "Y, " . "H:i:s") . "</font><BR>\n"; //do promenne "cas" uloží aktuální datum a čas ve formátu (př. 5. 11. 2000, 13:54:53), zformátuje a načne další řádek $popis2 = NL2BR(HTMLSpecialChars($popis)); //změna konců řádků na tagy <BR> a ostraní znaky, které by mohly porušit formátování $zprava = "<BR><font class=text>$popis2</font><BR><BR><HR color=\"#00008B\"><BR>\n\n"; //do proměnné "www" uloží $popis2, zformátuje, přidá čáru, která bude oddělovat příspěvky a otevře nový řádek $write = StripSlashes($name . $e_mail . $www . $cas . $zprava); //do proměnné "write" uloží všechna data, která se budou zapisovat a odstraní escape sekvence if (File_Exists ("book.dat")): //existuje soubor book.dat $fp = FOpen ("book.dat", "r"); //otevře soubor book.dat pro čtení $data = FRead ($fp, FileSize("book.dat")); //přečte data ze souboru a uloží do proměnné "data" - kvůli tomu aby se zobrazoval poslední příspěvek nahoře FClose($fp); //zavře book.dat endif; $fp = FOpen ("book.dat", "w"); //otevře book.dat pro přepis nebo vytvoření FWrite ($fp, $write.$data); //zápis do souboru book.dat (nejprve aktuální příspěvek, poté předešlý obsah souboru book.dat) FClose ($fp); //zavře soubor book.dat endif; endif; ?> <hr color="#00008B"><br> <? if (File_Exists ("book.dat")): //existuje soubor book.dat $fp = FOpen ("book.dat", "r"); //otevře soubor book.dat pro čteni FPassThru($fp); //vypíše obsah souboru endif; ?> </td> </tr> </table> </body> </html> |
||
Icepoint Profil |
#7 · Zasláno: 23. 5. 2005, 10:23:02
hmmm, tenhle guestbook jsem uz nekde videl :-), tos stahnul z jaknaweb.com co ?? uz jsem nasel chybu ... kdyz tam das <FORM ACTION=""> tak se ti formular odesle "nikam", tzn ani na tu samou stramku... pbud tam dej <FORM ACTION="kniha.php"> nebo tam polozku action nedavej vubec ... (to se ti pak odkaze na tu samou stranku)... pak by to melo fagat ...
|
||
printf Profil |
#8 · Zasláno: 23. 5. 2005, 12:19:00
taky lze předpokládat, že soubor book.dat musí mít práva pro zápis, ale to asi má, jinak by to hlásilo chybu...
|
||
mat Profil |
#9 · Zasláno: 23. 5. 2005, 13:09:52
printf
no, tenhle problém jsem měl taky, s touhle samou knihou - a opravdu stačilo změnit práva book.dat na 777 a šlapalo to... |
||
Icepoint Profil |
#10 · Zasláno: 23. 5. 2005, 13:42:36
pravda pravdoucí, ale tu polozku acton taky zmen ...
|
||
ala Profil |
#11 · Zasláno: 23. 5. 2005, 16:16:42
Dik:)
|
||
ala Profil |
#12 · Zasláno: 23. 5. 2005, 16:31:25
Me to nejak nefunguje:(
|
||
ala Profil |
#13 · Zasláno: 24. 5. 2005, 19:24:08
Jak se meni prava_???
|
||
printf Profil |
#14 · Zasláno: 24. 5. 2005, 23:23:01
Total commander:
označ soubor, klikni v menu Soubory/Změna atributů a nastav co je třeba Internet Explorer (jeho FTP klient): označ soubor (se shiftem nebo ctrl), klikni na některý pravým tlačítkem, zvol vlastnosti (nebo alt+enter) a nastav co je třeba |
||
Časová prodleva: 3 dny
|
|||
ala Profil |
#15 · Zasláno: 28. 5. 2005, 08:06:22
Mě to pořád nefunguje:(
|
||
Časová prodleva: 2 roky
|
|||
dfgfgb Profil * |
#16 · Zasláno: 15. 2. 2007, 19:12:26
[pre][/pre][i][/i]xgnxygn
|
||
Časová prodleva: 17 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0