Autor Zpráva
Ondřej Ryška
Profil
Zdravím,
mám problém s uploadem souboru. Kód který uvádím níže funguje (samozřejmě s úpravou URL na stránce s formulářem) na freehostingu webzdarma. Avšak na mojem virtuálním serveru který běží na ubuntu tento kód hází chybu.

<!DOCTYPE HTML>
<html>
  <head>
    <title></title>
    <meta http-equiv="Content-type" content="text/html; charset=utf-8">
    <meta name="Content-language" content="cs" />
  </head>
  <body>
    <form action="http://194.169.252.119/pokusUpload2.php" 
      enctype="multipart/form-data" accept="image/*" method="post"> 
      <input type="file" id="souborN" accept="image/*" name="souborN"/>
      <input type="submit" value="Odeslat">          
    </form>
  </body>
</html>


<!DOCTYPE HTML>
<html>
  <head>
    <title></title>
    <meta http-equiv="Content-type" content="text/html; charset=utf-8">
    <meta name="Content-language" content="cs" />
  </head>
  <body>
       <?php
        if (is_uploaded_file($souborN)) { 
          $soubor=move_uploaded_file($souborN, "./usersImages/souborN")
          or die ("Přenesený soubor nelze zkopírovat");
          chmod ("./usersImages/souborN", 0777);
          if($soubor == true){
            echo "Soubor byl úspěšně nahrán na server.";
          } 
        }
      ?>
  </body>
</html> 

Na webzdarma to normálně funguje ale na mojem serveru to vyhodí: Notice: Undefined variable: souborN in /var/www/pokusUpload2.php on line 10. Nejsem si jistý jestli je chyba nebo něco chybí v kódu, nebo jestli je třeba něco přenastavit v konfiguračních souborech apache. Se správou serveru mám málo zkušeností. Ale tu složku usersImages mám vytvořenou v adresáři /var/www, vlastníkem je root a práva jsou nastaveny pomocí chmod 777 usersImages. Nevíte co s tím? Díky
juriad
Profil
Regsiter globals
Raději oprav svůj skript.
Ondřej Ryška
Profil
juriad:
Ok díky. Takže jestli tomu dobře rozumím, lze problém vyřešit pomocí zapnutí globálních proměnných. Ale toto je nevhodný postup. Takže je lepší poslat to přes $_POST nebo $_FILES. Raději tedy opravit skript a nezapínat register globals. Chápu to dobře? Díky
jenikkozak
Profil
Ano, chápeš to správně.
Ondřej Ryška
Profil
Ok už to mám předělané na $_FILES a register globals sem nechal vypnuté.

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: