Jump to content
  • 0

Как сохранить URL картинки в MYSQL?


quero
 Share

Question

2 answers to this question

Recommended Posts

  • 0

В базе лучше хранить только названия картинок и, допустим, конкретную папку, в которой они лежат. А URL задавать при выводе картинок, в PHP-скрипте. Это, во-первых, сэкономит ресурсы БД, а во-вторых, любое последующее редактирование станет проще.

Что до сути, то попробуй вот так:

/* HTML-форма */

/* В атрибуте action - имя твоего скрипта. */

/* Фича для загрузки рисунка. */

/* Кнопка подтверждения. */

<?php

/* Подключение к БД. Нужно имя сервера (если на одном сервере со скриптом - localhost), логин и пароль: */

$db = mysql_connect('localhost','login','password');

/* Указание, с какой именно БД будем работать: */

mysql_select_db('databasename',$db);

/* Если нажата кнопка... */

if(isset($_POST['ok'])) {

/* Если файл выбран... */

if(!empty($_FILES['pic']['name'])) {

/* Если он загружен... */

if(is_uploaded_file($_FILES['pic']['tmp_name'])) {

/* Называем папку для сохранения на сервере... */

$path = 'folder/';

/* Иногда, а также в том случае, если ты вс? же намереваешься сохранять URLы в БД, нужно писать так: $path = GetCWD().'/folder/'; */

/* Если файл туда скопирован... */

if(copy($_FILES['pic']['tmp_name'],$path.$_FILES['pic']['name'])) {

/* Пишем в БД */

$sql = "INSERT INTO `tablica` ( `pole_id` , `pole_pic` ) VALUES ('','".$_FILES['pic']['name']."');";

/* Если ты выбрал вариант с сохранением URLов, пиши так:

$sql = "INSERT INTO `tablica` ( `pole_id` , `pole_pic` ) VALUES ('','".$path.$_FILES['pic']['name']."');";

*/

mysql_query($sql,$db);

/* Теперь выбираем из БД в массив: */

$sql = "SELECT `pole_pic` FROM `tablica`;";

$res = mysql_query($sql,$db);

$row = mysql_fetch_array($res);

/* И выводим: */

echo ''.$row['pole_pic'].'"';

/* Убиваем массив и запрос: */

unset($row);

mysql_free_result($res);

};

};

};

};

/* Закрываем БД. */

mysql_close($db);

?>

Link to comment
Share on other sites

  • 0

Естественно, если у тебя в таблице не одна пикчура, запрос к БД должен быть поконкретнее :D

Можно так:

SELECT `pole_pic` FROM `tablica` WHERE `pole_id` = '1';

Дамп таблицы - примерно вот такой:

CREATE TABLE `tablica` (

`pole_id` INT NOT NULL AUTO_INCREMENT ,

`pole_pic` VARCHAR( 255 ) NOT NULL ,

PRIMARY KEY ( `id` )

);

Т.е. должно быть поле-первичный ключ с AUTO_INCREMENT и поле для имени картинки.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Обсуждения

    • Актуальные контакты: Telegram: @Nikker_web E-Mail:   tarasevich.email@gmail.com Портфолио https://www.behance.net/d4d4186e Разрабатываю дизайн групп в соц сетях, сайтов, приложений, другой дизайн под заказ    
    • Актуальные контакты: Telegram: @Nikker_web E-Mail:   tarasevich.email@gmail.com   Разрабатываю дизайн групп в соц сетях, сайтов, приложений, другой дизайн под заказ   Портфолио https://www.behance.net/d4d4186e
    • Доброго всем времени суток. Прошу помощи. Научите принципу изменения футера. Движок Xenforo. Версия 2.2.10. Стиль дефолтный. Что именно нужно в итоге на фото примере. Мой шаблон app.footer less имеет следующее значение.  .p-footer { .xf-publicFooter(); a { .xf-publicFooterLink(); } } .p-footer-inner { .m-pageWidth(); .m-pageInset(); padding-top: @xf-paddingMedium; padding-bottom: @xf-paddingLarge; } .p-footer-row { .m-clearFix(); margin-bottom: -@xf-paddingLarge; } .p-footer-row-main { float: left; margin-bottom: @xf-paddingLarge; } .p-footer-row-opposite { float: right; margin-bottom: @xf-paddingLarge; } .p-footer-linkList { .m-listPlain(); .m-clearFix(); > li { float: left; margin-right: .5em; &:last-child { margin-right: 0; } a { padding: 2px 4px; border-radius: @xf-borderRadiusSmall; &:hover { text-decoration: none; background-color: fade(@xf-publicFooterLink--color, 10%); } } } } .p-footer-rssLink { > span { position: relative; top: -1px; display: inline-block; width: 1.44em; height: 1.44em; line-height: 1.44em; text-align: center; font-size: .8em; background-color: #4682B4; border-radius: 2px; } .fa-rss { color: white; } } .p-footer-copyright { margin-top: @xf-elementSpacer; text-align: center; font-size: @xf-fontSizeSmallest; } .p-footer-debug { margin-top: @xf-paddingLarge; text-align: right; font-size: @xf-fontSizeSmallest; .pairs > dt { color: inherit; } } @media (max-width: @xf-responsiveMedium) { .p-footer-row-main, .p-footer-row-opposite { float: none; } .p-footer-copyright { text-align: left; padding: 0 4px; // aligns with other links } }  
    • Нужны сайты с примерами верстки, типа https://css-tricks.com/. Типовые приемы и нестандартные на все случаи жизни. Накидайте ссылок.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy