Képkezelés elakadtam
Hali! Az a problémám, hogy van egy képfeltöltős formom és nem tölti fel a képeket, mert elvileg nem kapja meg a megfelelő paramétereket a move_uploaded_file. Itt a kód:Lécci segítsetek mert én mindjárt felakasztom magam :@
■
$sex = $_POST['nem'];
//Create mapp
$ekezetes=$_POST['vezeteknev'].substr($_POST['keresztnev'], 0, 1);
$mappa=strtolower($ekezetes);
for ($i=0;$i<strlen($mappa);$i++)
{
switch($mappa[$i])
{
case 'á':$mappa[$i]='a';break;
case 'é':$mappa[$i]='e';break;
case 'í':$mappa[$i]='i';break;
case 'ó': case 'ö': case 'ő': $mappa[$i]='o';break;
case 'ú': case 'ü': case 'ű': $mappa[$i]='u';break;
case ' ':$mappa[$i]='_';break;
}
}
chdir('models/'.$sex);
if (@mkdir($mappa))
{
chdir($mappa);
@mkdir('small');
}
else
{
print '<p>A mappa már létezik</p>';
}
//End creat map
$file1 = $_FILES['file']['name'][0];
$file2 = $_FILES['file']['name'][1];
$file3 = $_FILES['file']['name'][2];
$file4 = $_FILES['file']['name'][3];
$file5 = $_FILES['file']['name'][4];
$file6 = $_FILES['file']['name'][5];
$feltoltve=false;
$target= "models/".$sex."/".$mappa; //célmappa
$file_name = $file1; //a célfájlt nevezze el a $_FILES superglobal változóban lévo fájlnévre (a fájl eredeti nevére)
$tmp_dir = $_FILES['file']['tmp_name'][0]; //az ideiglenes mappa helyét a $tmp_dir változóban tároljuk
if(!preg_match('/(gif|jpe?g|png|bmp)$/i', $file_name)) //ha a fájlnak ($file_name-nek) a kiterjesztése nem gif, jpg/jpeg, png, akkor...
{
echo "Rossz fajltipus!"; //... "dobjon el" egy hibát
}
else
{
move_uploaded_file("../".$tmp_dir, $target . $file_name); //az ideiglenes mappából átteszi a fájlt a végleges mappába (a $target . $file_name összeilleszti a két stringet, így uploads/fajlnev-et kapunk)
$feltoltve = true; //a feltoltve változó true értéket kap
}
if($feltoltve) {
$utvonal = $target . $file_name;
echo 'Sikeresen feltöltötted a képet, megnézheted <a href="../'.$utvonal.'">itt</a>!';
}
Form
Azt átnéztem de ha tényleg
Így látatlanba
nem jó nem működik :/ Amúgy
<IfModule mod_rewrite.c>
RewriteEngine on
Options +FollowSymLinks
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/(.*) $1.php?rewrite=$2 [QSA]
DirectoryIndex index.php
</IfModule>
Ez szabályozza nekem ,hogy az URL-jeim így nézzenek ki : www.valami.hu/jelentkezes/
ez is
Tudom csak tesztelni akartam,
Általános megoldásként pedig
Ha sok file-t töltesz föl, akkor nagyon érdemes figyelni a php configban a post_max_size és az upload_max_filesize értékekre. Egyik file sem lehet nagyobb, mint az upload_max_filesize és az egész postolt cucc meg nem lehet nagyobb. mint a post_max_size.
var_dump-ot már próbáltam
szerintem itt a baj $tmp_dir
Igen azt már kiszedtem. Itt a
Ez pedig a jelenlegi hiba:
Vhogy nem jól néz ki a kód, az eredetiben is ilyen? (Megjegyzésben is vannak utasítások)
A hibaüzi: nem definiált "target" nevű változó a 72. sorban, vagyis hivatkoztál rá, de nem volt értéke. Ez csak php figyelmeztetés, de gondolkodj rajta.
Más: fenti tördelés miatt én nemigazán látom át a kódot, de fájlt feltölteni én úgy szoktam, hogy a $_FILES['file']['name'] -ből a basename() fv-el kiveszem a "szűz" fájlnevet, ezelé teszem a könyvtáradatokat, aztán mehet a move_uploaded_file().
Lehet, hogy tévedtem, de most nincs a közelemben konkrétum.
Bocsi igen ez csak egy
OK
Rájöttem a hibára de nem