Hello and welcome to our community! Is this your first visit?
Enjoy an ad free experience by logging in. Not a member yet? Register.
Results 1 to 2 of 2

Thread: upload image

  1. #1
    New to the CF scene
    Join Date
    Feb 2010
    Thanked 0 Times in 0 Posts

    upload image

    i use this script for uploading image in mysql db
    $db_host = 'localhost'; // don't forget to change 
    $db_user = 'username'; 
    $db_pwd = 'password';
    $database = 'vargasfa_fake';
    $table = 'ae_gallery';
    // use the same name as SQL table
    $password = 'satan159E';
    // simple upload restriction,
    // to disallow uploading to everyone
    if (!mysql_connect($db_host, $db_user, $db_pwd))
        die("Can't connect to database");
    if (!mysql_select_db($database))
        die("Can't select database");
    // This function makes usage of
    // $_GET, $_POST, etc... variables
    // completly safe in SQL queries
    function sql_safe($s)
        if (get_magic_quotes_gpc())
            $s = stripslashes($s);
        return mysql_real_escape_string($s);
    // If user pressed submit in one of the forms
        // cleaning title field
        $title = trim(sql_safe($_POST['title']));
        if ($title == '') // if title is not set
            $title = '(empty title)';// use (empty title) string
        if ($_POST['password'] != $password)  // cheking passwors
            $msg = 'Error: wrong upload password';
            if (isset($_FILES['photo']))
                @list(, , $imtype, ) = getimagesize($_FILES['photo']['tmp_name']);
                // Get image type.
                // We use @ to omit errors
                if ($imtype == 3) // cheking image type
                    $ext="png";   // to use it later in HTTP headers
                elseif ($imtype == 2)
                elseif ($imtype == 1)
                    $msg = 'Error: unknown file format';
                if (!isset($msg)) // If there was no error
                    $data = file_get_contents($_FILES['photo']['tmp_name']);
                    $data = mysql_real_escape_string($data);
                    // Preparing data to be used in MySQL query
                    mysql_query("INSERT INTO {$table}
                                    SET ext='$ext', title='$title',
                    $msg = 'Success: image uploaded';
            elseif (isset($_GET['title']))      // isset(..title) needed
                $msg = 'Error: file not loaded';// to make sure we've using
                                                // upload form, not form
                                                // for deletion
            if (isset($_POST['del'])) // If used selected some photo to delete
            {                         // in 'uploaded images form';
                $id = intval($_POST['del']);
                mysql_query("DELETE FROM {$table} WHERE id=$id");
                $msg = 'Photo deleted';
    elseif (isset($_GET['show']))
        $id = intval($_GET['show']);
        $result = mysql_query("SELECT ext, UNIX_TIMESTAMP(image_time), data
                                 FROM {$table}
                                WHERE id=$id LIMIT 1");
        if (mysql_num_rows($result) == 0)
            die('no image');
        list($ext, $image_time, $data) = mysql_fetch_row($result);
        $send_304 = false;
        if (php_sapi_name() == 'apache') {
            // if our web server is apache
            // we get check HTTP
            // If-Modified-Since header
            // and do not send image
            // if there is a cached version
            $ar = apache_request_headers();
            if (isset($ar['If-Modified-Since']) && // If-Modified-Since should exists
                ($ar['If-Modified-Since'] != '') && // not empty
                (strtotime($ar['If-Modified-Since']) >= $image_time)) // and grater than
                $send_304 = true;                                     // image_time
        if ($send_304)
            // Sending 304 response to browser
            // "Browser, your cached version of image is OK
            // we're not sending anything new to you"
            header('Last-Modified: '.gmdate('D, d M Y H:i:s', $ts).' GMT', true, 304);
            exit(); // bye-bye
        // outputing Last-Modified header
        header('Last-Modified: '.gmdate('D, d M Y H:i:s', $image_time).' GMT',
                true, 200);
        // Set expiration time +1 year
        // We do not have any photo re-uploading
        // so, browser may cache this photo for quite a long time
        header('Expires: '.gmdate('D, d M Y H:i:s',  $image_time + 86400*365).' GMT',
                true, 200);
        // outputing HTTP headers
        header('Content-Length: '.strlen($data));
        header("Content-type: image/{$ext}");
        // outputing image
        echo $data;
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
        <title><? echo _SITE_NAME; ?> :: Admin Panel :: Home</title>
        <meta http-equiv=Content-Type content="text/html; charset=utf-8">
        <link href="css/style_<? echo _CSS_STYLE;?>.css" type=text/css rel=stylesheet>
    <body style="background: #ffffff;">
    <h4>Statistics -> Statistics</h4>
    <hr style="color:#cccccc">
        <br />    
        <br />    
    <title>MySQL Blob Image Gallery Example</title>
    if (isset($msg)) // this is special section for
                     // outputing message
    <p style="font-weight: bold;"><?=$msg?>
    <a href="<?=$PHP_SELF?>">reload page</a>
    <!-- I've added reloading link, because
         refreshing POST queries is not good idea -->
    <h1>Blob image gallery</h1>
    <h2>Uploaded images:</h2>
    <form action="<?=$PHP_SELF?>" method="post">
    <!-- This form is used for image deletion -->
    $result = mysql_query("SELECT id, image_time, title FROM {$table} ORDER BY id DESC");
    if (mysql_num_rows($result) == 0) // table is empty
        echo '<ul><li>No images loaded</li></ul>';
        echo '<ul>';
        while(list($id, $image_time, $title) = mysql_fetch_row($result))
            // outputing list
            echo "<li><input type='radio' name='del' value='{$id}'>";
            echo "<a href='{$PHP_SELF}?show={$id}'>{$title}</a> &ndash; ";
            echo "<small>{$image_time}</small></li>";
        echo '</ul>';
        echo '<label for="password">Password:</label><br>';
        echo '<input type="password" name="password" id="password"><br><br>';
        echo '<input type="submit" value="Delete selected">';
    <h2>Upload new image:</h2>
    <form action="<?=$PHP_SELF?>" method="POST" enctype="multipart/form-data">
    <label for="title">Title:</label><br>
    <input type="text" name="title" id="title" size="64"><br><br>
    <label for="photo">Photo:</label><br>
    <input type="file" name="photo" id="photo"><br><br>
    <label for="password">Password:</label><br>
    <input type="password" name="password" id="password"><br><br>
    <input type="submit" value="upload">
    and here is my db
    CREATE TABLE `ae_gallery` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `title` varchar(64) character SET utf8 NOT NULL,
    `ext` varchar(8) character SET utf8 NOT NULL,
    `data` mediumblob NOT NULL,
    PRIMARY KEY (`id`)

    now i want that i upload image and all image show on other page, like gallery
    please tell me what i do

  • #2
    UE Antagonizer Fumigator's Avatar
    Join Date
    Dec 2005
    Utah, USA, Northwestern hemisphere, Earth, Solar System, Milky Way Galaxy, Alpha Quadrant
    Thanked 637 Times in 625 Posts
    Is your question "How do I pull data out of my MySQL table and display it on a browser?" If it is, try google; I used "how to display mysql data" and got several promising links.


    Posting Permissions

    • You may not post new threads
    • You may not post replies
    • You may not post attachments
    • You may not edit your posts