|
Страници по тази тема: 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 | >> (покажи всички)
|
|
|