Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 04:49 20.05.24 
Компютри и Интернет
   >> PHP
Всички теми Следваща тема *Кратък преглед

Страници по тази тема: 1 | 2 | >> (покажи всички)
Тема Attach file 2 contact formнови  
АвторCheeseus (Нерегистриран)
Публикувано20.05.06 22:55



Знам, четох FAQ! Но не мога да разбера как да използвам този скрипт. Моля, помогнете: на сайта си имам форма за контакт и искам да добавя възможност за изпращане на файл (текстови). Скрипта, който ползвам, сложих в RE: на показания тук скрипт. Ако някой има желание да ми помогне, нека погледне там или на http://www.cheeseus.org/index_files/contactform.html който зарежда contactform.php . Добавих скрипт, взет от http://us2.php.net/manual/en/features.file-upload.php
но, сещате се, щом питам, че не проработи...
Благодаря на можещите да помагат!



Тема Re: Attach file 2 contact formнови [re: Cheeseus]  
Автор Bълk (умора няма)
Публикувано21.05.06 00:27



добре де .. а къде ти е във формата полето за файл?



Тема Re: Attach file 2 contact formнови [re: Bълk]  
АвторCheeseus (Нерегистриран)
Публикувано21.05.06 11:46



Mда... адреса, който посочих е без това поле. Ето я формата СЪС полето:
http://cheeseus.org/index_files/contactform_file.html
а PHP файла, който се бях опитвал да редактирам е:
http://cheeseus.org/index_files/contactform_file.php
Благодаря предварително!



Тема Re: Attach file 2 contact formнови [re: Cheeseus]  
Автор Bълk (умора няма)
Публикувано21.05.06 11:56



ми ти добре си го дал РНР, ама поне да беше дал рнрs и заедно с това правата на директория в която се опитваш да запишеш файл за потребител с който е пуснато РНР на уебсървъра.



Тема Re: Attach file 2 contact form [re: Bълk]  
АвторCheeseus (Нерегистриран)
Публикувано21.05.06 13:44



Е, тук вече ме хвана неподготвен - не разбирам за какво говориш, честно. Ако става дума за нещо по PHP файла (с attachment) там просто добавих към оригиналния скрипт допълнението за файл, но предполагам трябва да се редактира допълнително. Знам само, че от html формата полетата си имат имена - 'request', 'telephone', 'contact person' и 'file' например и те се взимат от PHP-то, но как и защо, не знам.
Ще бъде идеално ако ми напишеш какъв трябва да бъде php скрипта и какви промени трябва да направя в html-то.
Благодаря, че се опитваш да ме 'просветлиш'



Тема Re: Attach file 2 contact formнови [re: Cheeseus]  
Автор Bълk (умора няма)
Публикувано21.05.06 13:59



1. трябва да пуснеш сорс на рнр а не резултата който ти дава скрипта.
2. провери правата върху директория в която се опитваш да запишеш този файл (99.999% че там са ти проблемите) - ако е така, то трябва да се знае конфигурация на хостинга, че има много дебилни хостинг провайдъри дет пускат апач с един усер а РНР с друг и това със сейф мод и крайния усер след това осира всичко и става едно голямо сране с питане из форуми.



Тема Re: Attach file 2 contact formнови [re: Bълk]  
АвторCheeseus (Нерегистриран)
Публикувано21.05.06 14:31



Така, това е PHP скрипта, който в момента работи:
<?
$mailto = 'cheeseus@dir.bg' ;

$subject = "Translation job request" ;


$formurl = "http://cheeseus.org/asphodel/contactform1.html" ;
$errorurl = "http://cheeseus.org/error.html" ;
$thankyouurl = "http://cheeseus.org/thankyou.html" ;

$uself = 1;

// -------------------- END OF CONFIGURABLE SECTION ---------------

$headersep = (!isset( $uself ) || ($uself == 0)) ? "\r\n" : "\n" ;
$name = $_POST['person'] ;
$email = $_POST['email'] ;
$request = $_POST['request'] ;
$telephone = $_POST['tel'] ;
$http_referrer = getenv( "HTTP_REFERER" );

if (!isset($_POST['email'])) {
header( "Location: $formurl" );
exit ;
}
if (empty($name) || empty($email) || empty($request) || empty($telephone)) {
header( "Location: $errorurl" );
exit ;
}
if ( ereg( "[\r\n]", $name ) || ereg( "[\r\n]", $email ) || ereg( "[\r\n]", $telephone) ) {
header( "Location: $errorurl" );
exit ;
}

if (get_magic_quotes_gpc()) {
$request = stripslashes( $request );
}

$messageproper =

"This message was sent from:\n" .
"$http_referrer\n" .
"------------------------------------------------------------\n" .
"Name of sender: $name\n" .
"Email of sender: $email\n" .
"Telephone: $telephone\n" .
"------------------------- REQUEST -------------------------\n\n" .
$request .
"\n\n------------------------------------------------------------\n" ;

