witam,
stworzyłem sobie panel administratora, abym mógł dodawac pliki na strone, które następnie użytkownik będzie mógł pobrać.
W panelu będę podawał nazwe skryptu, jego opis oraz sciezke gdzie sie znajduje, nastepnie w drugim skrypcie chce obsłuzyc ten panel i wyswietlic z niego dane na stronie w postaci np.
Nero 8.0
Jest to wspaniała aplikacja słuząca do....
Pobierz
Pajączek
Słuzy do...
Pobierz
Wszystko w moim skrypcie się wyswietla poza tym że użytkownik nie moze pobrac pliku (źle działa "Pobierz"). Niby wyskakuje okno pobierania, naciskam zapisz, a dalej cały czas stan łączenie....
oto skrypty:plik dodaj_skrypt.php
<?php
if(isset($_POST['submitted'])) {
$url = adres_url('dane.php');
require_once($url); //dołączam plik z połączeniem do bazy danych
if(empty($_POST['nazwa_skryptu'])) {
$errors[] = 'Nie podałeś nazwy skryptu';
}
else
{
$nazwa_skryptu = mysqli_real_escape_string
($dbc,trim($_POST['nazwa_skryptu'])); }
if(empty($_POST['opis'])) {
$errors[] = 'Nie podałeś opisu';
}
else
{
$opis = mysqli_real_escape_string
($dbc,trim($_POST['opis'])); }
/**************dodaje to co ponizej***************/
$f = $_FILES['plik'];
{
rename($f['tmp_name'],'/usr/poznajnet/skrypty/baza_danych/'.$f['name']); }
$kategoria = $_POST['kategoria'];
{
$rezultat = mysqli_query($dbc,"SELECT id FROM kategoria_skryptu WHERE kategoria='$kategoria'");
$res = mysqli_fetch_array($rezultat,MYSQL_ASSOC);
$plik = $f['name'];
$query = "INSERT INTO skrypt(nazwa_skryptu,plik,opis,id_kategorii) VALUES('$nazwa_skryptu','$plik','$opis',{$res['id']})";
$wynik = mysqli_query($dbc,$query);
if($wynik)
{
}
else
{
echo 'wystapiły nieoczekiwane błedy'; }
}
else
{
foreach($errors as $msg)
{
echo "błąd - $msg<br />"; }
}
}
?>
<form action="" method="post" enctype="multipart/form-data">
Nazwa skryptu:<input type="text" name="nazwa_skryptu" maxlength="35" /><br />
Opis: <textarea rows="10" cols="30" name="opis" /></textarea><br />
Plik: <input type="file" name="plik" maxlength="30" /><br />
Kategoria<select name="kategoria">
<option value="Bazy danych">Bazy danych</option>
<option value="CMS">CMS</option>
</select>
<input type="hidden" name="submitted" value="TRUE" />
<input type="submit" name="submit" value="Zapisz" />
</form>
Plik wyswietl_dane.php
<?php
require_once('dane.php'); //dołączam połączenie z bazą
$query = "SELECT * FROM skrypt";
$result = mysqli_query($dbc,$query);
if($result)
{
while($wynik = mysqli_fetch_array($result,MYSQL_ASSOC))
{
echo "<b>{$wynik['nazwa_skryptu']}</b><br />{$wynik['opis']}<br />"; echo "<a href=\"/poznajnet/skrypty/wyswietl_skrypt.php?do=download&fileid={$wynik['id']}\">pobierz</a><br /><br />"; $do = @$_REQUEST["do"];
$fileid = @$_REQUEST["fileid"];
$wynik2 = $wynik['plik'];
if($_GET['do'] == 'download')
{
header("Content-type: application/zip"); header("Content-Disposition: attachment; filename=$wynik2"); }
}
}
else
{
echo 'Nie udało się wyświetlić danych'; }
?>
Podejrzewam ze cos jest namieszane w pliku wyswietl_dane.php, tylko za bardzo nie wiem co.