Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Сохранить картинку в папку (нетипичная загрузка) (https://javascript.ru/forum/dom-window/19989-sokhranit-kartinku-v-papku-netipichnaya-zagruzka.html)

book-make 06.08.2011 12:00

Нетипичная загрузка (вопрос еще не решен)
 
Есть страница index.html

<html>
...
<img id="image" src="images/qwerty.jpg">
<input type="submit" value="отправить" >
...
<html>

Как сделать так, чтобы после нажатия на кнопку отправить, эта картинка сохранилась в моей папке /save/ на сервере? P.S.Прошу обратить внимание, что картинка уже находится на странице, а не загружается кнопкой upload.

devote 06.08.2011 12:12

copy( $_SERVER['DOCUMENT_ROOT']. '/images/qwerty.jpg', $_SERVER['DOCUMENT_ROOT']. '/save/qwerty.jpg' );

book-make 06.08.2011 12:43

Вообщем cделал так, но не получается сохранить в папку.

<html>
...
<form action="script.php" method="post" enctype="multipart/form-data">
<img id="image" src="images/qwerty.jpg">
<input type="submit" value="отправить" >
...
<html>

<?
copy( $_SERVER['DOCUMENT_ROOT']. '/images/qwerty.jpg', $_SERVER['DOCUMENT_ROOT']. '/save/qwerty.jpg' );
?>

devote 06.08.2011 12:56

Ну для начала нужно выяснить где именно лежит твоя картинка на хосте, так как ссылка указана релятивная в теге img то возможно рисунок лежит в какой нить подпаке, затем нужно создать на сервере в корне DOCUMENT_ROOT папку /save/

далее после в файле script.php нужно добавить код что я дал выше, и указать правильные пути. Но так же этот код нужно внести в правило, что бы он не выполнялся в тот момент когда это не нужно.

А вообще нужно нормально описывать проблему. Очень сложно понять что конкретно требуется, и каков смысл копировать файл внутри сервера.

book-make 06.08.2011 13:09

Значить все находится вот так:

/save/

/main/
{
/images/
index.php
}

script.php

- Папка /main/ содержит папку /images/ и index.php. В папке /images/ лежит картинка qwerty.jpg
- В папку /save/ загружаются картинки.
- Script.php - обработчик

На index.php (mysite.ru/main/) пользователь пишет ajaxom текст на картинку-демотиватор. Нужно сделать так, чтобы после нажатия на кнопку отправить, эта картинка сохранилась в папке /save/

devote 06.08.2011 13:24

файл index.php
<html>
 ...
 <form action="script.php" method="post" enctype="multipart/form-data">
 <img id="image" src="images/qwerty.jpg" />
 <input type="hidden" name="action" value="1" />
 <input type="submit" value="отправить" />
 </form>
 ...
<html>


файл script.php
<?php
    $root_directory = dirname( __FILE__ );

    if ( isset( $_POST['action'] ) && $_POST['action'] == 1 ) {
        copy( $root_directory.'/images/qwerty.jpg', $root_directory.'/../save/qwerty.jpg' );
    }
?>

Если я правильно понял script.php лежит там же где и index.php судя по тому что в форме указана релятивная ссылка на файл, то-есть искать в текущей директории.

book-make 06.08.2011 13:28

Script.php лежит в основной директории, но переместить не трудно)

kobezzza 06.08.2011 13:32

Мне кажется, что раздел "элементы интерфейса" никак не связан с языком PHP и данной проблемой.

book-make 06.08.2011 13:37

Все здорово, изображение сохраняется, но вот текст, написанные пользователем нет(

book-make 06.08.2011 13:37

Кто-ж знал, что для решения проблемы потребуется язык php )


Часовой пояс GMT +3, время: 00:56.