upload souboru na server

3 příspěvky

Archiv diskusního fóra

Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.

  1. Cau Nevite nekdo jak vyresit upload souboru na server s tim, ze se nahraje a zaznam o nem se umisti do databaze? Uz jsem se o to pokousel, ale memuzu to rozchodit. Diky moc.
  2. Hod sem skript, kterym ses o to pokousel...
  3. <?php # Výpis kódu 11.7 - pridat_soubor.php // Tato stránka umožní uživateli odeslat soubor na server. // Nastavit záhlaví a titul stránky. $titul_stranky = 'Odeslat soubor na server'; include ('zahrnout/zahlavi.html'); if (isset($_POST['odeslat'])) { // Ošetřit data formuláře. require_once ('mysql_spojit.php'); // Připojit k databázi. // Funkce pro ošetření problematických znaků. function opravit_chyby ($data) { global $dbc; if (ini_get('magic_quotes_gpc')) { $data = stripslashes($data); } return mysql_real_escape_string (trim ($data), $dbc); } // Konec funkce opravit_chyby(). // Ověřit popis (nepovinné). if (!empty($_POST['popis'])) { $p = opravit_chyby($_POST['popis']); } else { $p = ''; } // Přidat záznam do databáze. $dotaz = "INSERT INTO prijato (nazev_souboru, velikost_souboru, typ_souboru, popis, datum_prijeti) VALUES ('{$_FILES['naserver']['name']}', {$_FILES['naserver']['size']}, '{$_FILES['naserver']['type']}', '$p', NOW())"; $výsledek = @mysql_query ($dotaz); if ($výsledek) { // Vytvořit název souboru. $přípona = explode ('.', $_FILES['naserver']['name']); $id_přenosu = mysql_insert_id(); // ID přenosu. $soubor = $id_přenosu. '.'. $přípona[1]; // Přenést soubor. if (move_uploaded_file($_FILES['naserver']['tmp_name'], "../prijato/$soubor")) { echo '<p>Soubor byl odeslán!</p>'; } else { echo '<p><font color="red">Soubor nelze přenést.</font></p>'; // Odstranit záznam z databáze. $dotaz = "DELETE FROM prijato WHERE id_prijeti = $id_přenosu"; $výsledek = @mysql_query ($dotaz); } } else { // Pokud se něco pokazilo. echo '<p><font color="red">Váš příspěvek nelze zpracovat kvůli systémové chybě. Omlouváme se.</font></p>'; } mysql_close(); // Zavřít připojení k databázi. } // Konec zpracování dat z formuláře. ?> <form enctype="multipart/form-data" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post"> <input type="hidden" name="MAX_FILE_SIZE" value="524288"> <fieldset><legend>Vyberte soubor, který chcete odeslat na server:</legend> <p><b>Soubor:</b> <input type="file" name="naserver" /></p> <p><b>Popis:</b> <textarea name="popis" cols="40" rows="5"></textarea></p> </fieldset> <div align="center"><input type="submit" name="odeslat" value="Odeslat" /></div> </form><!-- Konec formuláře --> <?php include ('zahrnout/pata.html'); // Přidat patu HTML. ?>

← Zpět na všechna témata