Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][HTML][MYSQL]Pole wyboru na stronie.
marcinmarg
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 25.11.2008

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


Witam,
Zaczynam dopiero nauke php, mysql. Za zadanie postawiłem sobie stworzenie prostej bazy, formularzy zapisujących do bazy i odczyt. Niestety zatrzymałem się w jednym miejscu.
Mam baze (tabele z której pobieram dane):

  1. CREATE TABLE `pracownicy` (
  2. `id_prac` int(3) NOT NULL AUTO_INCREMENT,
  3. `im_naz` varchar(30) NOT NULL DEFAULT '',
  4. PRIMARY KEY (`id_prac`)
  5. ) TYPE=MyISAM AUTO_INCREMENT=3 ;


Następnie Selecta który pobiera dane username2.php

Kod
<?php
  
  // podłączamy plik  connection.php
  require "connect.php";
  // wywołujemy funkcję connection()
  connection();
  
  // wybór do pola listy z bazy danych
  $query="SELECT id_prac,im_naz FROM pracownicy";
  
  $result = mysql_query ($query);
  echo "<select name=Nazwisko value=''>Imie i Nazwisko</option>";
  // printing the list box select command
  while($nt=mysql_fetch_array($result)){//Array or records stored in $nt
  echo "<option value=$nt[im_naz]>$nt[im_naz]</option>";    
  /* Option values are added by looping through the array */
  }
  echo "</select>";
  
  ?>


efektem tego jest wyświetlenie pola wyboru z Imionami i Nazwiskami, o to dokładnie mi chodzi.
Chciałbym teraz to pole wstawić do strony html, (skrypt pobierający dane ma być w pliku username2.php)
Plik html wygląda tak:

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <title>Kontrola Szczelnosci</title>
  5. </head>
  6.  
  7. <form action="dane.php" method="post">
  8.  
  9.  
  10.  
  11. <table width="278" border="0" align="center">
  12. <tr>
  13. <td width="72">Zmiana:<br />
  14. &nbsp;</td>
  15. <td width="196"><input type="text" name="zmiana" /><br />&nbsp;</td>
  16. </tr>
  17. <tr>
  18. <td>Oznaczenie:<br />&nbsp;</td>
  19. <td><input type="text" name="oznaczenie" /><br />&nbsp;</td>
  20. </tr>
  21. <tr>
  22. <td>Szczelne:<br />&nbsp;</td>
  23. <td><input type="text" name="Szczelne" /><br />&nbsp;</td>
  24. </tr>
  25. <tr>
  26. <td>Nie szczelne:<br />&nbsp;</td>
  27. <td><input type="text" name="nieszczelne" /><br />&nbsp;</td>
  28. </td>
  29. </tr>
  30.  
  31. </p>
  32. </body>
  33. </html>


w pliku tym jest już kilka formularzy które przekazują dane do dane.php.

