g2g Posted June 18, 2007 Share Posted June 18, 2007 Hi guys, I'm trying to program a video blog and right now I'm building the upload script. But it has refused to work. I have tried all that I know to get it to work. Perhaps someone can help me out here. I will use this thread until the blog is over. For any questions I might have. So here's the code. If you have a better way of doing this please be sure to share with me. The blog will have different categories of videos, and each video will have a title and notes that go with it to help the end user better understand what is covered in the video. I'm using PHP Version 4.3.11 and MySQL 4.1.14. <?php #add_video.php // This page allows users to upload videos to the server. // Set the page title, include the HTML header, and connect to the database. $page_title = 'Upload a File'; include ('./includes/header.html'); if (isset($_POST['submitted'])) { // Handle the form. require_once ('../mysql_connect.php'); // Connect to the database. if ($_FILES['upload']['error'] > 0) // Check for errors. { echo 'Problem: '; switch ($_FILES['upload']['error']) { case 1: echo 'File exceeded upload_max_filesize'; break; case 2: echo 'File exceeded max_file_size'; break; case 3: echo 'File only partially uploaded'; break; case 4: echo 'No file uploaded'; break; } exit; } // move the file to the correct place on the server. if (is_uploaded_file($_FILES['upload']['tmp_name'])) { // Validate the notes, topic, and category. if (!empty($_POST['notes'])) { $n = "'" . escape_data($_POST['notes']) . "'"; } else { $n = 'NULL'; } if (!empty($_POST['topic'])) { $t = escape_data($_POST['topic']); } else { $t = FALSE; } if (isset($_POST['types']) && (is_array($_POST['types']))) { $type = TRUE; } else { $type = FALSE; echo '<p><font color="red">Please select a course category!</font></p>'; } if ($n && $t && $type) { // Add the record to the database. $query = "INSERT INTO video_uploads (file_name, file_size, file_type, notes, topics) VALUES ('{$_FILES['upload']['name']}', '{$_FILES['upload']['size']}', '{$_FILES['upload']['type']}', $n, $t)"; $result = mysql_query ($query); $vid = @mysql_insert_id(); // Get the video ID. if ($vid > 0) { // New video has been added. // Make the video associations. // Build the query. $query = "INSERT INTO video_associations (video_id, video_category_id, approved) VALUES "; foreach ($_POST['types'] as $v) { $query .= "($vid, $v, 'Y'), "; } $query = substr ($query, 0, -2); // Chop off the last comma and space. $result = @mysql_query ($query); // Run the query. if (mysql_affected_rows() == count($_POST['types'])) { // Query ran OK. echo '<p><b>Thank you for your submission!</b></p>'; $_POST = array(); // Reset values. } else { // If second query did not run OK. echo '<p><font color="red">Your submission could not be processed due to a system error. We apologize for any inconvenience.</font></p>'; // Public message. echo '<p><font color="red">' . mysql_error() . '<br /><br />Query: ' . $query . '</font></p>'; // Debugging message. // Delete the video from the video_uploads table. $query = "DELETE FROM video_uploads WHERE video_id=$vid"; @mysql_query ($query); // Run the query. } // End of mysql_affected_rows() IF. } else { // If first query did not run OK. echo '<p><font color="red">Your submission could not be processed due to a system error. We apologize for any inconvenience.</font></p>'; // Public message. echo '<p><font color="red">' . mysql_error() . '<br /><br />Query: ' . $query . '</font></p>'; // Debugging message. } } else { // If one of the data tests failed. echo '<p><font color="red">Please try again.</font></p>'; } if (move_uploaded_file($_FILES['upload']['tmp_name'], "../uploads/$vid")) { echo '<p>Your video number has been uploaded!</p>'; } else { // File could not be moved. echo '<p><font color="red">Your video file could not be moved.</font></p>'; // Remove the record from the database. $query = "DELETE FROM video_uploads WHERE video_id = $vid"; $result = mysql_query ($query); } } else { echo 'Problem: Possible file upload attack. Filename: '; echo $_FILES['upload']['name']; } } // End of the main Submit conditional. // --------- DISPLAY THE FORM --------- ?> <form enctype="multipart/form-data" action="add_video.php" method="post"> <fieldset><legend>Fill out the form to upload a video:</legend> <input type="hidden" name="MAX_FILE_SIZE" value="1000000"> <p><b>File:</b> <input type="file" name="upload" /></p> <p><b>Topic(s) covered in the video:</b> <input type="text" name="topic" size="60" maxlength="60" value="<?php if (isset($_POST['topic'])) echo $_POST['topic']; ?>" /></p> <p><b>Notes:</b> <textarea name="notes" cols="40" rows="5"><?php if (isset($_POST['notes'])) echo $_POST['notes']; ?></textarea></p> <p><b>Course Categories:</b> <select name="types[]" multiple="multiple" size="3"> <?php // Create the pull-down menu information. $query = "SELECT * FROM video_categories ORDER BY category ASC"; $result = @mysql_query ($query); while ($row = mysql_fetch_array ($result, MYSQL_NUM)) { echo "<option value=\"$row[0]\""; // Make sticky, if necessary. if (isset($_POST['types']) && (in_array($row[0], $_POST['types']))) { echo 'selected="selected"'; } echo ">$row[1]</option>\n"; } ?> </select></p> </fieldset> <input type="hidden" name="submitted" value="TRUE" /> <div align="center"><input type="submit" name="submit" value="Submit" /></div> </form> <?php mysql_close(); // Close the database connection. include ('./includes/footer.html'); ?> Link to comment https://forums.phpfreaks.com/topic/56118-video-blog/ Share on other sites More sharing options...
teng84 Posted June 18, 2007 Share Posted June 18, 2007 and whats the errors???? Link to comment https://forums.phpfreaks.com/topic/56118-video-blog/#findComment-277199 Share on other sites More sharing options...
g2g Posted June 19, 2007 Author Share Posted June 19, 2007 and whats the errors???? that's the problem. i have no idea. i think it should work but for some reason it won't populate the categories. Link to comment https://forums.phpfreaks.com/topic/56118-video-blog/#findComment-277306 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.