File:  [mozdev] / cdn / www / b2upload.php
Revision 1.1: download - view: text, annotated - select for diffs - revision graph
Thu Mar 6 11:19:39 2003 UTC (16 years, 3 months ago) by cdn
Branches: MAIN
CVS tags: HEAD
b2 blog cafelog.com

    1: <?php
    2: /* b2 File Upload - original hack by shockingbird.com */
    3: 
    4: $standalone="1";
    5: require_once("./b2header.php");
    6: 
    7: if ($user_level == 0) //Checks to see if user has logged in
    8: die ("Cheatin' uh ?");
    9: 
   10: if (!$use_fileupload) //Checks if file upload is enabled in the config
   11: die ("The admin disabled this function");
   12: 
   13: ?><html>
   14: <head>
   15: <title>b2 > upload images/files</title>
   16: <link rel="stylesheet" href="<?php echo $b2inc; ?>/b2.css" type="text/css">
   17: <?php if ($use_spellchecker) { ?>
   18: <script type="text/javascript" language="javascript" src="<?php echo $spch_url; ?>"></script><?php } ?>
   19: <style type="text/css">
   20: <!--
   21: body {
   22: 	background-image: url('<?php
   23: if ($is_gecko || $is_macIE) {
   24: ?>b2-img/bgbookmarklet1.gif<?php
   25: } else {
   26: ?>b2-img/bgbookmarklet3.gif<?php
   27: }
   28: ?>');
   29: 	background-repeat: no-repeat;
   30: 	margin: 30px;
   31: }
   32: <?php
   33: if (!$is_NS4) {
   34: ?>
   35: textarea,input,select {
   36: 	background-color: white;
   37: /*<?php if ($is_gecko || $is_macIE) { ?>
   38: 	background-image: url('b2-img/bgbookmarklet.png');
   39: <?php } elseif ($is_winIE) { ?>
   40: 	background-color: #cccccc;
   41: 	filter: alpha(opacity:80);
   42: <?php } ?>
   43: */  border-width: 1px;
   44: 	border-color: #cccccc;
   45: 	border-style: solid;
   46: 	padding: 2px;
   47: 	margin: 1px;
   48: }
   49: <?php if (!$is_gecko) { ?>
   50: .checkbox {
   51: 	border-width: 0px;
   52: 	border-color: transparent;
   53: 	border-style: solid;
   54: 	padding: 0px;
   55: 	margin: 0px;
   56: }
   57: .uploadform {
   58: 	background-color: white;
   59: <?php if ($is_winIE) { ?>
   60: 	filter: alpha(opacity:100);
   61: <?php } ?>
   62: 	border-width: 1px;
   63: 	border-color: #333333;
   64: 	border-style: solid;
   65: 	padding: 2px;
   66: 	margin: 1px;
   67: 	width: 265px;
   68: 	height: 24px;
   69: }
   70: <?php } ?>
   71: <?php
   72: }
   73: ?>
   74: -->
   75: </style>
   76: <script type="text/javascript">
   77: <!-- // idocs.com's popup tutorial rules !
   78: function targetopener(blah, closeme, closeonly) {
   79: 	if (! (window.focus && window.opener))return true;
   80: 	window.opener.focus();
   81: 	if (! closeonly)window.opener.document.post.content.value += blah;
   82: 	if (closeme)window.close();
   83: 	return false;
   84: }
   85: //-->
   86: </script>
   87: </head>
   88: <body>
   89: 
   90: <table align="center" width="100%" height="100%" cellpadding="15" cellspacing="0" border="1" style="border-width: 1px; border-color: #cccccc;">
   91: 	<tbody>
   92: 	<tr>
   93: 	<td valign="top" style="background-color: transparent; <?php if ($is_gecko || $is_macIE) { ?>background-image: url('b2-img/bgbookmarklet.png');<?php } elseif ($is_winIE) { ?>background-color: #cccccc; filter: alpha(opacity:60);<?php } ?>;">
   94: <?php
   95: 
   96: if (!$HTTP_POST_VARS["submit"]) {
   97: 	$i = explode(" ",$fileupload_allowedtypes);
   98: 	$i = implode(", ",array_slice($i, 1, count($i)-2));
   99: 	?>
  100: 	<p><strong>File upload</strong></p>
  101: 	<p>You can upload files of type:<br /><em><?php echo $i ?></em></p>
  102: 	<p>The maximum size of the file should be:<br /><em><?php echo $fileupload_maxk ?> KB</em></p>
  103: 	<form action="b2upload.php" method="post" enctype="multipart/form-data">
  104: 	<input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $fileupload_maxk*1024 ?>" />
  105: 	<input type="file" name="img1" size="30" class="uploadform" />
  106: 	<br /><br />
  107: 	Description:<br />
  108: 	<input type="text" name="imgdesc" size="30" class="uploadform" />
  109: 	<br /><br />
  110: 	<input type="submit" name="submit" value="upload !" class="search" />
  111: 	</form>
  112: 	</td>
  113: 	</tr>
  114: 	</tbody>
  115: </table>
  116: </body>
  117: </html><?php die();
  118: }
  119: 
  120: 
  121: 
  122: ?>
  123: 
  124: 
  125: 
  126: <?php  //Makes sure they choose a file
  127: 
  128: //print_r($HTTP_POST_FILES);
  129: //die();
  130: 
  131: if (!empty($HTTP_POST_VARS)) { //$img1_name != "") {
  132: 
  133: 	$imgalt = (isset($HTTP_POST_VARS['imgalt'])) ? $HTTP_POST_VARS['imgalt'] : $imgalt;
  134: 
  135: 	$img1_name = (strlen($imgalt)) ? $HTTP_POST_VARS['imgalt'] : $HTTP_POST_FILES['img1']['name'];
  136: 	$img1_type = (strlen($imgalt)) ? $HTTP_POST_VARS['img1_type'] : $HTTP_POST_FILES['img1']['type'];
  137: 	$imgdesc = str_replace('"', '&amp;quot;', $HTTP_POST_VARS['imgdesc']);
  138: 
  139: 	$imgtype = explode(".",$img1_name);
  140: 	$imgtype = " ".$imgtype[count($imgtype)-1]." ";
  141: 
  142: 	if (!ereg(strtolower($imgtype), strtolower($fileupload_allowedtypes))) {
  143: 	    die("File $img1_name of type $imgtype is not allowed.");
  144: 	}
  145: 
  146: 	if (strlen($imgalt)) {
  147: 		$pathtofile = $fileupload_realpath."/".$imgalt;
  148: 		$img1 = $HTTP_POST_VARS['img1'];
  149: 	} else {
  150: 		$pathtofile = $fileupload_realpath."/".$img1_name;
  151: 		$img1 = $HTTP_POST_FILES['img1']['tmp_name'];
  152: 	}
  153: 
  154: 	// makes sure not to upload duplicates, rename duplicates
  155: 	$i = 1;
  156: 	$pathtofile2 = $pathtofile;
  157: 	$tmppathtofile = $pathtofile2;
  158: 	$img2_name = $img1_name;
  159: 
  160: 	while (file_exists($pathtofile2)) {
  161: 	    $pos = strpos($tmppathtofile, '.'.trim($imgtype));
  162: 	    $pathtofile_start = substr($tmppathtofile, 0, $pos);
  163: 	    $pathtofile2 = $pathtofile_start.'_'.zeroise($i++, 2).'.'.trim($imgtype);
  164: 	    $img2_name = explode('/', $pathtofile2);
  165: 	    $img2_name = $img2_name[count($img2_name)-1];
  166: 	}
  167: 
  168: 	if (file_exists($pathtofile) && !strlen($imgalt)) {
  169: 		$i = explode(" ",$fileupload_allowedtypes);
  170: 		$i = implode(", ",array_slice($i, 1, count($i)-2));
  171: 		move_uploaded_file($img1, $pathtofile2) 
  172: 		 or die("Couldn't Upload Your File to $pathtofile2.");
  173: 	
  174: 	// duplicate-renaming function contributed by Gary Lawrence Murphy
  175: 	?>
  176: 	<p><strong>Duplicate File?</strong></p>
  177: 	<p><b><em>The filename '<?php echo $img1_name; ?>' already exists!</em></b></p>
  178: 	<p> filename '<?php echo $img1; ?>' moved to '<?php echo "$pathtofile2 - $img2_name"; ?>'</p>
  179: 	<p>Confirm or rename:</p>
  180: 	<form action="b2upload.php" method="post" enctype="multipart/form-data">
  181: 	<input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $fileupload_maxk*1024 ?>" />
  182: 	<input type="hidden" name="img1_type" value="<?php echo $img1_type;?>" />
  183: 	<input type="hidden" name="img1_name" value="<?php echo $img2_name;?>" />
  184: 	<input type="hidden" name="img1" value="<?php echo $pathtofile2;?>" />
  185: 	Alternate name:<br /><input type="text" name="imgalt" size="30" class="uploadform" value="<?php echo $img2_name;?>" /><br />
  186: 	<br />
  187: 	Description:<br /><input type="text" name="imgdesc" size="30" class="uploadform" value="<?php echo $imgdesc;?>" />
  188: 	<br />
  189: 	<input type="submit" name="submit" value="confirm !" class="search" />
  190: 	</form>
  191: 	</td>
  192: 	</tr>
  193: 	</tbody>
  194: </table>
  195: </body>
  196: </html><?php die();
  197: 
  198: 	}
  199: 
  200: 	if (!strlen($imgalt)) {
  201: 		move_uploaded_file($img1, $pathtofile) //Path to your images directory, chmod the dir to 777
  202: 		 or die("Couldn't Upload Your File to $pathtofile.");
  203: 	} else {
  204: 		rename($img1, $pathtofile)
  205: 		or die("Couldn't Upload Your File to $pathtofile.");
  206: 	}
  207: 
  208: }
  209: 
  210: 
  211: if ( ereg('image/',$img1_type)) {
  212: 	$piece_of_code = "&lt;img src=&quot;$fileupload_url/$img1_name&quot; border=&quot;0&quot; alt=&quot;$imgdesc&quot; /&gt;"; 
  213: } else {
  214: 	$piece_of_code = "&lt;a href=&quot;$fileupload_url/$img1_name&quot; title=&quot;$imgdesc&quot; /&gt;$imgdesc&lt;/a&gt;"; 
  215: };
  216: 
  217: ?>
  218: 
  219: <p><strong>File uploaded !</strong></p>
  220: <p>Your file <b><?php echo "$img1_name"; ?></b> was uploaded successfully !</p>
  221: <p>Here's the code to display it:</p>
  222: <p><form>
  223: <!--<textarea cols="25" rows="3" wrap="virtual"><?php echo "&lt;img src=&quot;$fileupload_url/$img1_name&quot; border=&quot;0&quot; alt=&quot;&quot; /&gt;"; ?></textarea>-->
  224: <input type="text" name="imgpath" value="<?php echo $piece_of_code; ?>" size="38" style="padding: 5px; margin: 2px;" /><br />
  225: <input type="button" name="close" value="Add the code to your post !" class="search" onClick="targetopener('<?php echo $piece_of_code; ?>')" style="margin: 2px;" />
  226: </form>
  227: </p>
  228: <p><strong>Image Details</strong>: <br />
  229: name: 
  230: <?php echo "$img1_name"; ?>
  231: <br />
  232: size: 
  233: <?php echo round($img1_size/1024,2); ?> KB
  234: <br />
  235: type: 
  236: <?php echo "$img1_type"; ?>
  237: </p>
  238: <p align="right">
  239: <form>
  240: <input type="button" name="close" value="Close this window" class="search" onClick="window.close()" />
  241: </form>
  242: </p>
  243: </td>
  244: </tr>
  245: </tbody>
  246: </table>
  247: 
  248: </body>
  249: 
  250: </html>

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>