Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] problem z wgrywaniem plików na serwer
sweter
post 23.02.2009, 20:57:25
Post #1





Grupa: Zarejestrowani
Postów: 623
Pomógł: 11
Dołączył: 1.01.2009
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Mam taki skrypt służący do wgrywania plików na serwer przez użytkowników:
Kod
$nazwa_pliku = $_FILES['zdjecie']['name'];
  
include_once("../elementy/dane_do_logowania.php");
if(@preg_match("# #",$nazwa_pliku)){
  echo "Nazwa pliku nie może zawierać spacji";
}else{
  if(isset($_SESSION['login'])){
      if(!is_uploaded_file($_FILES['zdjecie']['tmp_name'])){
        echo "Pliku nie prezeslano";
        unlink($_FILES['zdjecie']['tmp_name']);
      }else{
        /*przetwarzanie pliku*/
        $maksymalny_rozmiar_pliku=153600;
          if($_FILES['zdjecie']['size'] > $maksymalny_rozmiar_pliku){
            echo "Rozmiar pliku nie może przekroczyć 150 kB";
            unlink($_FILES['zdjecie']['tmp_name']);
          }else{
            /*przetwarzanie pliku*/
              if($_FILES['zdjecie']['type'] != "image/gif" AND
             $_FILES['zdjecie']['type'] != "image/pjpeg" AND
             $_FILES['zdjecie']['type'] != "image/jpeg" AND
             $_FILES['zdjecie']['type'] != "image/png"){
                 echo "Można pzesyłać jednynie pliki z rozszerzeniem .jpg i .gif";
                 unlink($_FILES['zdjecie']['tmp_name']);
          }else{
            /*format pliku jest poprawny*/
                    copy($_FILES['zdjecie']['tmp_name'], "./".$_SESSION['login']."/galeria/".$_FILES['zdjecie']['name']."");
                unlink($_FILES['zdjecie']['tmp_name']);
                echo "OK<br />
                <center>
              <img src=\"./".$_SESSION['login']."/galeria/".$_FILES['zdjecie']['name']."\" width=\"200\" border=\"0\" />
            </center>  
            ";
                include_once("../elementy/dane_logowania.php");
            
            
                      $pol = @mysql_connect($host,$login_host,$haslo_host);
  
              if (!$pol){
                    include_once("../elementy/error.php");
                echo $error_connect;
                exit;
                  }
                  $wyb = @mysql_select_db($nazwa_bazy_danych);
                  @mysql_query('SET CHARACTER latin2');
                  @mysql_query('SET NAMES latin2');
                  @mysql_query('SET CHARACTER_SET latin2');
                  if (!$wyb){
                      include_once("../elementy/error.php");
                echo $error_select;
                exit;
                  }
                  $zap = "INSERT INTO `zdjecia` (
`id` ,
`autor` ,
`link` ,
`opis`
)
VALUES (
NULL , '".$_SESSION['login']."', '$nazwa_pliku', '$opis'
);";
                  $wyn = mysql_query($zap);
                  if (!$wyn){
                      include_once("../elementy/error.php");
                echo $error_query;
                exit;
                  }
              @mysql_close($pol);
          
              }
            }  
          
      }
    }
  }
}

Niestety nie chce on działać, tzn. wpisywany jest nowy rekord do tabeli, ale plik nie jest kopiowany na serwer sad.gif
Dodam, że gdy ćwiczyłem na lokalnym serwerze to wszystko działało bez zarzutu. Dopiero jak wżuciłem stroną na cba.pl pojawił się ten błąd:(

Wiecie czemu?

Ten post edytował ayeo 24.02.2009, 06:22:22
Powód edycji: poprawienie taga


--------------------
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 13:25