All pastes #454939 Raw Edit

Unnamed

public text v1 · immutable
·published 2007-04-23 22:07 UTC
rendered paste body
<?php


$css = "\n".'span.error { color: red; font-weight: bold; }';
$css.= "\n".'span.success { color: green; font-weight: bold; }';
$css.= "\n".'ul.messages { list-style: disc; margin-left : 20px; padding: 0px; }';
$css.= "\n".'ul.messages > li.message { } ';
$css.= "\n".'a:link { color: #FFFF00; } ';
$css.= "\n".'a:visited { color: #FFCC00; } ';
$css.= "\n".'a:hover { color: #FF8000; } ';
$css.= "\n".'table.modtable { font-family: verdana; font-size: 8pt; }';

$validextensions = array("jpg", "jpeg", "png", "gif");
$action = isset($_POST["action"]) ? $_POST["action"] : "";
$messages = array();
$uploaddir = '/usr/local/palace/palace/media/';



function showMessages() {
	global $messages;
	if (empty($messages)) {
		return;
	} else {
		echo '<ul class="messages">';
		foreach($messages as $message) {
			echo '<li class="message">'.$message.'</li>';
		}
		echo '</ul>';
	}
}


if (!isset($_FILES['file'])) {
	$messages[] = '<span class="error">Please select a file to upload.</span>';
} else {
	// don't let them upload all sorts of stupid shit
	if (!preg_match("#^(.*)\.(".implode("|", $validextensions).")$#", $_FILES['file']['name'], $matches)) {
		$messages[] = '<span class="error">'.$matches[2].' is not a valid file extension.</span>';
	} else {
		$originalfilename = $matches[1];
		$extension = $matches[2];
		$destinationfilename = $originalfilename;
		$copy = 0;
		// see if this file exists in uploader
		while (file_exists("./$uploaddir/".$destinationfilename.".".$extension)) {
			$copy++;
			$destinationfilename = $originalfilename.'_copy'.$copy;
		}
		// move uploaded file to destination directory
		if (!move_uploaded_file($_FILES['file']['tmp_name'], "./$uploaddir/".$destinationfilename.".".$extension)) {
			$messages[] = '<span class="error">Unable to move file to '."./$uploaddir/".$destinationfilename.".".$extension.'</span>';
		} else {
			$messages[] = '<span class="success">Uploaded file to '."./$uploaddir/".$destinationfilename.".".$extension.'</span>';
			$uploadedImage = "/$uploaddir/".$destinationfilename.".".$extension;
		}
	}
}

?>


<head>
	<title>Uploader</title>
	<style><?php echo $css; ?></style>
</head>
<body style="background: #000; color: #fff; font-family: Verdana, arial, sans-serif; font-size: 10pt;">
<a href="<?php echo $_SERVER["PHP_SELF"]; ?>">Uploader</a>



<h1>Upload File</h1>
<form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post" enctype="multipart/form-data">
	<p>Valid extensions are <strong><?php echo implode(", ", $validextensions); ?></strong>.</p>
	<input type="hidden" name="action" value="upload" />
	<input type="file" name="file">
	<input type="submit" value="Upload File" /><br/>
	<?php if (!empty($uploadedImage)) { echo '<br/>[img]'.$url.$uploadedImage.'[/img] <br/><img src="'.$url.$uploadedImage.'" alt="'.$uploadedImage.'" />'; } ?>
</form>

<?php showMessages(); ?>

</body>