php-html form hiba
Hali!
Akadt egy kis problémám, nem látom hol a hiba, pls segítsetek.
Annyi a gond hogy van egy formom amiben egy file feltöltés, de a $_FILE[] üres.
<form method="POST" enctype="multipart/form-data" action="<?php echo($_SERVER['PHP_SELF']); ?>">
<tr><td>Termék képe:</td><td><input type="file" name="kep" /></td></tr>
<?php
if (isset($_POST[submit])){
$cim=$_POST[cim];
$leiras=$_POST[leiras];
$kategoria=$_POST[kategoria];
$file=$_FILES['kep']['name'];
print("kép:".$file);
}
?>
a gond az, hogy a $_FILE[]-n kívül, minden megkapja az értékét.
ha van valami 5let pls írjátok meg.
a táblázat minden sorát nem raktam be, formaság, csak azt ami érintett lehet a dologban.
A form
"http://localhost/oazis/admin_panel/index.php?page=felvitel"
ezen a linken kerül includolásra egy dobozban.
így nem megy, de ha a file elérési útját írom, teát nem includeal, hanem "http://localhost/oazis/admin_panel/felvitel.php" kerül meghívásra, akkor működik.
Előre is köszönöm a segítséget.
■ Akadt egy kis problémám, nem látom hol a hiba, pls segítsetek.
Annyi a gond hogy van egy formom amiben egy file feltöltés, de a $_FILE[] üres.
<form method="POST" enctype="multipart/form-data" action="<?php echo($_SERVER['PHP_SELF']); ?>">
<tr><td>Termék képe:</td><td><input type="file" name="kep" /></td></tr>
<?php
if (isset($_POST[submit])){
$cim=$_POST[cim];
$leiras=$_POST[leiras];
$kategoria=$_POST[kategoria];
$file=$_FILES['kep']['name'];
print("kép:".$file);
}
?>
a gond az, hogy a $_FILE[]-n kívül, minden megkapja az értékét.
ha van valami 5let pls írjátok meg.
a táblázat minden sorát nem raktam be, formaság, csak azt ami érintett lehet a dologban.
A form
"http://localhost/oazis/admin_panel/index.php?page=felvitel"
ezen a linken kerül includolásra egy dobozban.
így nem megy, de ha a file elérési útját írom, teát nem includeal, hanem "http://localhost/oazis/admin_panel/felvitel.php" kerül meghívásra, akkor működik.
Előre is köszönöm a segítséget.
Encode
$_FILE
tömbre hivatkozol$_FILES
helyett,submit
mező értékére, egyes böngészők nem küldik el, ha példáulEnter
billentyű lenyomásával küldöd el a űrlapot, és nem a gomb megnyomásával,$_POST[cim]
formában, hanem$_POST['cim']
,szerk: És mindig nézd meg a generált HTML fájlt, a hibák jó része látszódni fog benne.
nem hivatkoztam sehol a
szűrés felesleges addig amíg nem működik az alap kód.
kódolás.... megy minden kivéve a $_FILES érték átadása.
a submit is csak formaság, ment mert én kattintottam, ennek semmi köze a problémához
a tömb elemeire mindenhogy próbáltam hivatkozni, nem csak így, és minden megy mindenhogy, kivéve a $_FILES.
Hibát nem írt.
Akkor gondolom te sem tudod mi a probléma.
Köszönöm a tanácsokat, mindet megfontolom. van amit már használok is.
A kód ugyan úgy nem jó!
Le írom mégegyszer a fő problémát, hát ha a probléma megoldására is tud valaki valamilyen lehetőséget.
Az adatokat megkapja minden KIVÉVE a $_FILES.
Ha a php kódra hivatkozom, mint ahogy segíteni próbáló barátom is tette, akkor megkapja, "http://localhost/oazis/admin_panel/felvitel.php" ,
de ha az indexen keresztül kerül include-olásra "http://localhost/oazis/admin_panel/index.php?page=felvitel" , akkor a $_FILES nem kapja meg az értéket.
itt az a rész ami az indexben van az include proc-ja:
if ($_SESSION[login]==true){
if (isset($_GET[page])){
include($_GET[page].".php");
}
else{}
}
else{
print("Nincs bejelentkezve");
}
és itt a felvitel.php (most már módosítva)kódja:
<?php
$fields = array(
'cim' => FILTER_SANITIZE_STRING,
'leiras' => FILTER_SANITIZE_STRING,
'kategoria' => FILTER_SANITIZE_STRING
);
$data = filter_input_array(INPUT_POST, $fields);
print($data['cim'].",".$data['leiras'].",".$data['kategoria']."<br />");
print("kép:".$_FILES['kep'][name]);
?>
<form action="<?php echo($_SERVER['PHP_SELF']); ?>" method="post" enctype="multipart/form-data">
<tr><td>Kép:</td><td align="right"><input type="file" name="kep" /></td></tr>
<tr><td><input type="reset" name="reset" value="Mégsem" /></td><td><input type="submit" value="Feltöltés" name="mentes" /></td></tr>
Ha valaki tudja mi lehet a probléma, legyen szíves írja le.
Kihagytad
szerk: És mindig nézd meg a generált HTML fájlt, a hibák jó része látszódni fog benne.
Mivel az aktuális fájlra hivatkozol, lehetnek problémák, gondolom nem próbáltad ki, hogy
$_SERVER['PHP_SELF']
helyett$_SERVER['REQUEST_URI']
-t használj, valamint azt megfelelően kódold.Jah, és használj kód színezőt, mivel így eléggé olvashatatlan a kód.
:)))))))))))))))
:)))))))))))))))))
aet
:)
nem ez volt a gond, és egyik sem amit mondtál.
Minden esetre köszönöm a segíteni próbálást. Értékelem, kapsz 10 jóságpontot xD