Problem mit PHP upload von Bildern owner der uploaded files stimmt nicht.

tFcRaCkeN

Grünschnabel
Hallo,
also ich habe folgendes Problem wenn ich mit PHP befehl files uploade (bilder) dann sind sie zwar uploaded aber ich muss jedesmal FTP connecten und Rechte der datein ändern auf 644 da Uploaded files immer nur 600 rechte haben... Meine frage is jetzt was muss ich ändern / machen das uploaded files immer direkt 644 chmod haben?

Hier mal mein Upload code:
PHP:
<?php 
 
 
 
 
 
 if($user->id > 0) {
 
 
 
 
 
  $tmp->add("error" , "");
 
 
  if($_POST['submit']) {
 
 
   $errortxt = "";
 
 
   if($_POST['del'] == "on" && $user->foto != "" && file_exists("./images/user_fotos/" . $user->foto)) {
 
 
	unlink("./images/user_fotos/" . $user->foto);
 
 
	$db->query('UPDATE ' . $db->prefix . '_user SET foto = \'\' WHERE id = ' . $user->id);
 
 
	$tmp->add("foto", "<i>kein Foto hochgeladen</i>");
 
 
   }
 
 
   if($_FILES['foto'] != "") {
 
 
	$typ = "";
 
 
	$pic = getimagesize($_FILES['foto']['tmp_name']);
 
 
	if($pic) {
 
 
	 if($pic[2] == 1 || $pic[2] == 2 || $pic[2] == 3) {
 
 
	  if($pic[2] == 1) $typ = "gif";
 
 
	  if($pic[2] == 2) $typ = "jpg";
 
 
	  if($pic[2] == 3) $typ = "png";
 
 
	  if($pic[0] > 100 || $pic[1] > 120) {
 
 
	   $tmp->add("foto", file_exists("./images/user_fotos/" . $user->foto) ? "./images/user_foto/" . $user->foto : "<i>kein Foto hochgeladen</i>");
 
 
	   $errortxt = '<tr><td class="red2" style="height: 5px; width: 453px; background-image: url(\'./images/de_70.jpg\'); vertical-align: top; padding: 3px 8px 3px 8px;">';
 
 
	   $errortxt .= "&nbsp;&nbsp;&nbsp;&middot;&nbsp;Das Bild darf h&ouml;chstens 100x120 Pixel gross sein.";
 
 
	   $errortxt .= '</td></tr>';
 
 
	   $tmp->add("error", $errortxt);
 
 
	  } else {
 
 
	   $neuer_name = "foto_" . $user->id . "." . $typ;
 
 
	   move_uploaded_file($_FILES['foto']['tmp_name'], "./images/user_fotos/" . $neuer_name);
 
 
	   $db->query('UPDATE ' . $db->prefix . '_user SET foto = \'' . $neuer_name . '\' WHERE id = ' . $user->id);
 
 
	   $tmp->add("foto", '<img src="./images/user_fotos/' . $neuer_name . '" alt="" title="" />');
 
 
	  }
 
 
	 } else {
 
 
	  $tmp->add("foto", file_exists("./images/user_fotos/" . $user->foto) ? "./images/user_foto/" . $user->foto : "<i>kein Foto hochgeladen</i>");
 
 
	  $errortxt = '<tr><td class="red2" style="height: 5px; width: 453px; background-image: url(\'./images/de_70.jpg\'); vertical-align: top; padding: 3px 8px 3px 8px;">';
 
 
	  $errortxt .= "&nbsp;&nbsp;&nbsp;&middot;&nbsp;Es sind nur png, jpg und gif Dateitypen erlaubt.";
 
 
	  $errortxt .= '</td></tr>';
 
 
	  $tmp->add("error", $errortxt);
 
 
	 }
 
 
	}
 
 
   }
 
 
  } else {
 
 
   $tmp->add("foto", (file_exists("./images/user_fotos/" . $user->foto)  && $user->foto != "" )? '<img src="./images/user_fotos/' . $user->foto . '" alt="" title="" />' : "<i>kein Foto hochgeladen</i>");
 
 
  }
 
 
  
 
 
  $tmp->add("content", $tmp->load("foto_bearbeiten"));
 
 
 
 
 
 } else {
 
 
  header("Location: index.php");
 
 
  exit();
 
 
 }
 
 
?>


cya
 
jepp das hat geholfen thx jedenfall für die forum pics;)

aber nu habe ich noch ein problem wieder chmod.. und zwar bei meinen banner add für partner. Und zwar habe ich es so das, das uploaded file renamed wird in partner_$id.$typ (zb partner_24.jpg oder partner_1.gif)
nun habe ich versucht den chmod befehl wiefolgt einzubinden:
PHP:
chmod ("/images/partner/partner_" . $partner->id . $typ, 0666);
direkt nach dem file upload / move in das entsprechende dir. Funktioniert aber leider nicht.


hier der komplette code der partner_edit funktion

PHP:
 <?php 
if(checkright($user->superadmin, $rechte['superadmin'])) {
 
 
 
 
 
$partner = $db->query_first('
 
 
SELECT * FROM ' . $db->prefix . '_partner WHERE id = \'' . $_REQUEST['pid'] . '\'
 
 
');
 
 
 
 
 
if(!$partner->id) {
 
 
header('Location: index.php');
 
 
exit();
 
 
}
 
 
 
 
 
if($_POST['submit']) { 
 
 
 
 
 
$pic = getimagesize($_FILES['bild']['tmp_name']);
 
 
if($pic) {
 
 
 
 
 
	if($pic[2] == 1) $typ = ".gif";
 
 
	if($pic[2] == 2) $typ = ".jpg";
 
 
	if($pic[2] == 3) $typ = ".png";
 
 
 
 
 
	$bild = $_FILES['bild']['name'];
 
 
	move_uploaded_file($_FILES['bild']['tmp_name'], "./images/partner/partner_" . $partner->id . $typ);
	chmod ("/images/partner/partner_" . $partner->id . $typ, 0666);
 
 
 
 
 
	$db->query('
 
 
	 UPDATE ' . $db->prefix . '_partner
 
 
	 SET
 
 
	 link = \'' . $_POST['link'] . '\',
 
 
	 bild = \'partner_' . $partner->id . $typ . '\'
 
 
	 WHERE id = \'' . $partner->id . '\'
 
 
	');
 
 
 
 
 
}
 
 
 
 
 
header('Location: index.php');
 
 
exit();
 
 
 
 
 
} else {
 
 
 
 
 
$tmp->add(array(
 
 
	'id' => $partner->id,
 
 
	'link' => $partner->link,
 
 
	'bild' => '<img src="./images/partner/' . $partner->bild . '" alt="" title="" />'
 
 
));
 
 
$tmp->add('content', $tmp->load('admin_partner_edit'));
 
 
 
 
 
}
 
 
 
 
 
} else {
 
 
 
 
 
header('Location: index.php');
 
 
exit();
 
 
 
 
 
}
 
 
 
 
 
?>
 
Zuletzt bearbeitet:
Zurück