Вернуться   SEO форум - оптимизация и продвижение сайтов > Web разработки > Программирование

Важная информация
Программирование - PHP, MySQL, JavaScript, CSS, HTML верстка и т.д.

Ответ
 
Опции темы Оценить тему Опции просмотра
Старый 20.10.2011, 23:46   #1
 
Аватар для bazan
 
Сообщений: 150
FR (активность): 3,879

Доп. информация
Вопрос Автор темы PHP код добавления содержиого .txt в БД MySQL без ftp и разрешений

Здравствуйте форумчане. Кто сталкивался, подскажите...
Как можно посредством PHP можно javascript извлекать содержимое файликов .txt на компьютере через форму <input type="file"> и напрямую добавлять этот текст в базу данных. Т.е. не используя изменения прав доступа на хостинге, закачку самого файла .txt на хостинг и функций fopen() fread() и т.п.
Я уже долго в поисках и ничего не нашел...
Представляю себе немного так, например: Есть форма <input type="file">, через неё выбираем .txt у себя на компьютере, жмем некую кнопку, после обработки НЕИЗВЕСТНЫМ javascript'ом извлекаем содержимое .txt в div, а потом с помощью библиотеки скриптов я сам смогу отправить содержимое div методом POST на страницу PHP для добавления в БД MySQL.
Самое сложное, какими функциями или скриптами можно извлечь содержимое .txt без загрузки на хостинг?????
Заранее благодарю!
bazan вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
Старый 21.10.2011, 00:14   #2
 
Аватар для komyak
 
Сообщений: 1,178
FR (активность): 32,790

Доп. информация
По умолчанию

Если правильно понял- А что мешает прямо с компа слать пост на сервер?
БД поддерживает удаленное соединение?


Сео
komyak вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
"Спасибо" от:
bazan (21.10.2011)
Старый 21.10.2011, 19:47   #3
 
Аватар для bazan
 
Сообщений: 150
FR (активность): 3,879

Доп. информация
По умолчанию Автор темы

komyak, не пойму, как это? Вроде этого: echo $_FILES['txt']['name']?;
Не ругайтесь, я например написал...
Постараюсь объяснить для чего мне это необходимо.
Готовлю некий скриптик, в котором нужна вышеописаная способность добавления cодержимого в СУБД, и хочу избавить людей, у которых он будет использоваться от всяческой дополнительной настройки подключения по FTP скрипта, либо вручную изменения прав доступа к папкам на хостинге. Хочется сделать все просто и автоматизировано.
Если возможно изменить права доступа к папке посредством PHP посоветуйте, как это сделать без подключения по FTP. Тогда моежт будет по проще.
bazan вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
Старый 21.10.2011, 20:09   #4
 
Аватар для komyak
 
Сообщений: 1,178
FR (активность): 32,790

Доп. информация
По умолчанию

Вроде должно работать.
Код:
 <?php
if ( isset( $_POST['upload'] ) ) {
			if ( $curl = curl_init() ) {
						curl_setopt( $curl, CURLOPT_VERBOSE, 2 );
						curl_setopt( $curl, CURLOPT_URL, 'Адрес скрипта приёмника на сервере' );
						curl_setopt( $curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3 (.NET CLR 3.5.30729)' );
						curl_setopt( $curl, CURLOPT_RETURNTRANSFER, true );
						curl_setopt( $curl, CURLOPT_HEADER, true );
						curl_setopt( $curl, CURLOPT_POST, 1 );
						curl_setopt( $curl, CURLOPT_POSTFIELDS, array( 'my_file' => '@' . $_FILES['upl_img']['tmp_name'] ) );
						$out = curl_exec( $curl );
						curl_close( $curl );
			} 
} else {
			echo "
     <form id='form' class='img_uploader' method='POST' enctype='multipart/form-data' action='index.php'>
     <input type='file' name='upl_img'>
     <input type='submit' name='upload' value='upload'>
     </form>
     ";
}
 ?>
Добавлено через 2 минуты
Или посмотри в сети. Примеров очень много:
(копипаст):
Код:
<?php 
$upload = 'image.gif'; 
$postdata = array( 'name' => 'evgenijj', 
                   'email' => '[email protected]', 
                   'message' => 'Какое-то сообщение от пользователя evgenijj', 
                   'upload' => "@".$upload ); 

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, 'http://server.com/getfile.php'); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0); 
curl_setopt($ch, CURLOPT_POST, 1); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata); 
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30); 
curl_exec($ch);  
curl_close($ch); 
?>
Файл getfile.php на сервере http://server.com:
Код:
<?php 
print_r( $_POST ); 
print_r( $_FILES ); 
move_uploaded_file ( $_FILES['upload']['tmp_name'], 'image.gif' ) 
?>
Добавлено через 5 минут
bazan,
Скрытый (как скрывать?) текст. Только для группы: "Новичок":
Ваша группа не позволяет просмотреть скрытую информацию.


