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