mail($mailto, $subject, $messageproper,
"From: \"$name\" <$email>" . $headersep . "Reply-To: \"$name\" <$email>" . $headersep . "X-Mailer: chfeedback.php 2.07" );
header( "Location: $thankyouurl" );
exit ;

?>

това е частта от html, която го извиква:
<form enctype="multipart/form-data" action="contactform.php" method="post" name="contactform">

<table width="300" border="0" cellpadding="0" cellspacing="0">

<tr><td height="30" align="left" valign="middle">
<textarea name="request" cols="40" rows="10" class="textBack"></textarea></td></tr>

<tr><td height="30" valign="middle">
<input type="text" name="person" class="textBackPerson" /></td></tr>

<tr><td height="30" valign="middle">
<input type="text" name="tel" class="textBackTel" /></td></tr>

<tr><td height="30" valign="middle">
<input type="text" name="email" class="textBackMail" /></td></tr>
************
<tr><td height="20" align=center valign="middle">
<input name="imageField" class="send" type="submit" border="0" /></td></tr>
</table>
</form>

Там, където са звездичките слагам:
<tr><td height="30" valign="middle">
<!-- The data encoding type, enctype, MUST be specified as below -->
<!-- MAX_FILE_SIZE must precede the file input field -->
<input type="hidden" name="MAX_FILE_SIZE" value="30000" />
<!-- Name of input element determines name in $_FILES array -->
<input name="userfile" type="file" class="attach" /></td></tr>

после, в PHP-то добавям:

<?php
// In PHP versions earlier than 4.1.0, $HTTP_POST_FILES should be used instead
// of $_FILES.

$uploaddir = '/var/www/uploads/';
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);

echo '<pre>';
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
echo "File is valid, and was successfully uploaded.\n";
} else {
echo "Possible file upload attack!\n";
}

echo 'Here is some more debugging info:';
print_r($_FILES);

print "</pre>";

?>

добавените части вземам от
http://us2.php.net/manual/en/features.file-upload.php

и, разбира се, тъй като е скърпено от човек, който не разбира PHP, aма въобще (аз) - не работи...

хостинга ми е в ДОМ.БГ - там си им работи всичко, доколкото знам.
Моля те, просто "скърпи" двата скрипта, така че да работят...
За проверката на правата - не знам как да направя това, ако обясниш, сигурно ще се справя...



Тема Re: Attach file 2 contact formнови [re: Cheeseus]  
Автор Bълk (умора няма)
Публикувано21.05.06 14:53



В отговор на:

$uploaddir = '/var/www/uploads/';




човече, понеже виждам, че се пънеш да разбереш как стоят нещата и се опитваш да го направиш и точно за това ти помагам!

Ти май не си дочел до края относно пътеките и правата и не си направил асоциация между написаното и това от което имаш нужда.

онове горе е директория в която ще се ъплоадват нещата, трябва да сложиш там пътя на директорията в уеб твоя хостинг. Освен това трябва да дадеш правата апач или РНР или твоя усер да имат право за писане в нея.



Тема Re: Attach file 2 contact formнови [re: Bълk]  
АвторCheeseus (Нерегистриран)
Публикувано21.05.06 15:44



Съжалявам, но наистине НЕ разбирам какво трябва да направя! Прочетох всичко по няколко пъти... Идеалния вариант (май и единствения) за помощ ще е просто да ми напишеш PHPто, да кажеш дали в HTML-то всичко е наред и да обясниш подробно какво друго трябда да се направи - не мога да науча основните неща в програмирането за 1-2 дни...
в тази "upload dir" какво трябва да напиша -
$uploaddir = '/var/www.cheeseus.org/uploads/'; ли? И съответно да си направя такава директория на сървъра? А не е ли целта този пословичен вече прикачен файл да го получа като attachment в пощата си, т.е. той да отиде някъде в DIR.bg? Освен това"даване на права апач или PHP" абсолютно нищо не ми говори, имай милост...!

Моля те, прати ми един мейл (cheeseus@dir.bg) че вече ставам смешен... не разбирам и бъкел от програмиране, но това мога да го кажа на няколко езика + да му направя синтактичен, етимологичен и семантичен разбор..



Тема Re: Attach file 2 contact formнови [re: Cheeseus]  
Автор Bълk (умора няма)
Публикувано21.05.06 17:22



вече ти казах, че няма да пиша. а за изпращане .. освен ъплоуд ще трябва да прочетеш за мейл и за бейс64-енкоуд функции, там в коментариите на потребители е написано повече от това което ти необходимо, за подобно изпращане можеш да се разминеш и без директорията ако дърпаш файл от темп директорията на РНР.




Страници по тази тема: 1 | 2 | >> (покажи всички)
Всички темиСледваща тема*Кратък преглед
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2024 Dir.bg Всички права запазени.