Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][HTML]insert do tablei wraz z uploudem
Forum PHP.pl > Forum > Przedszkole
Raffal
Mam taki formularz
  1. <form action=panel/zapis.php method="POST">
  2. Temat, Adres:<input type="text" name="temat" value="" size="80" ><br>
  3. Tresc:<textarea name="tresc" cols="50" rows="10"></textarea><br><br>
  4.  
  5. foto 1:<br><input type="file" name="f1" value="" size=""><br>
  6. foto 2:<br><input type="file" name="f2" value="" size=""><br>
  7. foto 3:<br><input type="file" name="f3" value="" size=""><br>
  8. foto 4:<br><input type="file" name="f4" value="" size=""><br>
  9.  
  10. <input type="submit" value="Wyślij">
  11. </form>


i taki plik php do niego
  1. <?
  2.  
  3.  
  4. if(isset($_POST['temat'])){
  5.  
  6. //$data=date("Y-m-d H:i");
  7. $query=("INSERT INTO news( temat, tresc, data,
  8.  
  9. f_1,f_2,f_3,f_4 ) VALUES ( '". $temat ."', '". $tresc ."'
  10.  
  11. ,'". $data ."', '". $f1 ."', '". $f2 ."' ,'". $f3 ."', '". $f4 ."' )");
  12.  
  13. $result=mysql_query($query)
  14. }
  15.  
  16. $max_rozmiar = 1024*1024;
  17.  
  18. if (is_uploaded_file($_FILES['f1']['tmp_name'])) {
  19. if ($_FILES['f1']['size'] > $max_rozmiar) {
  20.     echo 'Błąd! Plik jest za duży!';
  21. } else {
  22.     echo 'Odebrano plik. Początkowa nazwa: '.$_FILES['f1']['name'];
  23.     echo '<br/>';
  24.     if (isset($_FILES['f1']['type'])) {
  25.         echo 'Typ: '.$_FILES['f1']['type'].'<br/>';
  26.     }
  27.     move_uploaded_file($_FILES['f1']['tmp_name'],
  28.         $_SERVER['DOCUMENT_ROOT'].'/page/foto_news/'.$_FILES['f1']['name']);
  29. }
  30. } else {
  31.   echo 'Błąd przy przesyłaniu danych!';
  32. }
  33.  
  34. ?>


ogolnie chcialem zeby dodawany byl news do bazy a na serwer uploudowal sie obrazek ( dokładnie to 4 obrazki) no o ile wszystko mi sie do bazy dodaje to niemoge zauploudowac pliku sad.gif pokazuje sie
Błšd przy przesyłaniu danych!
zelu
a masz ustawione chmod na katalog do ktorego wrzucasz pliki?
artur_dziocha
jeszcze dodaj to do forma
enctype='multipart/form-data'
Nie przegladałem reszty
Raffal
ok rzeczywiscie zapomniałem dodać tego

ale mam pytanie skopiowałem ten fragment 4 razy
  1. <?php
  2. if (is_uploaded_file($_FILES['f2']['tmp_name'])) {
  3. if ($_FILES['f2']['size'] > $max_rozmiar) {
  4.     echo 'Błąd! Plik jest za duży!';
  5. } else {
  6.     echo 'Odebrano plik. Początkowa nazwa: '.$_FILES['f2']['name'];
  7.     echo '<br/>';
  8.     if (isset($_FILES['f2']['type'])) {
  9.         echo 'Typ: '.$_FILES['f2']['type'].'<br/>';
  10.     }
  11.     move_uploaded_file($_FILES['f2']['tmp_name'],
  12.         $_SERVER['DOCUMENT_ROOT'].'/page/foto_news/'.$_FILES['f2']['name']);
  13. }
  14. } else {
  15.   echo 'Błąd przy przesyłaniu danych!';
  16. }
  17. ?>


zmieniajac zmienne otrzymane z formularza i na koniec pokazuje mi ze odebrano pliki choc na serwerze ich nie ma
skopiowalem poprostu jeden po drugim zmieniajac f1 na f2 itd przy tylko jednym dzialalao przy wiecej juz nie chce
zelu
daj warunek przy move_uploaded_file i sprawdz czy w tym miejscu sie nie sypie. I ponawiam pytanie winksmiley.jpg masz chmod ustawione na katalog? smile.gif
artur_dziocha
wyświetl sobie tablice $_FILES, i zobacz co tam masz.
Jaki masz upload ustawiony na serwerze??
Lepszym sposobem na kopiowanie jest napisanie sobie funkcji, klasy, lub przelecenie w ostateczności przez tablice $_FILES foreachem.
Raffal
sa ustawione , jezeli to bylo wklejone tylko raz to wszystko bylo wporzadku wiec wydaje mi sie ze przy petli sie nie ebdzie sypał .
trike
ja mam skypcik z trzema plikami
  1. <?php
  2. //sprawdzenie pierwszego pliku
  3. if ($_FILES['plik1']['error'] !== 4) {     //sprawdzenie zaladowania pliku
  4.   if ($_FILES['plik1']['error'] !== 2) {  //sprawdzenie rozmiaru
  5.     //sprawdzenie istnienia katalogu, jesli nie istnieje to tworzenie
  6.     if (opendir($katalog) == FALSE) {
  7.        mkdir($katalog,0777);
  8.     }
  9.    
  10.     $plik_tmp = $_FILES['plik1']['tmp_name'];
  11.     $plik_nazwa = $id_ogloszenia."_".$_FILES['plik1']['name'];
  12. //zaladowanie pliku, zmienienie nazwy
  13.     if (is_uploaded_file($_FILES['plik1']['tmp_name'])) {
  14.        move_uploaded_file($_FILES['plik1']['tmp_name'],$katalog."/".$id_ogloszenia."_".$_FILES['plik1']['name']) or die("Nie można przenieść pliku");
  15. }
  16. }
  17. ?>

i tak dla kazdego kolejnego pliku
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.