[ crowsoul @ 26.04.2008. 23:47 ] @
Ćao Svima,

imam sledeći problem:
Trebam upload skriptu koja šalje fajl na mail adresu. Jedini fajlovi koji su dozvoljeni za upload su .doc i .pdf, veličine do 300 kila.

Njuškajući po webu, našao sam sledeću skriptu koja je najbliža meni i mom skromnom znanju PHP-a, ali ipak...ne ide.

Kod za formu koja sabmituje fajl skripti (file se zove upload.php):

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<link href="seastyle.css" rel="stylesheet" type="text/css" />
</head>
<body>
<table width="185" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<form action="upload_ac.php" method="post" enctype="multipart/form-data" name="form1" id="form1">
<td width="183">
<table width="183" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF">
<tr>
<td width="175"><strong>Please select Your file...</strong></td>
</tr>
<tr>
<td><div align="center">
<input name="ufile" type="file" id="ufile" size="16" />
</div></td>
</tr>
<tr>
<td align="center"><input type="submit" name="Submit" value="Upload" /></td>
</tr>
</table>
</td>
</form>
</tr>
</table>
</body>
</html>

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Kod fajla po imenu upload_ac.php, to je skripta koja bi trebala da radi posao:

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

<?php
//set where you want to store files
//in this example we keep file in folder upload
//$HTTP_POST_FILES['ufile']['name']; = upload file name
//for example upload file name cartoon.gif . $path will be upload/cartoon.gif
$path= "upload/".$HTTP_POST_FILES['ufile']['name'];
if($ufile !=none)
{
if(copy($HTTP_POST_FILES['ufile']['tmp_name'], $path))
{
echo "Successful<BR/>";

//$HTTP_POST_FILES['ufile']['name'] = file name
//$HTTP_POST_FILES['ufile']['size'] = file size
//$HTTP_POST_FILES['ufile']['type'] = type of file
echo "File Name :".$HTTP_POST_FILES['ufile']['name']."<BR/>";
echo "File Size :".$HTTP_POST_FILES['ufile']['size']."<BR/>";
echo "File Type :".$HTTP_POST_FILES['ufile']['type']."<BR/>";
echo "<img src=\"$path\" width=\"150\" height=\"150\">";
}
else
{
echo "Error";
}
}
?>

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Moj problem:

Fajl to sve stavlja u folder UPLOADS, a to nije ono što meni treba.
Ne mogu da prepoznam gde menjam parametre za definiciju dozvoljenih fajlova za upload, kao ni definiciju za dozvoljenu veličinu.

S obzirom da mi skripta stvarno treba, naknada za profesionalnu pomoć nije problem. Radi se o sajt za Holandskog klijenta, sajt je gotov a ovo je poslednji deo koji sam obećao i sada venem pred ekranom.

Kontakt preko privatnih poruka je valjda najbolji...

Ostavio bi i mobilni ali sam to jednom uradio pa mi je neko rekao da to nije dozvoljeno po pravilima formuma.
Ispravite me ako grešim, pročitao sam i pravilnik ponovo i to se ne pominje.

U svakom slučaju HELP,

Unapred zahvalan.













[ Nemanja Avramović @ 27.04.2008. 01:39 ] @
Ako nekome hoćeš da daješ nadoknadu za završavanje skripte, obrati se na forumu IT berza poslova. A ono što ti treba da uradiš (najjednostavniji i ne baš najsigurniji način) je da posle uploada izvučeš ekstenziju fajla i ako nije pdf odnosno doc, onda brišeš fajl. Isto tako proveravaš i veličinu fajla, i ako je manja od 300 kb, brišeš fajl.
Za slanje mejlova pogledaj mail() funkciju i obavezno dobro prouči mejl hedere jer se uz pomoć njih šalju attachmenti, ili pogledaj neku od mnogobrojnih phpmailer klasa.

p.s. Za upload se koristi move_uploaded_file funkcija a ne copy, jer copy neće baš uvek i svuda da radi kako treba.
[ crowsoul @ 04.05.2008. 22:37 ] @
Pozdrav Nemanja,

problem je u međuvremenu rešen,

zahvaljujem na savetu.


Pozz & all the best!