pomoc

Potřebuji udělat něco jako knihu návštěv, ale chci aby si každý do ní mohl přidat svůj obrázek tím že do políčka přidá adresu toho obrázku, ale nevím jak to napsat, vypadá to takle:

1. formulář:
<form name="form" method="post"
action="index.php3?action=uloz">
<table><tr><td>Nadpis:</td>
<td><input type="text" name="jmeno" size="50" /</td>
</tr><tr><td>Adresa</td>
<td><input type="text" name="mail" size="50" /></td>
</tr><tr></tr>
</tr><tr><td>Náhled</td>
<td><input type="text" name="picture" size="50" /></td>
</tr><tr></tr>
<tr><td valign="top">Popis</td>
<td><textarea name="vzkaz" cols="40" rows="5">
</textarea></td></tr>
<tr><td></td><td>
<input type="submit" value="odeslat"></td>
</tr>
</table>
</form>
<table>

2. Php kód:

<?php
if ($action=='uloz'):
$soubor = "kniha.body";
@$ext = fopen($soubor, "r");
@$obsah = fread($ext, filesize($soubor));
@FClose($ext);
if (($vzkaz=="") or ($jmeno=="")):
echo "<h6>Nejsou vyplněny požadované údaje</h6>";
else:
$ext = fopen("kniha.body", "w");
$mail = HTMLSpecialCHars($mail);

if($mail == "")
$mail = "";
else $mail = "<a href=\"$mail\">".$mail."</a>";
$jmeno = HTMLSpecialCHars($jmeno);
$vzkaz = HTMLSpecialCHars($vzkaz);
$tab = "<b><tr><td width=\"300\" >".$jmeno."</td></b>
</tr><tr><td colspan=\"2\">".$vzkaz."</td>
</tr><tr><td width=\"150\">".$mail."</td>
</tr><tr><td colspan=\"2\"><hr size=\"1\"></td>
</tr>";
fputs($ext, "$tab");
fputs ($ext, "$obsah");
FClose($ext);
@$ext = fopen("kniha.body", "r");
@fpassThru($ext);
endif;
else: @$ext = fopen("kniha.body", "r");
@fpassThru($ext); endif;
?>

No a potřebuji vědět, jak to do toho php kódu zapsat.
Nezkousel jsem to, ale snad to bude fungovat. Btw. opravil jsem ti tam kraviny, treba jako @$ext (proc je tam ten zavinac?) , zbytecne nekolikrat volas fopen a fclose na ten samy soubor, mas nejak divne udelany ty vetve u podminek, <h6> neslouzi k zvyrazneni pisma, atd. ...
Jo a tu tabulku do formulare si dopln sam.

<form name="form" method="post" action="index.php3?action=uloz" enctype='mulitpart/form-data'>

Nadpis: <input type="text" name="jmeno" size="50" />
Adresa: <input type="text" name="mail" size="50" />
Náhled (jpg): <input type='file' name='userfile' size='50' />
Popis: <textarea name="vzkaz" cols="40" rows="5"></textarea>
<input type="submit" value="odeslat">

</form>

<?php
// vytvor si novy podadresar "uploaded"!


$ext = @fopen($soubor, "r");

if ($action=='uloz'):
     $soubor = "kniha.body";
     $obsah = @fread($ext, @filesize($soubor));
     if (($_POST['vzkaz']=="") or ($_POST['jmeno']==""))
          echo "<strong>Nejsou vyplněny požadované údaje.</strong>";
     else { //if (($_POST['vzkaz']=="") or ($_POST['jmeno']==""))
          $mail = htmlspecialchars($_POST['mail']);
          if($mail <> "") $mail = "<a href=\"$mail\">".$mail."</a>";
          $jmeno = htmlspecialchars($_POST['jmeno']);
          $vzkaz = htmlspecialchars($_POST['vzkaz']);
          // zpracovani uploadu souboru:
          if ($_FILES["userfile"]["error"] == 0)
          {
               chmod($_FILES['userfile']['tmp_name'], "0777");
               // vytvori nahodne jmeno pro novy soubor
               $pattern = "1234567890abcdefghijklmnopqrstuvwxyz";
               for($i=0;$i<16;$i++) $nove_jmeno .= $pattern{rand(0,35)};
               if (!move_uploaded_file($_FILES['userfile']['tmp_name'], "uploaded/$nove_jmeno.jpg"))
               // neuspech
               echo "<strong>Chyba: soubor nebyl uploadován.</strong>"
          } // if ($_FILES["userfile"]["error"] == 0)
          // nechapu u $tab ten colspan='2'... kdyz v jinych radcich mas pouze jednu bunku
          $data = "<tr><td width='300'><b>$jmeno</b></td></tr>
<tr><td colspan='2'>$vzkaz</td></tr>
<tr><td width='150'>$mail</td></tr>
<tr><td><a href='uploaded/$nove_jmeno.jpg'>Náhled</a></td></tr>
<tr><td colspan='2'><hr size='1'></td></tr>";
          $data .= $obsah;
          @fputs($ext, "$tab");
     } //if (($_POST['vzkaz']=="") or ($_POST['jmeno']=="")) - else
endif; //if ($action=='uloz')

@fpassthru($ext);
@fclose($ext);
?>
Ne, takle to nefunguje, chtěl bych to aby tam bylo políčko, kam napíše třeba http://katalog.xf.cz/obrazek.jpg a ten obrázek se tam bude zobrazovat (uložen bude někde na jeho ftp)
Asi myslí "Gravatary" ? Nebo ne ?
no tak normalne tam udelej textovej input, do kteryho uzivatel zada tu adresu, a pri ukladani (tak, jak to delas ty) z toho udelej <img src="$adresa" />... co je na tom tezkyho?
Ja php jeste moc neumim... muzes mi to cely napsat?
Tak se to nauc. My nebudeme porad za tebe psat zdrojaky.
Prosim... ja to potřebuju... slibuji že se to brzy naučim... vzdyt je to kratky pls
Jo a chtěl jsem se zeptat, jak udělám něco co je tady na wz v adminu, abych udělal něco, čím by jsem ze stránek mohl přidávat soubory do určitého adresáře tlačítkem procházet, tam by si vybrali něco ze svého pc a tlačítko nahrát a odeslali by to ke mě do nějakého adresáře, už jsem to několikrát skoušel podle toho co je v te administraci, ale nikdy mi to nefungovalo, nevíte jak to udělat?
http://www.linuxsoft.cz/article.php?id_article=310
http://www.php.net/manual/cs/features.file-upload.php
Sedr: no hele, s tim poslednim kodem sem se psal taky docela dlouho, a ty reknes, ze se ti to nelibi a ob dva prispevky zadas to, co se ti predtim tak nelibilo. To si snad delas srandu, ne?
Jo, tak promiň, ale ja tohle chtěl k něčemu jinému a návíc mi ten tvůj kód (nejspíše mojí chybou) nefunguje a nevim jak to zprovoznit. Mohl by jsi mi to někde zprovoznit? Abych viděl jak to udělat pls. Jinak jsem nechtěl říct, že je to špatné, ale připadá mi to složité a nejsem si jistej, jestli bych to tak udělal, proto jsem to chtěl udělat jenom tim <img src="$adresa" />, (ale ani to mi nefunguje). Docela tragédie co, html je už docela v poho... ale to php :(