Ciao a tutti...Di seguito (più avanti) metterò i codici x un form che ho fatto in html e poi le proprietà PHP per il funzionamento di quel form...Funziona tutto regolarmente tranne il fatto che l'allegato che voglio far partire non arriva indicandomi un errore....questo:
Warning: move_uploaded_file(attachments/FATT.MAX.doc) [function.move-uploaded-file]: failed to open stream: Permission denied in D:\Inetpub\webs\miositocom\invia.php on line 10
Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move 'C:\PHP\upload\php6A37.tmp' to 'attachments/FATT. MAX.doc' in D:\Inetpub\webs\miositocom\invia.php on line 10
Email inoltrata correttamente
NB= la riga 10 la potete vedere benissimo nella sorgente della proprietà PHP la quale non capisco dove stia l'anomalia ecco perche' sto chiedendo aiuto.
Volendo però, avrei trovato la soluzione proprio qui sul vostro sito in un tutorial che spiegava come fare un form con allegato però con alcune limitazioni che per la mia utilità mi penalizza per ciui io ho cercato di fondere le 2 cose facendo solo un gran casino...In poche parole dal fom proposto da voi QUI il form e soprattutto l'allegato mi arriva senza problemi solo che questo non ha la convalida degli spazi di compilazione cosa che a me servono...Poi ho porvato ad aggiungere altri campi che (nel vostro) form non sono stati messi ma non ricevo la risposta nella mail che mi arriva nonostante io cerchi di impostare le properieta' nel modo piu' corretto che riesco visto che non sono esperto di linguaggi di programmazione per cui ho applicato fino ad ora solo pillole prese in qua e in la....Per cui la mia domanda e' questa:
Qualcuno potrebbe aiutarmi a fare in modo che il mio form abbia le caratteristiche per quanto riguarda l'invio del allegato (che nel caso del vostro form mi arriva tranquillamente)? oppure fare in modo che il Form preso dal vostro sito abbia le caratteristiche di quello fatto da me con le voci name, phone, request, email, e la spunta per la privacy con la possibilita' di rendere i campi obbligatori?
Qui metto la rorgente html del mio form:
Mentre qui metto la proprietà PHP:
Spero di essere stato chiaro e soprattutto spero nel aiuto di qualcuno per risolvere questa cosa che ormai mi porto dietro da un po' di tempo e la cosa inizia ad essere frustrante soprattuto per il fatto che praticamente sono arrivato ad un passo dalla soluzione ma non so come fare questo passo....Premetto che non sono esperto per cui chiedo cortesemente di avere pazienza rendendo eventuali risposte comprensibili....Per i piu' navigati ogni risposta risulta banale ma per chi come me che ha nozioni veramente superficiali tutto diventa un ostacolo....Grazie ancora per l'attenzione.
Saluti
Warning: move_uploaded_file(attachments/FATT.MAX.doc) [function.move-uploaded-file]: failed to open stream: Permission denied in D:\Inetpub\webs\miositocom\invia.php on line 10
Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move 'C:\PHP\upload\php6A37.tmp' to 'attachments/FATT. MAX.doc' in D:\Inetpub\webs\miositocom\invia.php on line 10
Email inoltrata correttamente
NB= la riga 10 la potete vedere benissimo nella sorgente della proprietà PHP la quale non capisco dove stia l'anomalia ecco perche' sto chiedendo aiuto.
Volendo però, avrei trovato la soluzione proprio qui sul vostro sito in un tutorial che spiegava come fare un form con allegato però con alcune limitazioni che per la mia utilità mi penalizza per ciui io ho cercato di fondere le 2 cose facendo solo un gran casino...In poche parole dal fom proposto da voi QUI il form e soprattutto l'allegato mi arriva senza problemi solo che questo non ha la convalida degli spazi di compilazione cosa che a me servono...Poi ho porvato ad aggiungere altri campi che (nel vostro) form non sono stati messi ma non ricevo la risposta nella mail che mi arriva nonostante io cerchi di impostare le properieta' nel modo piu' corretto che riesco visto che non sono esperto di linguaggi di programmazione per cui ho applicato fino ad ora solo pillole prese in qua e in la....Per cui la mia domanda e' questa:
Qualcuno potrebbe aiutarmi a fare in modo che il mio form abbia le caratteristiche per quanto riguarda l'invio del allegato (che nel caso del vostro form mi arriva tranquillamente)? oppure fare in modo che il Form preso dal vostro sito abbia le caratteristiche di quello fatto da me con le voci name, phone, request, email, e la spunta per la privacy con la possibilita' di rendere i campi obbligatori?
Qui metto la rorgente html del mio form:
Codice:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<script language="javascript">
function verifica(){
name="";
phone="";
email="";
request="";
spunta="";
if(document.TheForm.email.value==""){
email="Enter your e-mail\n";
document.TheForm.email.focus();
}else if(document.TheForm.email.value.lastIndexOf("@")==-1 || document.TheForm.email.value.lastIndexOf(".")==-1){
email="Insert valid e-mail\n";
document.TheForm.email.focus();
}
if(document.TheForm.request.value==""){
request="Insert request\n";
document.TheForm.request.focus();
}
if(document.TheForm.name.value==""){
name="Enter your name\n";
document.TheForm.name.focus();
}
if(document.TheForm.phone.value==""){
phone="Insert phone\n";
document.TheForm.phone.focus();
}
if(document.TheForm.spunta.checked==false){
spunta="Check for continue\n";
}
error="ERROR MISSING DATA\n";
if((spunta!="")||(email!="")||(name!="")||(phone!="")||(request!="")){
alert(error+name+phone+email+request+spunta)
return false;
}
}
</script>
</head>
<html>
<body>
<td width="123"> </td>
</tr>
<tr>
<td height="114"></td>
<td></td>
</tr>
</table>
<table width="289" border="0" cellpadding="0" cellspacing="0">
<!--DWLayoutTable-->
<tr>
<td width="289" height="464" valign="top"> <form method="post" enctype="multipart/form-data" action="invia.php" name="TheForm" id="TheForm" onSubmit="return verifica();">
<p>name and surname<br>
<input name="name" type="text" id="name">
<br>
phone <br>
<input name="phone" type="text" id="phone">
<br>
e-mail<br>
<input name="email" type="text" id="email">
<br>
request<br>
<textarea name="request" rows="3" id="request"></textarea>
<br>
<br>
attachments<br>
<input type="file" name="attachment">
<br>
<br>
privacy <br>
<textarea name="privacy" id="privacy">privacy.........................</textarea>
<br>
<br>
<input name="spunta" type="checkbox" id="spunta" value="tuodato">
I agree </p>
<p>
<input type="submit" name="Submit" value="send">
</p>
</form></td>
</tr>
</table>
</body>
</html>
Mentre qui metto la proprietà PHP:
PHP:
<?php
//Percorso dove raccoglieremo gli allegati
$path = "attachments/";
//Nome e Cognome
$name = $_POST['name'];
$phone = $_POST['phone'];
$email = $_POST['email'];
$message = $_POST['message'];
//Upload dell'allegato
move_uploaded_file($_FILES['attachment']['tmp_name'], $path.$_FILES['attachment']['name']);
//Messaggio
$subject = "Questa Email contiene un allegato";
$bodymail = "Name: ".$name." <br />
Phone: ".$phone." <br />
Email: ".$email." <br />
Message: <br /> ".$request." <br />";
//Inclusione della libreria
require_once("phpmailer/class.phpmailer.php");
//Creiamo un oggetto PHPMailer e ne settiamo le variabili
$mail = new PHPMailer();
$mail->From = $email;
$mail->FromName = $name." ".$surname;
$mail->AddAddress("mia@mail.it");
$mail->IsHTML(true);
$mail->Subject = $subject;
$mail->Body = $bodymail;
if($mail->AddAttachment($path.$_FILES['attachment']['name'])){
//Inviamo l'email
if($mail->Send()){
echo "Email inoltrata correttamente";
}else{
echo "Errore invio mail";
}
}else{
echo "Errore allegato";
}
?>
Spero di essere stato chiaro e soprattutto spero nel aiuto di qualcuno per risolvere questa cosa che ormai mi porto dietro da un po' di tempo e la cosa inizia ad essere frustrante soprattuto per il fatto che praticamente sono arrivato ad un passo dalla soluzione ma non so come fare questo passo....Premetto che non sono esperto per cui chiedo cortesemente di avere pazienza rendendo eventuali risposte comprensibili....Per i piu' navigati ogni risposta risulta banale ma per chi come me che ha nozioni veramente superficiali tutto diventa un ostacolo....Grazie ancora per l'attenzione.
Saluti