joesaddigh Posted February 23, 2010 Share Posted February 23, 2010 Hi, Here is my code which will add a photo from a form and enter the relevant data in the db... It seems to work one day and not the next... Obviously it is something that I am missing. The code is as follows: <?php include("includes/connection.php"); // Where the file is going to be placed $schoolimage = "SchoolImages/"; //This path will be stored in the database as it does not contain the filename $currentdir = getcwd(); $path = $currentdir . '/' . $schoolimage; // Get the schoolid for the image and school linker table $schoolid = $_POST['schoolid']; //Get the school name $query = "SELECT * FROM school WHERE school_id = ".$schoolid; $result = mysql_query($query) or die("Error getting school details"); $row = mysql_fetch_assoc($result); $schoolname = $row['name']; //Use this path to store the path of the file in the database. $filepath = $schoolimage . $schoolname; //Create the folder if it does not already exist if(!file_exists('SchoolImages')) { if(mkdir('SchoolImages')) { echo 'Folder ' . 'SchoolImages' . ' created.'; } else { echo 'Error creating folder ' . 'SchoolImages'; } } //Store the folder for the course title. if(!file_exists( $filepath )) { if(mkdir( $filepath )) { echo 'Folder ' . $schoolname . ' created.'; } else { echo 'Error creating folder ' . $schoolname; } } // Where the file is going to be placed $target_path = $filepath; // Add the original filename to our target path. Result is "uploads/filename.extension" echo $target_path = $target_path . '/' . basename( $_FILES['uploadedfile']['name']); if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) { echo "The file ". basename( $_FILES['uploadedfile']['name'])." has been uploaded"; $filename = $_FILES['uploadedfile']['name']; //Store the filename, path other criteria in the database echo $query = "INSERT INTO image(image_id, name, path) VALUES(0, '$filename', '$filepath')"; //Perform the query $add = mysql_query($query, $conn) or die("Unable to add the image details to the database"); $imageid = mysql_insert_id(); //Store the filename, path other criteria in the database echo $query = "INSERT INTO image_school( image_id, school_id ) VALUES('$imageid', '$schoolid')"; //Perform the query $add = mysql_query($query, $conn) or die("Unable to add the image details to the database"); $message = 'Upload Successful'; //Close the connection to the database mysql_close($conn); //header("Location: add_school_photo_form.php? message=$message"); exit(); } else { $message = 'There was an error uploading the file, please try again!'; //Close the connection to the database mysql_close($conn); //header("Location: add_school_photo_form.php? message=$message"); exit(); } ?> The output of the above is as follows: Notice that I am echoing out line echo $target_path = $target_path . '/' . basename( $_FILES['uploadedfile']['name']); SchoolImages/george/shark.jpg The folder SchoolImages/george gets created on the server but no image is uploaded - It seems to fail at the above line.. Any advice would be much appreciated, Thanks in advance Joe Link to comment https://forums.phpfreaks.com/topic/193096-adding-photos/ Share on other sites More sharing options...
mikesta707 Posted February 23, 2010 Share Posted February 23, 2010 Are you getting an error message? Link to comment https://forums.phpfreaks.com/topic/193096-adding-photos/#findComment-1016900 Share on other sites More sharing options...
joesaddigh Posted February 23, 2010 Author Share Posted February 23, 2010 No the only output that I get as stated above. Notice that the queries are not being printed out so it is never getting into that part of the code... I.E failing at if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) Link to comment https://forums.phpfreaks.com/topic/193096-adding-photos/#findComment-1016908 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.