644 räcker för att visa bilderna. Dom är iaf inte körbara så 7 är onödigt. Sen kan det vara bra att begränsa skrivrättigheterna till filerna.
chmod($bild, 0644);
4 svar · 515 visningar · startad av streetrobban
Tjena,
Jag har ett bildscript som jag använder på en hemsida. Men grejjen är att när jag laddar upp bilder så får de fel rättigheter. De måste få rättigheten 7777 för att man ska kunna visa bilderna på hemsida, och de får bara 700.
Vet någon om felet ligger hos webbhotellet, eller om man där kan ställa in vad alla filer som laddas upp får för rättigheter?
Eller är felet i scriptet? Kan man i scriptet bestämma vilka rättigheter filerna ska få?
Detta är scriptet som laddar upp bilden.
<?php
// In PHP versions earlier than 4.1.0, $HTTP_POST_FILES should be used instead
// of $_FILES.
$uploaddir = '../images/products/';
$uploadfile = $uploaddir . $_FILES['userfile']['name'];
$filename = $_FILES['userfile']['name'];
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile))
{
echo "Name of image<br/>";
echo "<input type=text name=bild value=\"$filename\" class=input readonly onChange=\"this.value='$filename';\"><br/><br/>";
} else {
echo "Filen kunde inte laddas upp.<br/>";
}
?>
644 räcker för att visa bilderna. Dom är iaf inte körbara så 7 är onödigt. Sen kan det vara bra att begränsa skrivrättigheterna till filerna.
chmod($bild, 0644);
Okej, thx för ditt svar :)
Så att detta borde fungera?
<?php
// In PHP versions earlier than 4.1.0, $HTTP_POST_FILES should be used instead
// of $_FILES.
$uploaddir = '../images/products/';
$uploadfile = $uploaddir . $_FILES['userfile']['name'];
$filename = $_FILES['userfile']['name'];
// Ändra bildens rättighet
chmod($filename, 0644);
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile))
{
echo "Name of image<br/>";
echo "<input type=text name=bild value=\"$filename\" class=input readonly onChange=\"this.value='$filename';\"><br/><br/>";
} else {
echo "Filen kunde inte laddas upp.<br/>";
}
?>
streetrobban skrev:
Så att detta borde fungera?
Du måste sätta rättigheterna på den flyttade bilden.
<?php
// In PHP versions earlier than 4.1.0, $HTTP_POST_FILES should be used instead
// of $_FILES.
$uploaddir = '../images/products/';
$uploadfile = $uploaddir . $_FILES['userfile']['name'];
$filename = $_FILES['userfile']['name'];
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile))
{
// Ändra bildens rättighet
chmod($uploadfile, 0644);
echo "Name of image<br/>";
echo "<input type=text name=bild value=\"$filename\" class=input readonly onChange=\"this.value='$filename';\"><br/><br/>";
} else {
echo "Filen kunde inte laddas upp.<br/>";
}
?>
Gött, nu funkar det ju! Tack för era svar :)