Сео
komyak вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
"Спасибо" от:
bazan (21.10.2011)
Старый 21.10.2011, 20:18   #5
 
Аватар для bazan
 
Сообщений: 150
FR (активность): 3,879

Доп. информация
По умолчанию Автор темы

Огромное спасибо komyak, направил на путь истиный, а я сразу почемуто отбросил функцию $_FILES['userfile']['tmp_name']; Я разобрался. Люблю этот форум!!! Вот что получилось то чно нужно... Создаем temp файл читаем и удаляем его:

<?php
$sd=$_FILES['userfile']['tmp_name'];
$file = fopen($sd,"r");
if(!file)
{
echo("Ошибка открытия файла");
}
else
{
$buff = fread ($file,100);
print $buff;
unlink($sd);
}
?>
<form enctype="multipart/form-data" action="" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="30000" />
Отправить этот файл: <input name="userfile" type="file" />
<input type="submit" value="Send File" />
</form>

Пользуйтесь на здоровье, кому надо!

Добавлено через 42 секунды
ВОт только на всех ли хостингах это будет работать????
bazan вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
Старый 21.10.2011, 22:24   #6
 
Аватар для Umka
 
Сообщений: 4,143
FR (активность): 80,659

Доп. информация
По умолчанию

Цитата:
Сообщение от bazan Посмотреть сообщение
ВОт только на всех ли хостингах это будет работать????
где удаленное соединение с БД есть/включено должно работать. То есть наверное не на всех.
Umka вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
"Спасибо" от:
bazan (24.10.2011)
Старый 22.10.2011, 00:21   #7
 
Аватар для komyak
 
Сообщений: 1,178
FR (активность): 32,790

Доп. информация
По умолчанию

Могут возникнуть проблемы только с максимальным размером файла при отправке. На некоторых ограничивают до 2-х метров.
В остальном все нормально, кроме:
$buff = fread ($file,100);
Не лучше ли будет:
$buff = fread ($file,strlen($file));
И если это будет добавляться в БД, то не забудь сделать фильтр данных.
Если объем большой, то и оперативки должно быть много, у тебя все в буфер грузится.


Сео
komyak вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
"Спасибо" от:
bazan (24.10.2011)
Ответ

Метки
без загрузки, добавить в субд, содержимое .txt

Быстрый ответ
Ваше имя пользователя: Регистрация. Для входа нажмите здесь
Случайный вопрос

Сообщение:
Опции
Внимание!
Этой теме более 3860 дней. Вы можете оставить сообщение здесь. Но, обращаем внимание. Возможно, рациональней создать новую тему (найти свежее обсуждение)?


Опции темы
Опции просмотра Оценка этой теме
Оценка этой теме:

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Для добавления в социалки Турист Софт оптимизатора, SEO утилиты 4 02.02.2012 11:22
Добавления страниц в соц.сети, подскажите сервис Skavr SEO сервисы 2 03.05.2010 18:09
Нужны скрипты для добавления на сайт. toxedo Разработка сайтов 2 10.06.2009 07:27
Подскажите скрипт добавления ссылок Ximera Создание сайтов другого типа 2 17.09.2008 14:10
Порограмма для добавления статей Юрий Программы и техника 5 05.08.2008 13:41

Текущее время: 15:39. Часовой пояс GMT +3.