So i am having a lot of problems with the inserting the information into my database using pdo [code] <?php // initialization $result_final = ""; $counter = 0; // List of our known photo types $known_photo_types = array( 'image/pjpeg' => 'jpg', 'image/jpeg' => 'jpg', 'image/gif' => 'gif', 'image/bmp' => 'bmp', 'image/x-png' => 'png' ); // GD Function List $gd_function_suffix = array( 'image/pjpeg' => 'JPEG', 'image/jpeg' => 'JPEG', 'image/gif' => 'GIF', 'image/bmp' => 'WBMP', 'image/x-png' => 'PNG' ); // Fetch the photo array sent by preupload.php $photos_uploaded = $_FILES['photo_filename']; // Fetch the photo caption array $photo_caption = $_POST['photo_caption']; // Fetch the photo category id $photo_category_id = $_POST['category_name']; try { include("config.inc.php"); while( $counter <= count($photos_uploaded) ) { if($photos_uploaded['size'][$counter] > 0) { if(!array_key_exists($photos_uploaded['type'][$counter], $known_photo_types)) { $result_final .= "File ".($counter+1)." is not a photo<br />"; } else { // Prepare the query for execution $sql = "INSERT INTO gallery_photos(photo_filename, photo_caption, photo_category) VALUES( ?, ?, ?)"; $results = $db->prepare($sql); // Set the parameters $results->bindParam(1, $photo_filename); $results->bindParam(2, $photo_caption[$counter]); $results->bindParam(3, $photo_category_id); $photo_filename = '0'; // Execute the insert $results->execute(); $results = null; $sql = "SELECT category_name FROM gallery_category WHERE category_id='".$photo_category_id."'"; $results = $db->query($sql); $photo_category = $results->fetch(); echo $results; //$photo_category = $results->fetch(PDO::FETCH_ASSOC); // Retrieve the ID from the last insert $new_id = $db->lastInsertId(); $filetype = $photos_uploaded['type'][$counter]; $extention = $known_photo_types[$filetype]; $filename = $new_id.".".$extention; //mysql_query( "UPDATE gallery_photos SET photo_filename='".addslashes($filename)."' WHERE photo_id='".addslashes($new_id)."'" ); //$db->beginTransaction(); $select = $db->prepare("UPDATE gallery_photos SET photo_filename='".addslashes($filename)."' WHERE photo_id='".addslashes($new_id)."'"); $select->execute(); //$db->commit(); // Store the orignal file copy($photos_uploaded['tmp_name'][$counter], $images_dir."/".$photo_category['category_name']."/".$filename); // Let's get the Thumbnail size $size = GetImageSize($images_dir."/".$photo_category['category_name']."/".$filename); if($size[0] > $size[1]) { $thumbnail_width = 100; $thumbnail_height = (int)(100 * $size[1] / $size[0]); } else { $thumbnail_width = (int)(100 * $size[0] / $size[1]); $thumbnail_height = 100; } // Build Thumbnail with GD 1.x.x, you can use the other described methods too $function_suffix = $gd_function_suffix[$filetype]; $function_to_read = "ImageCreateFrom".$function_suffix; $function_to_write = "Image".$function_suffix; // Read the source file $source_handle = $function_to_read ( $images_dir."/".$photo_category['category_name']."/".$filename ); if($source_handle) { // Let's create an blank image for the thumbnail $destination_handle = ImageCreate ( $thumbnail_width, $thumbnail_height ); // Now we resize it ImageCopyResized( $destination_handle, $source_handle, 0, 0, 0, 0, $thumbnail_width, $thumbnail_height, $size[0], $size[1] ); } // Let's save the thumbnail $function_to_write( $destination_handle, $thumbs_dir."/".$photo_category['category_name']."/".$filename ); ImageDestroy($destination_handle ); $result_final .= "<img src='".$thumbs_dir."/".$photo_category['category_name']."/".$filename."' /> File ".($counter+1)." Added<br />"; } } $counter++; } $db = null; $insert = null; } catch (PDOException $e) { $db->rollback(); die(print "Error!: " . $e->getMessage() . "<br/>"); } ?> <html> <head> <title>Photos uploaded</title> </head> <body> <?php echo $result_final; ?> <a href="index.php">Back to Gallery</a> </body> </html> [/code]