Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Tiedoston uploadaus selaimesta

jsilvo74 [30.10.2003 11:13:35]

#

Hei kaikille

Otin tuolta koodivinkeistä tällaisen scriptin:

*** index.php

<?php
/*
feedback: http://cgi.evitech.fi/~k0101030
*/
$max_file_size = 512000;

if ($act == "Luo")
    {
    if( ! mkdir("upload/".$uusikansio, 0777))
        {
        $text = "Kansion<strong>\"".uusikansio."\"</strong> luominen epäonnistui.";
        }
    else
        {
        $text = "Kansio <strong>\"".$uusikansio."\"</strong> lisätty.";
        }
    chmod("upload/".$uusikansio, 0777);
    }



?>
<html>
<head>
<title>Upload</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<?php print " Suurin sallittu tiedostokoko ".($max_file_size/1000)." Kt."; ?>
<table width="100%" border="2" bordercolor="#CCCCCC">
  <tr bgcolor="#CCCCCC" >
    <td width="33%">
<div align="center"><strong>Näytä</strong></div></td>
    <td width="34%"><div align="center"><strong>Upload</strong></div></td>
    <td width="33%"><div align="center"><strong>Luo uusi kansio</strong></div></td>
  </tr>
  <tr>
    <td><form name="form2" method="post" action="<?php print $PHP_SELF; ?>" target="">
        <div align="center">Kansion
          <select name="kansio" id="kansio">;
            <?php    $a=@opendir(upload);
            while($file=readdir($a))
            {
            if(ereg("^\\.",$file)) continue;
            print "<option value=\"upload/".$file."/\">".$file."</option>";
            }
            closedir($a); ?>
          </select>
          sisältö
          <input name=Submit type="submit" id="Submit" value="  Ok  ">
        </div>
      </form></td>
    <td><form enctype="multipart/form-data" action="<?php print $PHP_SELF; ?>" method="POST">
          <input type="hidden" name="MAX_FILE_SIZE" value="<?php print $max_file_size; ?>" >
          <input name="act" type="hidden" value="save">
        <div align="center">Tiedosto:
          <INPUT name="tiedosto" type="file">
          Kansioon
          <select name="kansio" id="kansio">";
            <?php
            $a=opendir(upload);
            while($file=readdir($a))
            {
            if(ereg("^\\.",$file)) continue;
            print "<option value=\"upload/".$file."/\">".$file."</option>";
            }
            closedir($a); ?>
          </select>
          <input type="submit" value="Upload">

        </div>
      </form></td>
    <td>
      <form name="form1" method="post" action="<?php print $PHP_SELF; ?>">
        <div align="center">
          <input name="act" type="hidden" value="Luo">
          Kansion nimi :
          <input type="text" name="uusikansio">
          <input type="submit" value=" Luo ">
        </div>
      </form></td>
  </tr>
</table>
<?php
function avaa_kansio($kansio)
    {
    $a=@opendir($kansio);
    print "<p>Kansio: <strong>".$kansio."</strong></p>\n";
    print "<form name=\"form\" method=\"post\" action=\"".$PHP_SELF."\">\n";
    print "<input name=\"act\" type=\"hidden\" value=\"poista\">";
            print "<table width=\"0%\" border=\"0\">
                    <tr>
                        <td></td>
                        <td align=\"center\"><strong>Tiedosto</strong></td>
                        <td></td>
                        <td align=\"left\"><strong>Koko</strong></td>
                        <td align=\"left\"><strong>Lataukset</strong></td>
                    </tr>\n";
    $a=@opendir($kansio);
        while($file=readdir($a))
            {
            $koko = number_format(filesize($kansio.$file)/1000);
            if(ereg("^\\.",$file)) continue;
            print "    <tr>
                        <td><input type=\"radio\" name=\"poista\" value=\"".$file."\" onclick='form.submit();'></td>
                        <td><a href=\"load.php?dir=".$kansio."&filu=".$file."\" target=_blank>".$file."</a></td>
                        <td width=\"8\"></td>
                        <td>$koko Kt</td>
                        <td align=\"center\">";
                            $filename = "dat/".$file.".dat";
                            $handle = fopen($filename, 'r');
                            $laskuri = fgets($handle, 1024);
                            if ($laskuri == "") {$laskuri = 0;}
                            print $laskuri."
                        </td>
                    </tr>\n";
                }
    closedir($a);
    print "<input type=\"hidden\" name=\"kansio\" value=\"".$kansio."\">\n";
    print "</table></p> \n";
    print "</form>\n";
    }


print $text."<br>\n";
if (isset($kansio))
{
if ($act == "save")
            {
            if ( ! isset($tiedosto)) die("Ei tiedostoa.");
if ( file_exists($kansio.$HTTP_POST_FILES["tiedosto"]["name"]))
die ("Kansiossa <strong>".$kansio."</strong> on jo tiedosto <strong>".$HTTP_POST_FILES["tiedosto"]["name"]."</strong>");
            copy($tiedosto,$kansio.$HTTP_POST_FILES["tiedosto"]["name"]) or die("<strong>Error. Tarkista ettei tiedosto ole liian iso</strong>");
            touch("dat/".$HTTP_POST_FILES["tiedosto"]["name"].".dat", 0777);
            chmod("dat/".$HTTP_POST_FILES["tiedosto"]["name"].".dat", 0777);
            print "Tiedoston <strong>\"".$HTTP_POST_FILES["tiedosto"]["name"]."\"</strong> lataaminen onnistui.";
            avaa_kansio($kansio);
            }
elseif ($act == "poista")
            {
            unlink($kansio.$poista) or die("<h3>Tiedoston ".$poista." poistaminen epäonnistui</h3>" );
            unlink("dat/".$poista.".dat") or die("<h3>Dat-tiedoston poistaminen epäonnistui</h3>" );
            print "<strong>$poista</strong> poistettu!";
            avaa_kansio($kansio);
            }
else
    {
    avaa_kansio($kansio);
    }
}
?>
<p><font size="1"><a href="http://cgi.evtek.fi/~k0101030/">© 2003 Aapo Vuoristo</a></font></p>
</body>
</html>

muuten tämä toimii loistavasti mutta jos yritän ladata vähänkin isompaa tiedostoa niin ei onnistu olen luonnollisesti muuttanut tuota $max_file_size muuttujaa isommaksi ja php.inissä on upload_max_filesize = 100M

Mistähän tämä mahtanee johtua? Olisin kovasti tyytyväinen jos joku osaisi neuvoa.

Meitsi [30.10.2003 14:05:11]

#

lues täältä: https://www.ohjelmointiputka.net/keskustelu/1927-uploadi2

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta