![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 79 Pomógł: 0 Dołączył: 2.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Chciałbym do mojego formularza dodac mozliwość dodawania zdjęcia do bazy. Dodaje zdjęcie tak: Kod <b>Dodaj zdjęcie:</b><br /> <input type="file" size="50" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="zdjecie"><br /> Niestety w mojej tabeli, która wyświetla wyniki nie pokazuje sie zdjęcie, lecz nazwa tego zdjięcia; Kod echo "<td>".$r['zdjecie']."</td>";
|
|
|
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Moze najpierw zapoznaj się z istotą uploadu to może zrozumiesz na czym polega Twoj błąd.
http://pl.php.net/manual/pl/features.file-...post-method.php |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 12 Dołączył: 9.01.2008 Skąd: Olkusz Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 79 Pomógł: 0 Dołączył: 2.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
jak tak zrobiłem jak napisałeś to kolumna mi sie zwęziła i nic i tak nie widać
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 12 Dołączył: 9.01.2008 Skąd: Olkusz Ostrzeżenie: (0%) ![]() ![]() |
jak tak zrobiłem jak napisałeś to kolumna mi sie zwęziła i nic i tak nie widać A może jakiś kod (IMG:style_emoticons/default/blinksmiley.gif) i mam nadzieję że ścieżkę gdzie się znajduje plik dobrze podałeś (IMG:style_emoticons/default/smile.gif) i jak zapisujesz w bazie? nazwę pliku ? |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 79 Pomógł: 0 Dołączył: 2.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
Narazie dodałem do bazy jedno zdjęcie do rekordu o nazwie: image.jpeg
A więc jak wcześniej napisałem dodaje w ten sposób: Kod <b>Dodaj zdjęcie:</b><br /> <input type="file" size="50" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="zdjecie"><br /> Pobieram go: Kod $zdjecie = $_POST['zdjecie']; i potem wbijam do bazy wraz z innymi wartościami z formularza: Kod $ins = @mysql_query("INSERT INTO komputery SET id='$id',.............................., zdjecie='$zdjecie'" ); Wyświetlam wyniki w oddzielnym skrypcie w tabeli: Kod ...........
$wynik = mysql_query("SELECT * FROM komputery") or die('Blad zapytania'); //WYSWIETLENIE WYNIKOW JESLI TABELA POSIADA CHOC JEDEN REKORD > 0 if(mysql_num_rows($wynik) > 0) { /* jezeli wynik jest pozytywny > 0, to wyswietlamy dane */ echo "<table cellpadding=\"7\" border=1>"; echo "<tr><td colspan=11 bgcolor=\"#a7a7a7\"><b>Tabela komputery firmowe</b></td></tr>"; while($r = mysql_fetch_assoc($wynik)) { echo "<tr>"; echo "<td>".$r['id']."</td>"; echo "<td>".$r['nazwa_komputera']."</td>"; echo "<td>".$r['nazwa_dzialu']."</td>"; echo "<td>".$r['imie_nazwisko_usera']."</td>"; echo "<td>".$r['adres_ip']."</td>"; echo "<td>".$r['system_operacyjny']."</td>"; echo "<td>".$r['mac_adress']."</td>"; echo "<td>".$r['ilosc_ram']."</td>"; echo "<td>".$r['procesor']."</td>"; echo "<td>".$r['model_komputera']."</td>"; [b]echo '<td><img src="'.$r['zdjecie'].'" /></td>';[/b] echo "<td> <a href=\"wyswietlenietabeli.php?a=del&id={$r['id']}\">DEL</a> <a href=\"wyswietlenietabeli.php?a=edit&id={$r['id']}\">EDIT</a> </td>"; echo "</tr>"; } echo "</table>"; } Ten post edytował nighttrain 2.08.2010, 11:58:54 |
|
|
![]()
Post
#7
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Przeczytaj mój poprzedni post i zastosuj się do niego - MASZ BRAKI W podstawach uploadu plików. Dopóki nie zrozumiesz na czym to polega, dopóty będziesz pisał takie "glupoty" jak teraz (bez urazy)
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 12 Dołączył: 9.01.2008 Skąd: Olkusz Ostrzeżenie: (0%) ![]() ![]() |
tak jak napisał nospor ty dodajesz nazwę zdjęcia do bazy, ale nie wgrywasz go na serwer (IMG:style_emoticons/default/blink.gif) wiec jak ci się ma wyświetlić to zdjęcie skoro go nie ma tam gdzie go ma szukać
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 79 Pomógł: 0 Dołączył: 2.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
No dobrze rozumiem, że mogę wysłać zdjęcie za pomocą tej składni:
Kod <form enctype="multipart/form-data" action="__URL__" method="POST"> <!-- MAX_FILE_SIZE must precede the file input field --> <input type="hidden" name="MAX_FILE_SIZE" value="30000" /> <!-- Name of input element determines name in $_FILES array --> Send this file: <input name="userfile" type="file" /> <input type="submit" value="Send File" /> </form> Jednak ja już mam formularz, czy mam po prostu dodać do już istnijącego formularza: Kod enctype="multipart/form-data" oraz w action mojego formularza mam odniesienie do skryptu PHP, natomiast tutaj: Kod action="__URL__" Nie za bardzo rozumiem, jak powinienem to zbudować. Ten post edytował nighttrain 2.08.2010, 13:09:40 |
|
|
![]()
Post
#10
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat Jednak ja już mam formularz, czy mam po prostu dodać do już istnijącego formularza: takKod enctype="multipart/form-data" Cytat oraz w action mojego formularza mam odniesienie do skryptu PHP, natomiast tutaj: Action to action. Jak u siebie masz inne to mozesz sobie miec.Kod action="__URL__" Ale to tutaj to tylko malutki wstep zmian. Musisz jeszcze odebrać plik. Na tamtej stronie tez masz podane jak |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 79 Pomógł: 0 Dołączył: 2.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
Nie dodaje mi rekordów do bazy danych, może pokaże mój cały skrypt:
Kod <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?php include "top.php"; // wkleja koniec stronki ?> <?php $msql = mysql_connect('10.2.1.220', 'root', 'qazwsx'); mysql_select_db('komputery'); $query = mysql_result(mysql_query("SELECT MAX(id) FROM komputery"), 0); //$query = @mysql_query("SELECT MAX(id) FROM komputery"); //$query = @mysql_query("SELECT (MAX)id AS id FROM komputery"); //$query = @mysql_query("SELECT id from komputery order by id desc limit 1"); //$lastID = LAST_INSERT_ID(); - to mozna wydac, ale jak wczesniej bylo zapytanie INSERT //echo 'Ostatni istniejący rekord to '. $query .''; //'<h3>'echo 'Ostatni istniejący rekord to '. $query .'''</h3>'; echo '<form enctype="multipart/form-data" action="doddotabkomp.php" method="post"> <h2>Prosze dodac nowy komputer:</h2><br /> <b>ID:</b><br /> <input type="text" size="5" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="id"> <h3>(Ostatni dodany rekord:'. $query .')</h3><br /> <b>Nazwa komputera:</b><br /> <input type="text" size="15" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="nazwa_komputera"><br /> <b>Nazwa dzialu:</b><br /> <input type="text" size="20" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="nazwa_dzialu"><br /> <b>Imie i nazwisko usera:</b><br /> <input type="text" size="50" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="imie_nazwisko_usera"><br /> <b>Adres IP:</b><br /> <input type="text" size="16" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="adres_ip"><br /> <b>System operacyjny:</b><br /> <input type="text" size="50" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="system_operacyjny"><br /> <b>Mac adres:</b><br /> <input type="text" size="19" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="mac_adress"><br /> <b>ilosc RAM:</b><br /> <input type="text" size="12" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="ilosc_ram"><br /> <b>Procesor:</b><br /> <input type="text" size="28" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="procesor"><br /> <b>Model komputera:</b><br /> <input type="text" size="50" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="model_komputera"><br /> <b>Dodaj zdjęcie:</b><br /> <input type="hidden" name="MAX_FILE_SIZE" value="30000" /> <input name="zdjecie" type="file" /><br/> <input type="image" src="graphics/button_wyslij.jpg" alt="Wyslij" value="dodaj"> </form>'; //<input type="submit" value="dodaj" /><br /> NORMALNY PRZYCISK ZAMIAST TEGO WYZEJ //onclick="return !window.confirm('usunac?')" //onsubmit="return !window.confirm(wykonac?')" $id = $_POST['id']; $nazwa_komputera = $_POST['nazwa_komputera']; $nazwa_dzialu = $_POST['nazwa_dzialu']; $imie_nazwisko_usera = $_POST['imie_nazwisko_usera']; $adres_ip = $_POST['adres_ip']; $system_operacyjny = $_POST['system_operacyjny']; $mac_adress = $_POST['mac_adress']; $ilosc_ram = $_POST['ilosc_ram']; $procesor = $_POST['procesor']; $model_komputera = $_POST['model_komputera']; $zdjecie = $_POST['zdjecie']; if($id and $nazwa_komputera and $nazwa_dzialu and $imie_nazwisko_usera and $adres_ip and $system_operacyjny and $mac_adress and $ilosc_ram and $procesor and $model_komputera and $zdjecie) { $msql = mysql_connect('10.2.1.220', 'root', 'qazwsx'); mysql_select_db('komputery'); // laczymy sie z baza danych // $connection = @mysql_connect('10.2.1.220', 'root', 'qazwsx') // or die('Brak polaczenia z serwerem MySQL'); // $db = @mysql_select_db('komputery', $connection) // or die('Nie moge polaczyc sie z baza danych'); //DODAJEMY REKORD DO BAZY $ins = @mysql_query("INSERT INTO komputery SET id='$id', nazwa_komputera='$nazwa_komputera', nazwa_dzialu='$nazwa_dzialu',imie_nazwisko_usera='$imie_nazwisko_usera', adres_ip='$adres_ip', system_operacyjny='$system_operacyjny', mac_adress='$mac_adress', ilosc_ram='$ilosc_ram', procesor='$procesor', model_komputera='$model_komputera, zdjecie='$zdjecie'" ); if($ins) { echo ('<b>Rekord zostal dodany poprawnie</b>'); echo '<script type="text/javascript" src="skrypty_java/reloaddodano.js"></script>'; } else echo '<script type="text/javascript" src="skrypty_java/reloadblad.js"></script>'; //else echo "Blad nie udalo sie dodac nowego rekordu"; //mysql_close($connection); } ?> <?php include "bottom.php"; Ten post edytował nighttrain 2.08.2010, 13:45:48 |
|
|
![]()
Post
#12
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
1) Prosilem bys uzywal wlasciwego bbcode! Do mieszanca html + php uzywa się bbcode PHP
2) $_POST['zdjecie']; nie istnieje. A więc i Twój warunek przed dodaniem rekordu nie jest spelniony - PISALEM bys doczytac jak odbierać plik. Jak tego nie zrobisz to dalej nie ruszysz. 3) Zastosuj się proszę do podanych tu porad: Temat: Jak poprawnie zada pytanie np. jak wyswietlac wszystkie błędy a zobaczysz ile ich masz. |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 79 Pomógł: 0 Dołączył: 2.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
No nie wiem, już gdzie jest napisane o tym odbieraniu.
Czy chodzi o to, aby zamiast $_POST dać: $_FILES['userfile']['name'] ? Ten post edytował nighttrain 2.08.2010, 13:56:31 |
|
|
![]()
Post
#14
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
http://pl.php.net/manual/pl/features.file-...post-method.php
Ten link ci podalem na samym początku i w tym linku masz napisane jak masz odebrać. Masz podane nawet przykładowe kody. Patrzyłeś na to wogóle? Sporzyj jeszcze raz. Tym razem dokładniej. Zwróć uwagę na tablicę $_FILES. edit: Cytat Czy chodzi o to, aby zamiast $_POST dać: $_FILES['userfile']['name'] ? no bingo. Tylko ze to jest sama nazwa pliku. Musisz jeszcze gdzieś wrzucić sam plik - tam to też jest podane
|
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 79 Pomógł: 0 Dołączył: 2.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile
Czy chodzi o to? I tak nie wiem co powinienem wpisać zamiast userfile (czy nazwę jaka reprezentuje kolumne zdjec?), tmp_name (nie wiem bo dane sa przechowywane w bazie a nie katalogu), ? Zresztą w moim przykładzie wyżej oprócz tego, że muszę zamienić $zdjecie = $_POST=['zdjecie']; (POST -> FILES) to według mnie powinno już i tak dodać nowy rekord z nazwą zdjęcia do bazy, jednak mój skrypt tego nie robi. |
|
|
![]()
Post
#16
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
bo u ciebie nie "userfile" a "zdjecie"
No mysl trochę nad tym co masz. |
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 79 Pomógł: 0 Dołączył: 2.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
Ale chodzi mi o ten kod: (do bazy powinien chociaż dodać rekord i nazwe zdjecia) jednak skrypt nic nie robi) userfile mam ok akurat tu:
CODE # error_reporting(E_ALL); # ini_set('display_errors','1') <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <?php include "top.php"; // wkleja koniec stronki ?> <?php $msql = mysql_connect('10.2.1.220', 'root', 'qazwsx'); mysql_select_db('komputery'); $query = mysql_result(mysql_query("SELECT MAX(id) FROM komputery"), 0); echo '<form enctype="multipart/form-data" action="doddotabkomp.php" method="post"> <h2>Prosze dodac nowy komputer:</h2><br /> <b>ID:</b><br /> <input type="text" size="5" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="id"> <h3>(Ostatni dodany rekord:'. $query .')</h3><br /> <b>Nazwa komputera:</b><br /> <input type="text" size="15" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="nazwa_komputera"><br /> <b>Nazwa dzialu:</b><br /> <input type="text" size="20" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="nazwa_dzialu"><br /> <b>Imie i nazwisko usera:</b><br /> <input type="text" size="50" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="imie_nazwisko_usera"><br /> <b>Adres IP:</b><br /> <input type="text" size="16" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="adres_ip"><br /> <b>System operacyjny:</b><br /> <input type="text" size="50" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="system_operacyjny"><br /> <b>Mac adres:</b><br /> <input type="text" size="19" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="mac_adress"><br /> <b>ilosc RAM:</b><br /> <input type="text" size="12" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="ilosc_ram"><br /> <b>Procesor:</b><br /> <input type="text" size="28" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="procesor"><br /> <b>Model komputera:</b><br /> <input type="text" size="50" style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:16px; color:#000000; border: 2px solid #red" name="model_komputera"><br /> <b>Dodaj zdjęcie:</b><br /> <input type="hidden" name="MAX_FILE_SIZE" value="30000" /> <input name="zdjecie" type="file" /><br/> <input type="image" src="graphics/button_wyslij.jpg" alt="Wyslij" value="dodaj"> </form>'; $id = $_POST['id']; $nazwa_komputera = $_POST['nazwa_komputera']; $nazwa_dzialu = $_POST['nazwa_dzialu']; $imie_nazwisko_usera = $_POST['imie_nazwisko_usera']; $adres_ip = $_POST['adres_ip']; $system_operacyjny = $_POST['system_operacyjny']; $mac_adress = $_POST['mac_adress']; $ilosc_ram = $_POST['ilosc_ram']; $procesor = $_POST['procesor']; $model_komputera = $_POST['model_komputera']; $zdjecie = $_FILES['zdjecie']; if($id and $nazwa_komputera and $nazwa_dzialu and $imie_nazwisko_usera and $adres_ip and $system_operacyjny and $mac_adress and $ilosc_ram and $procesor and $model_komputera and $zdjecie) { $msql = mysql_connect('10.2.1.220', 'root', 'qazwsx'); mysql_select_db('komputery'); //DODAJEMY REKORD DO BAZY $ins = @mysql_query("INSERT INTO komputery SET id='$id', nazwa_komputera='$nazwa_komputera', nazwa_dzialu='$nazwa_dzialu',imie_nazwisko_usera='$imie_nazwisko_usera', adres_ip='$adres_ip', system_operacyjny='$system_operacyjny', mac_adress='$mac_adress', ilosc_ram='$ilosc_ram', procesor='$procesor', model_komputera='$model_komputera, zdjecie='$zdjecie'" ); if($ins) { echo ('<b>Rekord zostal dodany poprawnie</b>'); echo '<script type="text/javascript" src="skrypty_java/reloaddodano.js"></script>'; } else echo '<script type="text/javascript" src="skrypty_java/reloadblad.js"></script>'; } ?> <?php include "bottom.php"; |
|
|
![]()
Post
#18
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
dobra, słuchaj, 10 razy o wlasciwe bbcode nie mam cie zamiaru prosic.
Skoro nie rozumiesz prostej sugestii o poprawne bbcode to temat zamykam. Jak wyrazisz chęc się dostosowac to zapraszam na PW edit: otwieram ps: nie: $zdjecie = $_FILES['zdjecie']; a: $zdjecie = $_FILES['zdjecie']['name']; |
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 79 Pomógł: 0 Dołączył: 2.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
Po tej operacji otrzymałem taki komunikat:
Kod Warning: Wrong parameter count for move_uploaded_file() in /var/www/doddotabkomp.php on line 63
|
|
|
![]()
Post
#20
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
A gdzie w tym kodzie masz move_uploaded_file?
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 01:19 |