Gå til innhold

Skjema som sender vedlegg


Anbefalte innlegg

Skrevet (endret)

Har behov for et skjema med mulighet til å legge ved en fil. Kan lese bittelitt php, men er ikke i stand til å skrive det. Noen som kan hjelpe med denne funksjonen?

Her er php-filen uten funksjonen:

<?php
$navn = $_POST['navn'];
$telefon = $_POST['telefon'];
$sprak = $_POST['sprak'];
$tolke = $_POST['tolke'];
$oversette = $_POST['oversette'];
$last_opp = $_POST['last_opp'];
$emne = "Forespørsel fra nettsiden (søke jobb)";
$to = "[email protected]";
$code = "MIME-Version: 1.0\r\n".
 "Content-Type: text/html; charset=utf-8\r\n" .
      "Content-Transfer-Encoding: 8bit\r\n\r\n";


// SPAMINJECTION CHECK
function spamcheck($field) { 
if(eregi("to:",$field) || eregi("cc:",$field)) {
return TRUE;
}else{
return FALSE;
}
}

if($navn == "") {
$fyllnavn = "<div style='color: red;'>* Fyll ut navn!</div>";
}else{};

if($telefon == "") {
$fylltelefon = "<div style='color: red;'>* Fyll inn tlfnummer!</div>";
}else{};

if($sprak == "") {
$fyllsprak = "<div style='color: red;'>* Fyll inn Språk!</div>";
}else{};


if($navn == "" || $telefon == "" || $sprak == "" ) {
echo '<div id="oversettelse">
<form action="?side=sendmail" method="post" class="skjema" name="jobb_skjema"> ';
echo "\n \t $fyllnavn \n \t $fylltelefon \n \t $sprak \n \t ";
echo '<div class="skjemapunkt">
         	<label class="skjematekst">* Navn: </label>  	
     <input class="text" type="text" name="navn" size="20"></div>
         <div class="skjemapunkt">
         	<label class="skjematekst">* Telefon: </label>  	
     <input class="text" type="text" name="telefon" size="20"></div>
       	
       	
         <div class="skjemapunkt">
         	<label class="skjematekst">* Språk: </label>
         <input class="text" type="text" name="sprak" size="20"></div>
         
         <div class="skjemapunkt">
         	<label class="skjematekst">* Jeg ønsker å:</label>
     <label>Tolke</label><input type="checkbox" name="tolke" value="Ja">
     <label>Oversette (skriftlig)</label><input type="checkbox" name="oversette" value="Ja"></div>
     
     <div class="skjemapunkt">
         	<label>Last opp fil</label>
     <input class="text" type="file" name="last_opp" size="20"></div>
       	
         <div class="skjemapunkt">
         	<input type="submit" name="send_inn" value="Send inn"></div>
       	</form>
</div>';
}else{



mail ( $to, $emne, "From: websiden"  .  
"<BR><STRONG>navn</STRONG>: $navn"  . 
"<BR><STRONG>telefon:</STRONG> $telefon"  .
"<BR><STRONG>språk:</STRONG> $sprak"  .
"<BR><STRONG>tolke:</STRONG> $tolke"  .
"<BR><STRONG>oversette:</STRONG> $oversette"  .
"<BR><STRONG>legg ved fil:</STRONG> $last_opp", $code );
echo "<h1>Eposten ble sendt!</h1><br>";
echo "<a href='index.html'>Tilbake til forsiden</a>";
}
?>

 

Takker for hjelp og tips!

Endret av Kannutt
Videoannonse
Annonse
Skrevet

Du må ha dette i form'en på siden der brukeren fyller inn info'en:

<form action="upload_file.php" method="post"
enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file" /> 
<br />
<input type="submit" name="submit" value="Submit" />
</form>

 

Og du må putte noe som dette inn i scriptet ditt:

PHP
<?php

if ($_FILES["file"]["error"] > 0)

{

echo "Feil: " $_FILES["file"]["error"] . "<br />";

}

else

{

echo "Upload: " $_FILES["file"]["name"] . "<br />";

echo "Type: " $_FILES["file"]["type"] . "<br />";

echo "Størrelse: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";

 

move_uploaded_file($_FILES["file"]["tmp_name"],

"upload/" $_FILES["file"]["name"]);

echo "Lagret i: " "upload/" $_FILES["file"]["name"];

}

?>

 

Dette vil lagre filen i mappen upload (denne må du ha i samme mappe som scriptet)...

Skrevet

Takk for det, men vil ikke det skriptet bare lagre filen i en mappe på serveren? Jeg vil at filen skal komme med mailen som et vedlegg....

Skrevet

Da må du lese litt om multipart email.

 

Det du må gjøre er å lage mailen som ein multipart mail og så putte innholdet i den opplasta fila i mailen.

 

Vist du leser om mail funksjonen på php.net så står det ein komentar som inneholder ein funksjon som kan brukest til å sende emailer med vedlegg

Skrevet

Hmmm... Klarer ikke lese meg til en løsning. Har nok for lite kunnskap til å forstå hvordan det funker. Takk for hjelpen anyway!

Skrevet
Takk for det, men vil ikke det skriptet bare lagre filen i en mappe på serveren? Jeg vil at filen skal komme med mailen som et vedlegg....

8255787[/snapback]

Du må vel laste den opp før du sender den? Du trenger kansje ikke lagre den da, bare sende temp filen som blir lastet opp...

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...