Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

गैलरी में चित्र जोड़ने के लिए PHP और MySQL का उपयोग करें

आपको छवि के बारे में जानकारी और छवि के फ़ाइल नाम वाली एक MySQL तालिका की आवश्यकता होगी:

CREATE TABLE images (
    id int(3) not null auto_increment,
    data_type varchar(128) not null,
    title varchar(256) not null,
    file_name varchar(64) not null,
    primary key(id)
)

और आपको एक इमेज अपलोड फॉर्म बनाना होगा, कुछ इस तरह:

<form enctype="multipart/form-data" action="uploader.php" method="POST">
    Data type: <input type="text" name="dataType"><br>
    Title: <input type="text" name="title"><br>
    Image to upload: <input type="file" name="image"><br>
    <input type="submit" value="Upload">
</form>

और अपलोड की गई फ़ाइलों को संभालने और डेटाबेस प्रविष्टियाँ जोड़ने के लिए एक PHP स्क्रिप्ट:

uploader.php

<?php
$dataType = mysql_real_escape_string($_POST["dataType"]);
$title = mysql_real_escape_string($_POST["title"]);
$fileName = basename($_FILES["image"]["name"]);
$target_path = "images/gallery/".$fileName);
if (file_exists($target_path))
{
    echo "An image with that file name already exists.";
}
elseif (move_uploaded_file($_FILES["image"]["tmp_name"], $target_path))
{
    // The file is in the images/gallery folder. Insert record into database by
    // executing the following query:
    // INSERT INTO images
    // (data_type, title, file_name) VALUES('$dataType','$title','$fileName')
    echo "The image was successfully uploaded and added to the gallery :)";
}
else
{
    echo "There was an error uploading the file, please try again!";
}
?>

ध्यान दें कि यह स्क्रिप्ट सुरक्षित नहीं है, यह लोगों को सर्वर पर उदाहरण के लिए .php फ़ाइलों को अपलोड करने की अनुमति देती है। कुछ इस तरह जरूरी होगा:

$allowed_extensions = array("jpg","jpeg","png","gif");
$extension = pathinfo($fileName, PATHINFO_EXTENSION);
if (!in_array($extension,$allowed_extensions))
{
    die("Only these file types are allowed: jpg, png, gif");
}

अब गैलरी पृष्ठ पर आप डेटाबेस में छवियों के माध्यम से लूप करना चाहेंगे।

<?php
$images = mysql_query("SELECT * FROM images");
while ($image=mysql_fetch_assoc($images))
{
    ?>
    <li data-id="id-<?=$image["id"] ?>" data-type="<?=$image["data_type"] ?>">
    <div class="column grid_3">
    <a class="fancybox" rel="<?=$image["data_type"] ?>" href="images/gallery/<?=$image["file_name"] ?>" title="<?=$image["title"] ?>">
    <img src="images/gallery/<?=$image["file_name"] ?>" alt="<?=$image["title"] ?>" class="max-img-border"></a>
    <h5><?=$image["title"] ?></h5>
    </div>  
    </li>
    <?php
}
?>

कृपया ध्यान दें कि अपलोड फॉर्म को सुरक्षित रखना होगा, और केवल सही लोगों के लिए उपलब्ध होगा। आप नहीं चाहते कि स्पैमर आपके सर्वर पर यादृच्छिक फ़ाइलें अपलोड करें।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. उच्चतम/सबसे छोटे <जो कुछ भी> प्रति समूह के साथ रिकॉर्ड प्राप्त करें

  2. CodeIgniter का उपयोग करके JSON फ़ाइल में लिखें

  3. PHP में थोड़ी देर के लूप में मैं MySQL क्वेरी का उपयोग करने से कैसे बच सकता हूं?

  4. शेल कमांड से डेटाबेस कैसे बनाएं?

  5. जावा अलग वस्तुओं पर अनावश्यक प्रश्नों को हाइबरनेट करें