Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP] Formularz zapisu do bazy
-twinlight-
post
Post #1





Goście







Witam,

Z racji tego, że raczkuję dopiero w temacie programowania proszę o opinię na temat tego co wykonałem oraz o wskazówki jak to ewentualnie wykonać lepiej.

Mam tabelę 'osoba', która zawiera kolumny: imie, nazwisko, kod. Do tabeli głównej o nazwie 'glowna' wpisów dokonuje się za pomocą formularza, w którym oprócz pól tekstowych jest lista wybieralna pozwalająca wybrać dane osoby.

Na stronie www dane mają się wyświetlać w dwóch linijkach tj. imię i nazwisko w jednej, a kod w drugiej.

Część kodu odpowiedzialna za wyświetlanie listy osób i zapis do bazy wygląda tak:

  1. $pobierzdane="SELECT imie, nazwisko, kod FROM osoba";
  2. $wynik = mysql_query ($pobierzdane);
  3.  
  4. echo "<select name=osoba>";
  5. while($nt=mysql_fetch_array($wynik))
  6. {
  7. echo "<option value='$nt[imie] $nt[nazwisko] <br /> kod: $nt[kod]'>$nt[imie] $nt[nazwisko] kod: $nt[kod]</option>";
  8. }
  9. echo "</select>";



Dane w tabeli głównej bazy danych zapisują się jako np. Jak Kowalski <br /> AB123456.
Wyświetlanie na stronie realizowane jest tak:

  1. $wybor = "SELECT * FROM glowna WHERE id=$id";
  2. $wynik = mysqli_query($db, $wybor);
  3. $row = mysqli_fetch_assoc($wynik);
  4.  
  5. <div>'.$row['osoba'].'</div>



Zrobiłem to chyba najprościej jak można i działa. Pytanie tylko czy jest to poprawnie wykonane i jeśli nie to jak to zrobić w inny sposób? Prośba o wskazówki.

Pozdrawiam,
Zbyszek
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
CuteOne
post
Post #2





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

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


1. Indeksy tablic zapisujemy w apostrofach $tablica['indeks']
2. Brak cudzysłowia w name=osoba i pozostałych atrybutach
3. Lepiej zapisywać string do zmiennej i potem go echować
4. Raz używasz mysql a innym razem mysqli - zdecyduj się
5. Po co w value opcji wypisujesz tyle danych?? gdy wystarczy podać ID rekordu
6. Kod html lepiej wstawiać za pomocą apostrofu dzięki czemu nie musisz używać \
  1. $write = '';
  2. $write .= '<select name="osoba">';
  3.  
  4. while($nt=mysql_fetch_array($wynik))
  5. {
  6. $write .= '<option value="'.$nt['id'].'">'.$nt['imie'].$nt['nazwisko'].' kod: '.$nt['kod'].'</option>';
  7. }
  8. $write .= '</select>';
  9.  
  10. echo $write;
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: 20.08.2025 - 07:23