3raser Posted June 14, 2010 Share Posted June 14, 2010 How would I make it so, for each file uploaded, it tells the database + 1 I already know how to do the database stuff, and make it update. But there is four fields, look for yourself http://www.rsdaily.uphero.com/. How would I check and see how many files have been uploaded? Is there a way to count it, or do a for each? // Max size PER file in KB $max_file_size="512"; // Max size for all files COMBINED in KB $max_combined_size="2048"; //Maximum file uploades at one time $file_uploads="4"; //The name of your website $websitename="RSDaily Uploads"; // Full browser accessable URL to where files are accessed. With trailing slash. $full_url="http://www.rsdaily.uphero.com/uploads/"; // Path to store files on your server If this fails use $fullpath below. With trailing slash. $folder="./uploads/"; // Use random file names? true=yes (recommended), false=use original file name. // Random names will help prevent files being denied because a file with that name already exists. $random_name=true; // Types of files that are acceptiable for uploading. Keep the array structure. $allow_types=array("jpg","gif","png","zip","rar","txt","doc"); // Only use this variable if you wish to use full server paths. Otherwise leave this empty. With trailing slash. $fullpath=""; //Use this only if you want to password protect your upload form. $password=""; /* //================================================================================ * ! ATTENTION ! //================================================================================ : Don't edit below this line. */ // Initialize variables $password_hash=md5($password); $error=""; $success=""; $display_message=""; $file_ext=array(); $password_form=""; // Function to get the extension a file. function get_ext($key) { $key=strtolower(substr(strrchr($key, "."), 1)); $key=str_replace("jpeg","jpg",$key); return $key; } // Filename security cleaning. Do not modify. function cln_file_name($string) { $cln_filename_find=array("/\.[^\.]+$/", "/[^\d\w\s-]/", "/\s\s+/", "/[-]+/", "/[_]+/"); $cln_filename_repl=array("", ""," ", "-", "_"); $string=preg_replace($cln_filename_find, $cln_filename_repl, $string); return trim($string); } // If a password is set, they must login to upload files. If($password) { //Verify the credentials. If($_POST['verify_password']==true) { If(md5($_POST['check_password'])==$password_hash) { setcookie("phUploader",$password_hash); sleep(1); //seems to help some people. header("Location: http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']); exit; } } //Show the authentication form If($_COOKIE['phUploader']!=$password_hash) { $password_form="<form method=\"POST\" action=\"".$_SERVER['PHP_SELF']."\">\n"; $password_form.="<table align=\"center\" class=\"table\">\n"; $password_form.="<tr>\n"; $password_form.="<td width=\"100%\" class=\"table_header\" colspan=\"2\">Password Required</td>\n"; $password_form.="</tr>\n"; $password_form.="<tr>\n"; $password_form.="<td width=\"35%\" class=\"table_body\">Enter Password:</td>\n"; $password_form.="<td width=\"65%\" class=\"table_body\"><input type=\"password\" name=\"check_password\" /></td>\n"; $password_form.="</tr>\n"; $password_form.="<td colspan=\"2\" align=\"center\" class=\"table_body\">\n"; $password_form.="<input type=\"hidden\" name=\"verify_password\" value=\"true\">\n"; $password_form.="<input type=\"submit\" value=\" Verify Password \" />\n"; $password_form.="</td>\n"; $password_form.="</tr>\n"; $password_form.="</table>\n"; $password_form.="</form>\n"; } } // If Password // Dont allow submit if $password_form has been populated If(($_POST['submit']==true) AND ($password_form=="")) { //Tally the size of all the files uploaded, check if it's over the ammount. If(array_sum($_FILES['file']['size']) > $max_combined_size*1024) { $error.="<b>FAILED:</b> All Files <b>REASON:</b> Combined file size is to large.<br />"; // Loop though, verify and upload files. } Else { // Loop through all the files. For($i=0; $i <= $file_uploads-1; $i++) { // If a file actually exists in this key If($_FILES['file']['name'][$i]) { //Get the file extension $file_ext[$i]=get_ext($_FILES['file']['name'][$i]); // Randomize file names If($random_name){ $file_name[$i]=time()+rand(0,100000); } Else { $file_name[$i]=cln_file_name($_FILES['file']['name'][$i]); } // Check for blank file name If(str_replace(" ", "", $file_name[$i])=="") { $error.= "<b>FAILED:</b> ".$_FILES['file']['name'][$i]." <b>REASON:</b> Blank file name detected.<br />"; //Check if the file type uploaded is a valid file type. } ElseIf(!in_array($file_ext[$i], $allow_types)) { $error.= "<b>FAILED:</b> ".$_FILES['file']['name'][$i]." <b>REASON:</b> Invalide file type.<br />"; //Check the size of each file } Elseif($_FILES['file']['size'][$i] > ($max_file_size*1024)) { $error.= "<b>FAILED:</b> ".$_FILES['file']['name'][$i]." <b>REASON:</b> File to large.<br />"; // Check if the file already exists on the server.. } Elseif(file_exists($folder.$file_name[$i].".".$file_ext[$i])) { $error.= "<b>FAILED:</b> ".$_FILES['file']['name'][$i]." <b>REASON:</b> File already exists.<br />"; } Else { If(move_uploaded_file($_FILES['file']['tmp_name'][$i],$folder.$file_name[$i].".".$file_ext[$i])) { $success.="<b>SUCCESS:</b> ".$_FILES['file']['name'][$i]."<br />"; $success.="<b>URL:</b> <a href=\"".$full_url.$file_name[$i].".".$file_ext[$i]."\" target=\"_blank\">".$full_url.$file_name[$i].".".$file_ext[$i]."</a><br /><br />"; } Else { $error.="<b>FAILED:</b> ".$_FILES['file']['name'][$i]." <b>REASON:</b> General upload failure.<br />"; } } } // If Files } // For } // Else Total Size If(($error=="") AND ($success=="")) { $error.="<b>FAILED:</b> No files selected<br />"; } $display_message=$success.$error; } // $_POST AND !$password_form ?> Link to comment https://forums.phpfreaks.com/topic/204699-foreach-file/ Share on other sites More sharing options...
mrMarcus Posted June 14, 2010 Share Posted June 14, 2010 You are looking to count the number of files in the database? Per specific user or just in total? You kinda asked two different questions. Gotta be specific, otherwise people end up spending more times deciphering your questions than helping you solve them. Link to comment https://forums.phpfreaks.com/topic/204699-foreach-file/#findComment-1071681 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.