ugrás a tartalomhoz

fájl feltöltés

Metatron · 2004. Május. 24. (H), 21.52
Sziasztok

Eddig nemnagyon foglalkoztam weboldalszerkesztéssel, de most belevágtam. És szeretnék file feltöltést varázsolni az oldalamra. Ehhez szeretnék egy pici segítséget kérni. Lehetőleg magyar nyelven, mert angolul nemnagyon tudok. :(
 
1

php manual? :)

T.G · 2004. Május. 25. (K), 01.01
Valld be, hogy nem nézted meg a hivatalos doksit! :)
http://hu.php.net/manual/hu/features.file-upload.php
2

forráskód így kicsit egyszerűbb

omelon · 2004. Júl. 8. (Cs), 16.48
Nekem is nagyon sokáig tartott míg el tudtam készíteni az első feltöltésemet seholsem találtam érthető leírást :)

Itt van amivel én szoktam feltölteni. 2 fájl kell egy űrlap amivel kiválsztja hogy mit is szeretne feltölteni és egy php ami feldolgozza

Hmtl file kódja

<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" >
<table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0">
  <tr>
    <td bgcolor="#006600"><form action="ffeldolgoz.php" method="post" enctype="multipart/form-data" name="urlap" id="urlap">
        <table border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#999999">
          <tr>
            <td height="30"><table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0">
                <tr bgcolor="#FFCC33">
                  <td><div align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>&nbsp;K&eacute;p
                      1</strong></font></div>
                    <div align="left"> </div></td>
                  <td><div align="right"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong></strong></font><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong><font color="#000000" size="1">*
                      </font></strong></font><font size="1" face="Verdana, Arial, Helvetica, sans-serif">
                      </font><font size="1" face="Verdana, Arial, Helvetica, sans-serif">
                      <input name="file1" type="file" id="file1" size="15" value=''>
                      </font> </div></td>
                  <td width="10">&nbsp;</td>
                </tr>
              </table></td>
          </tr>
          <tr>
            <td height="20" valign="middle"><strong><font color="#000000" size="2" face="Verdana, Arial, Helvetica, sans-serif"></font></strong>
              <table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0">
                <tr>
                  <td width="10">&nbsp;</td>
                  <td><strong><font color="#000000" size="2" face="Verdana, Arial, Helvetica, sans-serif"><font size="1">*
                    nem k&ouml;telez&otilde;</font></font></strong></td>
                  <td width="10">&nbsp;</td>
                </tr>
              </table></td>
          </tr>
          <tr>
            <td height="30" bgcolor="#CCCCCC"> <div align="center">
                <table width="100%" border="0" cellspacing="0" cellpadding="0">
                  <tr>
                    <td width="10">&nbsp;</td>
                    <td> <div align="center">
                        <input type="submit" name="submit" value="Felad&aacute;s">
                      </div></td>
                    <td width="10">&nbsp;</td>
                  </tr>
                </table>
              </div></td>
          </tr>
        </table>
      <option value=0></option>
      </form></td>
  </tr>
</table>
</body>
</html>


Fontos!!!
<form action="ffeldolgoz.php" sorban határozod meg hogy mi lesz a lap ami feldolgozza szoval annak megfelelő legyen a php neve

Php kódja

<html>
<head>
</head>
<body>
<?php
// KÉP 1 FELTÖLTÉSE ELEJE
  if ($_FILES['file1']['name'] == '') //adatbázisnak elkészíti az elérési útvonalat eleje
   {
   $kep1='';
   }
  else
   {
 mkdir('hkepek/'.$aktid ,0777);  //aktuális könyvtár létrehozása
  $konyvtar ='hkepek/'.$aktid.'/';
  if(!@$_FILES['file1']['error'] &&@copy($_FILES['file1']['tmp_name'], $konyvtar."01.jpg"));
  $kep1="hkepek/".$aktid."/01.jpg"; //adatbázisnak elkészíti az elérési útvonalat vége
  $kep = $kep1;
  $size = getimagesize($kep);
  if ($size[0]> 640)
   {
   $forras = imagecreatefromjpeg($kep);
   $szorzo = "1";
   $szorzo_thumb = "1";

  if ($size[0] or $size[1] > 640)
   {
   if ($size[0] >= $size[1])
    {
    $szorzo = (640/$size[0]);
    $szorzo_thumb = (200/$size[0]);
    }

   if ($size[1] >= $size[0])
    {
    $szorzo = (200/$size[1]);
    $szorzo_thumb = (200/$size[1]);
    }
   }
  $ujszel = $size[0]*$szorzo;
  $ujmag = $size[1]*$szorzo;
  $ujnev = "$kep";
  $cel = imagecreatetruecolor($ujszel,$ujmag); //új képet létrehozza a memóriába
  imagecopyresampled($cel,$forras,0,0,0,0,$ujszel,$ujmag,$size[0],$size[1]); //ez méretezi át
  imagejpeg($cel,$ujnev,80); //ez írja ki a vinyora
  }
 
  $thumbszel = 300*$szorzo;
  $thumbmag = 300*$szorzo;
  $thumbnev = $konyvtar."thumb_01.jpg";
  $cel = imagecreatetruecolor($thumbszel,$thumbmag);
  imagecopyresampled($cel,$forras,0,0,0,0,$thumbszel,$thumbmag,$size[0],$size[1]);
  imagejpeg($cel,$thumbnev,80);
 }
 print("<img src=\proba/hkepek/01.jpg><p>");
 print("<img src=\proba/hkepek/thumb_01.jpg><p>");
// KÉP 1 FELTÖLTÉSE VÉGE


?>
</body>
</html>


Egy kis meglepetés is van benne mert kisképet is megcsinálja azonnal :) hát ennyi lenne ha valami nem érthető akkor írjál
3

Egyszerűbben?

Anonymous · 2004. Aug. 7. (Szo), 21.49
Ha tudnál egy olyat mutatni, ami nem méretezi át a képet, és nem csak képet tudsz vele feltölteni, megköszönném.
4

Fájl feltöltés

Anonymous · 2004. Nov. 23. (K), 15.21
Szia Omelon

Nincs jogom a szerveren könyvtár létrehozására, így kiszedtem a
mkdir('hkepek/'.$aktid ,0777); //aktuális könyvtár létrehozása -sort.

Igy a következő hibaüzenetet kaptam:
Warning: getimagesize: Unable to open 'hkepek//01.jpg' for reading. in /webhome/valami.hu/ffeldolgoz.php on line 19

Az- $aktid -változó hogyan került be?

Hálás lennék ha privben is válaszolnál....
styler##kukac##citromail.hu