Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [HTML][PHP] Dwa załączniki(pliki) z formularza kontaktowego?
mackooo
post 17.02.2015, 18:20:58
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 17.02.2015

Ostrzeżenie: (0%)
-----


Mam problem z wysłaniem dwóch złączników/plik graficzny z formularza kontaktowego ze strony internetowej. Cały kod który udało mi się stworzyć działa ale tylko i wyłącznie z jednym plikiem.

Proszę o jakieś pomysły bo mi sie już pomysły pokończyły smile.gif


Kod
<form enctype="multipart/form-data" action="kontakt1.php" method="post" name="contact">
                            
                
                
                <label for="plik">Załączniki:</label>
                <input type="file" name="plik" id="file" accept="image/jpeg,image/gif,aplication/zip,image/png" class="validate-subject required input_field"/>
                <input type="file" name="plik" id="file" accept="image/jpeg,image/gif,aplication/zip,image/png" class="validate-subject required input_field"/>
                <input type="file" name="plik" id="file" accept="image/jpeg,image/gif,aplication/zip,image/png" class="validate-subject required input_field"/>
                <div class="cleaner h10"></div>
                
                
                                                
                <input type="submit" value="Wyślij" id="send" name="send" class="submit_btn float_l" />
                <input type="reset" value="Reset" id="reset" name="reset" class="submit_btn float_r" />
                            
            </form>


Kod
<?php

    if ($_POST["send"])
    {
    
  
  
// Odbieramy dane z formularza  
    
$author = $_POST['author'];
$email = $_POST['email'];
$tytul = $_POST['tytul'];
$miasto = $_POST['miasto'];
$marka = $_POST['marka'];
$model = $_POST['model'];
$opis = $_POST['opis'];


srand((double)microtime()*10000000);
$znacznik = md5(uniqid(rand()));



    
    ////////// USTAWIENIA //////////
$odbiorca = 'test@gmail.com'; // Adres e-mail adresata
$tytul = 'Zapytanie z Lombard-Online'; // Temat listu
$message = "<script>alert('Twoje zapytanie zostalo wyslane!'); document.location.href='http://';</script>";
$error = "<script>alert('Wyst_pi_ b__d podczas wysy_ania formularz!'); document.location.href='http://';</script>";
$zformularza = "
Imi_ i Nazwisko: $author
Email: $email
Tutu_: $tytul
Miasto: $miasto
Marka: $marka
Model: $model
Wiadomość: $opis";
//////////////////////////////
    
      
    
   // Nag_ówki
$naglowki = "From: Lombard-onLine \n";
$naglowki .= "MIME-Version: 1.0\n";
$naglowki .= "Content-Type: multipart/mixed;\n";
$naglowki .= "\tboundary=\"___$znacznik==\"";



// Tre__ listu
$tresclistu="--___$znacznik==\n";
$tresclistu .="Content-Type: text/plain; charset=\"utf-8\"\n";
$tresclistu .="Content-Transfer-Encoding: 8bit\n";
$tresclistu .="\n$zformularza\n";

// Za__cznik

$nazwa_tymczasowa = $_FILES["plik"]["tmp_name"];
$nazwa_pliku = $_FILES["plik"]["name"];



if (is_uploaded_file($nazwa_tymczasowa))
{
$tresclistu .="--___$znacznik==\n";
$tresclistu .="Content-Type: image/jpeg,image/gif,aplication/zip,image/png\n";
$tresclistu .="Content-Disposition: attachment;\n";
$tresclistu .=" filename=\"$nazwa_pliku\"\n";
$tresclistu .="Content-Transfer-Encoding: base64\n\n";
$f = fopen($nazwa_tymczasowa, "rb");
$dane = fread($f,filesize($nazwa_tymczasowa));
fclose($f);
$tresclistu .= chunk_split(base64_encode($dane));
$tresclistu .="--___$znacznik==--\n";
}


// wys_anie listu
if (mail($odbiorca,$tytul,$tresclistu,$naglowki))
{
print "".$message."";
}
else
{
print "".$error."";
}
}
?>


Ten post edytował mackooo 17.02.2015, 18:30:16
Go to the top of the page
+Quote Post
freewalker
post 17.02.2015, 18:55:44
Post #2





Grupa: Zarejestrowani
Postów: 90
Pomógł: 4
Dołączył: 14.02.2015

Ostrzeżenie: (0%)
-----


musisz z pola file zrobić tablicę:

  1. <form action="file-upload.php" method="post" enctype="multipart/form-data">
  2. Send these files:<br />
  3. <input name="userfile[]" type="file" /><br />
  4. <input name="userfile[]" type="file" /><br />
  5. <input type="submit" value="Send files" />
  6. </form>
Go to the top of the page
+Quote Post
mackooo
post 17.02.2015, 20:08:00
Post #3





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 17.02.2015

Ostrzeżenie: (0%)
-----


coś jaśniej bo już mi się nic nie układa :/
Go to the top of the page
+Quote Post
freewalker
post 17.02.2015, 20:54:36
Post #4





Grupa: Zarejestrowani
Postów: 90
Pomógł: 4
Dołączył: 14.02.2015

Ostrzeżenie: (0%)
-----


poniższy skrypt wyjaśni ci wszystko, dodatkowo tylko JEDNO pole input z możliwością wyboru więcej niż jednego pliku : )

http://www.w3bees.com/2013/02/multiple-fil...d-with-php.html

darmowy skrypt do pobrania wraz z kodem przetwarzającym przesłaną tablicę plików.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 10.06.2024 - 13:17