Image upload virker, men visningen virker ik?

Tags:    php

image upload fungerer, men billedvisning?
135 point fra nickyc

X
Hey alle..

Har et upload script, den uploader egentlig billedet fint osv, men den vil ikke vise billedet?

Upload.php
-----------

<?php
//Hent forbindelse
include("../includes/config.inc.php");
//Hent session
$Bruger_ID = $_SESSION['Bruger_ID'];
$Brugernavn = $_SESSION['Brugernavn'];

if($_REQUEST['submit'] == "Nyt billede") {
if($_FILES['billedfil']['size'] > 300000) {
?>
<script language="JavaScript">
alert('Billedet fylder for meget');
</script>
<?
}
elseif ($_FILES['billedfil']['size'] == 0) {
?>
<script language="JavaScript">
alert('Vælg et billede');
</script>
<?
}
else {
move_uploaded_file($_FILES['billedfil']['tmp_name'],"../userimg/$Brugernavn-$Bruger_ID.jpg");

}
}
if ($_REQUEST['submit'] == "Fjern billede") {
unlink("../userimg/$Brugernavn-$Bruger_ID.jpg");
}

if (file_exists("../userimg/$Brugernavn-$Bruger_ID.jpg")) {
$oldpic = true;
}
else {
$oldpic = false;
}

?>
<table cellspacing=0 cellpadding=0 border=0 height=75>
<form enctype="multipart/form-data" action="editpic.php" method="POST">
<input type=hidden name="Bruger_ID" value="<?=$Brugernavn?>">
<input type=hidden name="Bruger_ID" value="<?=$Bruger_ID?>">

<tr>
<td>
<?
if ($oldpic == true) {
?>
<img src="../vispic.php?imgtype=userimg&imgname=<?=$Brugernavn?>-<?=$Bruger_ID?>.jpg&maxWidth=160&maxHeight=70&time=<?=time()?>" align=left>
<?
}
?>
</td>
</tr>
</table>
<input name="billedfil" type="file" id="billedfil" />

<br>
<input type=submit name="submit" value="Nyt billede"> <?
if ($oldpic == true) {
?><input type=submit name="submit" value="Fjern billede">

<?
}
?>
</form>

--------------------

vispic.php
-----------
<?php
$imgType = $_REQUEST['imgtype'];
$imgName = $_REQUEST['imgname'];
$imgMaxWidth = $_REQUEST['maxWidth'];
$imgMaxHeight = $_REQUEST['maxHeight'];


# Sikkerhedscheck
$imgName = str_replace("/","",$imgName);

if ($imgType == "userimg") {
$myImg = imagecreatefromjpeg("./userimg/" . $imgName);
}

header("Content-type: image/jpeg");

$imageOrigWidth = imagesx($myImg);
$imageOrigHeight = imagesy($myImg);

#De originale propertioner

$origProp = $imageOrigHeight / $imageOrigWidth;

# Den nye højde:

$newHeight = $imgMaxWidth * $origProp;

#Tjek om den nye højde er for høj

if ($newHeight > $imgMaxHeight) {
$newWidth = $imgMaxHeight / $origProp;
$newHeight = $imgMaxHeight;
}
else {
$newWidth = $imgMaxWidth;
}

$imgOut = imagecreatetruecolor($newWidth,$newHeight);
imagecopyresized($imgOut,$myImg,0,0,0,0,$newWidth,$newHeight,$imageOrigWidth,$imageOrigHeight);




imagejpeg($imgOut,"",75);

?>

------------------

Nogle der kan hjælpe, fatter virkelig ik hvad der er galt?



image upload fungerer, men billedvisning?
135 point fra nickyc

X
Hey alle..

Har et upload script, den uploader egentlig billedet fint osv, men den vil ikke vise billedet?

Upload.php
-----------

<?php
//Hent forbindelse
include("../includes/config.inc.php");
//Hent session
$Bruger_ID = $_SESSION['Bruger_ID'];
$Brugernavn = $_SESSION['Brugernavn'];

if($_REQUEST['submit'] == "Nyt billede") {
if($_FILES['billedfil']['size'] > 300000) {
?>
<script language="JavaScript">
alert('Billedet fylder for meget');
</script>
<?
}
elseif ($_FILES['billedfil']['size'] == 0) {
?>
<script language="JavaScript">
alert('Vælg et billede');
</script>
<?
}
else {
move_uploaded_file($_FILES['billedfil']['tmp_name'],"../userimg/$Brugernavn-$Bruger_ID.jpg");

}
}
if ($_REQUEST['submit'] == "Fjern billede") {
unlink("../userimg/$Brugernavn-$Bruger_ID.jpg");
}

if (file_exists("../userimg/$Brugernavn-$Bruger_ID.jpg")) {
$oldpic = true;
}
else {
$oldpic = false;
}

?>
<table cellspacing=0 cellpadding=0 border=0 height=75>
<form enctype="multipart/form-data" action="editpic.php" method="POST">
<input type=hidden name="Bruger_ID" value="<?=$Brugernavn?>">
<input type=hidden name="Bruger_ID" value="<?=$Bruger_ID?>">

<tr>
<td>
<?
if ($oldpic == true) {
?>
<img src="../vispic.php?imgtype=userimg&imgname=<?=$Brugernavn?>-<?=$Bruger_ID?>.jpg&maxWidth=160&maxHeight=70&time=<?=time()?>" align=left>
<?
}
?>
</td>
</tr>
</table>
<input name="billedfil" type="file" id="billedfil" />


<input type=submit name="submit" value="Nyt billede"> <?
if ($oldpic == true) {
?><input type=submit name="submit" value="Fjern billede">

<?
}
?>
</form>

--------------------

vispic.php
-----------
<?php
$imgType = $_REQUEST['imgtype'];
$imgName = $_REQUEST['imgname'];
$imgMaxWidth = $_REQUEST['maxWidth'];
$imgMaxHeight = $_REQUEST['maxHeight'];


# Sikkerhedscheck
$imgName = str_replace("/","",$imgName);

if ($imgType == "userimg") {
$myImg = imagecreatefromjpeg("./userimg/" . $imgName);
}

header("Content-type: image/jpeg");

$imageOrigWidth = imagesx($myImg);
$imageOrigHeight = imagesy($myImg);

#De originale propertioner

$origProp = $imageOrigHeight / $imageOrigWidth;

# Den nye højde:

$newHeight = $imgMaxWidth * $origProp;

#Tjek om den nye højde er for høj

if ($newHeight > $imgMaxHeight) {
$newWidth = $imgMaxHeight / $origProp;
$newHeight = $imgMaxHeight;
}
else {
$newWidth = $imgMaxWidth;
}

$imgOut = imagecreatetruecolor($newWidth,$newHeight);
imagecopyresized($imgOut,$myImg,0,0,0,0,$newWidth,$newHeight,$imageOrigWidth,$imageOrigHeight);




imagejpeg($imgOut,"",75);

?>

------------------

Nogle der kan hjælpe, fatter virkelig ik hvad der er galt?


Du skal huske at ændre CHMOD til 755. Når du bare uploader er den 644. Så vidst jeg husker.



t