Rezultat tego pliku username2.php chciałbym żeby został wstawiony to innej tabeli - dokładnie do kolumny id_prac(ma być wstawione tylko id pracownika a nie imię i nazwisko:

  1. CREATE TABLE `kontrola_szczel` (
  2. `id_kont_szcze` int(11) NOT NULL AUTO_INCREMENT,
  3. `data` date NOT NULL DEFAULT '0000-00-00',
  4. `czas` time NOT NULL DEFAULT '00:00:00',
  5. `zmiana` int(1) NOT NULL DEFAULT '0',
  6. `oznaczenie` char(3) NOT NULL DEFAULT '',
  7. `szczelne` int(2) NOT NULL DEFAULT '0',
  8. `nieszczelne` int(2) NOT NULL DEFAULT '0',
  9. `id_prac` int(2) NOT NULL DEFAULT '0',
  10. `id_maszyny` int(2) NOT NULL DEFAULT '0',
  11. `id_dostawcy` int(2) NOT NULL DEFAULT '0',
  12. PRIMARY KEY (`id_kont_szcze`)
  13. ) TYPE=MyISAM AUTO_INCREMENT=15 ;


Niestety nie mogę sobie z tym poradzić, przeszukałem forum, google i nic, być może źle szukam.





Ten post edytował marcinmarg 25.11.2008, 17:03:48
Go to the top of the page
+Quote Post
piotrooo89
post
Post #2


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




  1. <?php
  2. echo "<option value=$nt[id]>$nt[im_naz]</option>";
  3. ?>


przekazuj ID a nie im_naz


--------------------
Go to the top of the page
+Quote Post
marcinmarg
post
Post #3





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 25.11.2008

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


Tylko że wyświetlane w formularzu na stronie html ma być imię i nazwisko a dodawane ID do innej tabeli.
Nie bardzo wiem jak za pomocą html-a wyświetlić zawartość tego selecta, a potem dodać do innej tabeli.
Go to the top of the page
+Quote Post
erix
post
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Yyyy, ale szczerze mówiąc - nie wiem, w czym masz problem? Jak przekażesz ID osoby do skryptu, to jaki problem potem wyciągnąć konkretne nazwisko po stronie skryptu?


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
--marcinmarg--
post
Post #5





Goście







no to że nie wiem jak to przekazać do formularza html i potem jak zapisać do innej tabeli..
Go to the top of the page
+Quote Post
piotrooo89
post
Post #6


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




no ale ja dalej nie rozumiem... przecież formularz wyświetlasz w html a żeby go przesłać dalej ustawiać atrybut action na odpowiednią stronę...

wytłumacz to lepiej....


--------------------
Go to the top of the page
+Quote Post
marcinmarg
post
Post #7





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 25.11.2008

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


nie wiem jak w:
  1. <form action="...">
  2. <select name="nazwa">
  3. <option>Tu wpisz pierwszą możliwość</option>
  4. <option>Tu wpisz drugą możliwość</option>
  5. (...)
  6. </select>
  7. </form>

wstawić dane pobrane z username2.php (nie potrafię napisać kodu html który by pobierał dane z username2.php).

i następnie pobrane dane zapisać ten wynik przesłać do bazy, innej tabel INSERT... ?

Może teraz będzie bardziej jasne, może po prostu to tak banalne.
Go to the top of the page
+Quote Post
piotrooo89
post
Post #8


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




może zmień rozszerzenie pliku na .php dodaj ten kod pomiędzy znacznikami <?php ... ?>

  1. <form action="...">
  2. <?php
  3.  require "connect.php";
  4.  
  5.  connection();
  6.  
  7.  $query="SELECT id_prac,im_naz FROM pracownicy";
  8.  
  9.  $result = mysql_query ($query);
  10.  echo "<select name=Nazwisko value=''>Imie i Nazwisko</option>";
  11.  
  12.  while($nt=mysql_fetch_array($result))
  13. {
  14.  echo "<option value=$nt[im_naz]>$nt[im_naz]</option>";    
  15.  
  16.  }
  17.  echo "</select>";
  18.  
  19.  ?>
  20. </form>


i dalej nie wiem czy o to chodzi.


--------------------
Go to the top of the page
+Quote Post
marcinmarg
post
Post #9





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 25.11.2008

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


Dokładnie o coś takiego mi chodziło, ale mam jeszcze kolejne pytanie, jak teraz pole select przekazać do zapisu w bazie?
mam już plik dane.php chciałbym dodać do niego dane z Selecta ale id_prac

Kod
<?php
//polaczenie
$connect - mysql_connect("localhost", "root", "krasnal")
or die ("Sprawdz połaczenie");

//wybor bazy
mysql_select_db("kontrola_szczelnosci");

$zmiana = $_POST['zmiana'];
$oznaczenie = $_POST['oznaczenie'];
$szczelne = $_POST['szczelne'];
$nieszczelne = $_POST['nieszczelne'];
$dzien = date("Y-m-d");
$godzina = date("H:i:s");
$query = $_POST['Imie Nazwisko'];


$dane = "INSERT INTO kontrola_szczel (id_kont_szcze, data, czas, zmiana, oznaczenie, szczelne, nieszczelne, id_prac, id_maszyny, id_dostawcy) " .
        "Values ('', '$dzien', '$godzina', '$zmiana', '$oznaczenie', '$szczelne', '$nieszczelne', '', '', '') ";
$results = mysql_query($dane)
or die(mysql_error());


echo "Dane zostały dodane"

?>



czy można za pomocą $imie = $_POST['im_naz']?
Go to the top of the page
+Quote Post
piotrooo89
post
Post #10


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




można oczywiście że można...

btw. precyzuj pytania bo naprawdę trudno jest wymyślić o co Ci "biega", ja post wyżej czytałem z 5 razy...


--------------------
Go to the top of the page
+Quote Post
marcinmarg
post
Post #11





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 25.11.2008

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


moja wiedza jest bardzo w tym temacie mizerna, wymyśle sobie coś w głowie i czasem ciężko mi to przelać na fachowy język, jak mówię dopiero zaczynam się z tym bawić, nie wiem czy to dobra droga uczyć się w ten sposób od zera.
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 Aktualny czas: 21.08.2025 - 07:32