• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Plik na serwerze, ścieżka poprawna a mimo to wyskakuje błąd 404

0 głosów
92 wizyt
pytanie zadane 30 listopada 2016 w PHP, Symfony, Zend przez Peengie Początkujący (360 p.)

Cześć,

Mam bardzo denerwujący problem, mianowicie mam skrypt w którym użytkownicy mogą edytować swoje logo. Przy niektórych użytkownikach działa bez problemu, a przy niektórych nie wyświetla mi grafiki. Co ciekawe, grafika na serwerze jest zapisywana prawidłowo, jeżeli wchodzę przez total commander to normalnie otwiera grafikę. W bazie mysql sprawdziłem i ścieżka też jest poprawnie zapisana. Jednak wpisując tą ścieżkę w przeglądarkę wywala mi bład 404 mimo że inny użytkownik wgrywając tą samą grafikę nie ma problemu :/ Na problem natrafiłem u dwóch użytkowników, nic nie daje ich usunięcie i ponowne wpisanie.

Zdjęcie wgrywam tak (jest tu jeszcze funkcja zmniejszająca rozmiar zdjęcia):

<?php

	session_start();
	
	if (!isset($_SESSION['zalogowany']))
	{
		header('Location: index.php');
		exit();
	}		
$login=$_SESSION['login'];
								require_once "connect.php";
								$polaczenie = new mysqli($host, $db_user, $db_password, $db_name);
								
								if (mysqli_connect_errno() != 0)
								{
									echo '<p>Wystąpił błąd połączenia: ' . mysqli_connect_error() . '</p>';
								}
									else 
								{		
									
								$plik_tmp = $_FILES['plik']['tmp_name']; 
								$plik_nazwad = $_FILES['plik']['name']; 
								$plik_rozmiar = $_FILES['plik']['size']; 
								$plik_nazwa = strtolower($plik_nazwad);

								function resize_image($file, $w, $h, $crop=FALSE) 
								{
								list($width, $height) = getimagesize($file);
								$r = $width / $height;
								if ($crop) 
								{
									if ($width > $height) 
									{
									$width = ceil($width-($width*abs($r-$w/$h)));
									} 
									else 
									{
									$height = ceil($height-($height*abs($r-$w/$h)));
									}
									$newwidth = $w;
									$newheight = $h;
									}
									else 
									{
									if ($w/$h > $r) 
									{
										$newwidth = $h*$r;
										$newheight = $h;
									} 
									else 
									{
										$newheight = $w/$r;
										$newwidth = $w;
									}
									}
									$src = imagecreatefromjpeg($file);
									$dst = imagecreatetruecolor($newwidth, $newheight);
									imagecopyresampled($dst, $src, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
							 
										return $dst;
									}
										if(is_uploaded_file($plik_tmp)) { 
										move_uploaded_file($plik_tmp, "uploads/max/$login-$plik_nazwa"); 
										$img = resize_image("uploads/max/$login-$plik_nazwa", 360, 225);
										imagejpeg($img, "uploads/$login-$plik_nazwa");
										unlink("uploads/max/$login-$plik_nazwa");
										$polaczenie->query("UPDATE user SET logo='http://domena.pl/wizytowka/uploads/$login-$plik_nazwa' WHERE login='$login'"); 
										$_SESSION['logo'] = "http://domena.pl/wizytowka/uploads/$login.$plik_nazwa";
										echo "Plik: <strong>$plik_nazwa</strong> zostal przeslany na serwer!<br />"; 
										}	
									$polaczenie -> close();
									echo '<meta http-equiv="refresh" content="1; URL=menu.php">';
								}
						
?>

Załączam logi z wyświetlenia grafiki:

 [30/Nov/2016:14:47:10 +0100] "GET /wizytowka/uploads/sasasa-t.jpg HTTP/1.1" 404 618 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; MAAU; rv:11.0) like Gecko"
 [30/Nov/2016:14:47:15 +0100] "GET /wizytowka/uploads/peengie-t.jpg HTTP/1.1" 200 17811 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; MAAU; rv:11.0) like Gecko"

Jak widać w ścieżce zmieniła się tylko nazwa użytkownika. Próbowałem różne przeglądarki, komputery i wszędzie ten sam problem :( Czy wina może leżeć po stronie serwera?

Jeżeli nie ta kategoria to przepraszam, ale nie wiedziałem czy dać to do php czy do mysql czy jeszcze w jakąś inną. 

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
2 odpowiedzi 204 wizyt
+1 głos
2 odpowiedzi 103 wizyt
pytanie zadane 13 września 2016 w JavaScript, jQuery, AJAX przez Miszo Bywalec (2,100 p.)
0 głosów
1 odpowiedź 46 wizyt
Porady nie od parady
Zadając pytanie postaraj się o odpowiedni tytuł, kategorię oraz tagi.Tagi

65,730 zapytań

112,373 odpowiedzi

237,241 komentarzy

46,691 pasjonatów

Przeglądających: 268
Pasjonatów: 10 Gości: 258

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...