Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]rozbudowany formularz dodawania danych
michal_86
post
Post #1





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 1.02.2010

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


Witam!

Chciałbym stworzyć formularz razem z skryptem dodawania, który będzie równocześnie dodawał tekst i zdjęcie

formularz wygląda tak:

  1. <form action="ddbwpow52.php" method="POST">
  2.  
  3. ID - tylko cyfry<br/>
  4. <input type="text" name="id"/ size=\"5\"><br/>
  5. Lokalizacja<br/>
  6. <input type="text" name="Lokalizacja"/ size=\"50\"><br/>
  7. Tytul<br/>
  8. <input type="text" name="tytul"/ size=\"150\"><br/>
  9. Opis<br/>
  10. <textarea name="opis" cols="70" rows="25"></textarea><br/>
  11.  
  12. Powierzchnia<br/>
  13. <input type="text" name="powierzchnia"/ size=\"150\"><br/>
  14. czynsz<br/>
  15. <input type="text" name="czynsz"/ size=\"150\"><br/>
  16. Dostepne<br/>
  17. <input type="text" name="dostepne"/ size=\"100\"><br/>
  18. Zdjecie<br/>
  19. <input type="hidden" name="MAX_FILE_SIZE" value="30000" />
  20. <form enctype="multipart/form-data" action="ddbwpow52.php" method="POST">
  21. Zdjęcie : <input name="zdjecie" type="file" /><br/>
  22. <input type="submit" value="dodaj"/>
  23. <input type="reset" value="Kasuj" />
  24. </CENTER>
  25. </form>


problem polega na tym, iż jak pewnie zauważyliście są dwie opcje wysyłania: <form action="ddbwpow52.php" method="POST"> oraz <form enctype="multipart/form-data" action="ddbwpow52.php" method="POST">
Jak się również zapewne domyślacie skrypt wykonuje tylko jedną metodę wysyłki - tą która znajduje się wyżej. Co ciekawe jeśli drugą opcje umieszczę ponad zwykłe wysyłanie - skrypt nie robi niczego, gdy jest tak jak teraz dodaje tylko tekst

Oto skrypt dodawania:
  1. $id = $_POST['id'];
  2. $tytul = $_POST['tytul'];
  3. $opis = $_POST['opis'];
  4. $powierzchnia = $_POST['powierzchnia'];
  5. $czynsz = $_POST['czynsz'];
  6. $dostepne = $_POST['dostepne'];
  7. $Lokalizacja = $_POST['Lokalizacja'];
  8. $zdjecie= $_POST['zdjecie'];
  9.  
  10. if( $id and $tytul and $opis and $powierzchnia and $czynsz and $dostepne and $Lokalizacja and $zdjecie ) {
  11.  
  12.  
  13. $connection = @mysql_connect('localhost', 'root')
  14. or die('Brak połączenia z serwerem MySQL');
  15. $db = @mysql_select_db('biurapow5', $connection)
  16. or die('Nie mogę połączyć się z bazą danych');
  17.  
  18. // dodajemy rekord do bazy
  19. $ins = @mysql_query("INSERT INTO pow5 SET id='$id', tytul='$tytul', opis='$opis', powierzchnia='$powierzchnia', czynsz='$czynsz', dostepne='$dostepne', Lokalizacja='$Lokalizacja', zdjecie='$zdjecie' ");
  20.  
  21. if($ins) echo "Rekord został dodany poprawnie";
  22. else echo "Błąd nie udało się dodać nowego rekordu";
  23. if( is_uploaded_file( $_FILES['zdjecie']['tmp_name'] ) )
  24. {
  25. $strUploadDir = 'images/' . $_FILES['zdjecie']['name'];
  26. if( move_uploaded_file( $_FILES['zdjecie']['tmp_name'], $strUploadDir ) )
  27. {
  28. echo 'Plik został pomyślnie uploadowany! <br />';
  29. }
  30. else
  31. {
  32. echo 'Upload pliku nie powiódł się!';
  33. }
  34. echo 'Dodatkowe informacje o uploadowanym pliku: <pre>' . print_r( $_FILES, true ) . '</pre>';
  35. }
  36. else
  37. {
  38. echo 'Wystąpił błąd podczas wysyłania pliku na serwer!';
  39. }
  40.  
  41. mysql_close($connection);
  42. }
  43.  
  44. ?>


I moje pytanie - czy da się zmienić coś w samym formularzu aby oba typy wysłania szły za jednym kliknięciem, czy musze kombinować ze skryptem, a jeśli tak to w jakim kierunku?

Pozdr
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
.tutaj wydawało mi się że samo name daje nazwę..
To skoro zajmujesz sie tym 4 dni to zrob wkoncu to o co cie prosilem. Nie polegaj na swoim WYDAWANIU SIE bo sami widzisz ze cie zawodzi. Dalem ci na początku linka to go przejedź od deski do deski 100 razy az wkoncu załapiesz co jest co w tym krociutkim kodzie.
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: 14.10.2025 - 09:42