Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][HTML][PHP]Formularz + upload zdjęć
daniel55
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 20.11.2019

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


Witam wszystkich.

Planuję zrobić prostą stronę - informacja o imprezie.
Na stronie chciałbym umieścić formularz z możliwością rejestracji (kilka danych :Imię , nazwisko, nick, email, tel).
Dodatkowo chcę aby była możliwość przesłania zdjęcia - Avatar uczestnika.
Kod testuję lokalnie na xampp serwer Apache.
Na stronce wpisuję dane ,otwiera się okno uploadu, wybieram plik i klikam wyślij.
Wpisane do formularza dane tekstowe Imię i nazwisko ... wyświetlają się na stronie, natomiast mam problem z lokalizacją i zapisem zdjęcia na serwerze.
Kod php którego używam :

wysyłanie pliku :
<form enctype="multipart/form-data" action="plik.php"
method="post" >
<input type="hidden" name="MAX_FILE_SIZE" value="512000" />
<input type="file" name="obrazek" />
<input type="submit" value="wyślij" />
</form>

zapis na serwerze odebranego plku:
<?php

function zapisz_plik()
{
$lokalizacja = './temp/plik_obrazkowy.jpg';

if(is_uploaded_file($_FILES['obrazek']['tmp_name']))
{
if(!move_uploaded_file($_FILES['obrazek']['tmp_name'], $lokalizacja))
{
echo 'problem: Nie udało się skopiować pliku do katalogu.';
return false;
}
}
else
{
echo 'problem: Możliwy atak podczas przesyłania pliku.';
echo 'Plik nie został zapisany.';
return false;
}
return true;
}

?>

Plik nie zapisuje się nigdzie, nie jestem pewien czy dobrze podaję ścieżkę zapisu i drugi parametr['tmp_name'].
Kolejna kwestia, to zapis tych danych w bazie danych na serwerze i ich wyświetlenie w formie listy uczestników(Imię, nazwisko, nick) z avatarem.
Dodatkowo podczas rejestracji można by dodać pole wyboru darmowego gadżetu z pośród kilku dostępnych w formie pola wyboru "radio", info dostępne tylko dla organizatora.
Jak najprościej zrealizować taką funkcję na stronie?
Będzie to mała impreza max kilkadziesiąt osób.
Z góry dzięki .
Pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
dublinka
post
Post #2





Grupa: Zarejestrowani
Postów: 594
Pomógł: 66
Dołączył: 22.02.2008
Skąd: Dublin

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


  1. $target_path = $target_path . "/" . basename( $_FILES['uploadedfile']['name']);
  2.  
  3. if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) {
  4. echo "ok";
  5. } else{
  6. echo "error";
  7. }


Lokalizacja to chyba wiesz co oznacza.


  1. if(isset($_FILES["uploadedfile"]["type"]) && ($_FILES["uploadedfile"]["size"] < 5000000)){
  2. $sourcePath = $_FILES['uploadedfile']['tmp_name'];
  3. $file = $_FILES['uploadedfile']['name'];
  4. $targetPath = "/uploads/".$file;
  5. if(move_uploaded_file($sourcePath,$targetPath)){
  6. echo "plik: ".$_FILES['uploadedfile']['name']." został przeslany";
  7. }else{
  8. echo "error.";
  9. }
  10. }else{
  11. echo "Nie dodales pliku lub jest za duzy max 5mb.";
  12. }


Ten post edytował dublinka 20.11.2019, 14:01:26
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 10.10.2025 - 13:56