Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zapytaniem php do bazy jako wybor opcji formularza, Nie moge dosc do tego gdzie mam blad
Dafidov
post
Post #1





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 6.07.2005
Skąd: Śląsk Bytom

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


Witam Wszystkich.
Od wczoraj się grzebie szukam i szukam i jakoś znaleść nie mogę ani u siebie w kodzie ani na forum odpowiedzi jak rozwiązać mój problem.
Piszę baza w której mam stuudentów pracowników przedmioty itd coś ala elektroniczny indeks, tablica ogłoszeń.
Chce zrobic sobie ładnego selecta który będzie mi z jednej tabeli pobierał dane jako opcje do wyboru i ciągle wyrzuca mi ale pustą liste select otion.
Oto kod:
Kod
tytuł naukowy: <select name="tytul_naukowy">
<?php
$querry = "select skrot from tytul_naukowy where skrot like '%'";
$result = mysql_querry($querry);

while ($row = mysql_fetch_array($result))  {
$tytul = $row['tytul'];
?>
<option value="<?php echo"$tytul"; ?>"><? echo"imie"; ?></option>
<?php } ?>
</select>

Mam w bazie tabele tytul_naukowy z polami id skrot nazwa i chce zeby w liscie select mozna bylo wybrac jedne ze skrotwo typu:
mgr inż dr prof.
Nie wiem czy błąd jest w konstrukcji zapytania w php czy w samym mysql.

Proszę o pomoc i rade jak napisać takiego prawidłowego selecta, który będzie z bazy generował mi listę wyboru.


Drugi problem jest nieco bardziej skomplikowany i też jest bardziej z Mysql niż z php ale też nie wiem jak napisać parwidłowo formułe w php żeby moć wpisując tego naszego pracownika, któremu chcę dodawać tytuł naukowy, dodać pole adres które jest kluczem obcym odwolujadej sie do tabeli adres.
Tabela pracownika ma takie pola:
id, id_grupa, imie, nazwisko, username, haslo, id_adres.
Klucz glowny to id.
Klucze obce to id_grupa i id_adres.
Tabela adres ma takie parametry:
id id_user ulica nr domu miejscowosc itd
Jak napisac formularz zeby dodawac pracownika w taki sposb zeby mozna bylo od razu wpisac jego adres? Czy da sie to zrobic i jesli tak to prosze o podopwoiedz.
Z gory dziekuje.
Mam nadzieje iz moj opis jest dosc scisly...
Pracuje na Mysql 5 i php 5
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Dafidov
post
Post #2





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 6.07.2005
Skąd: Śląsk Bytom

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


Troche mi to czasu zajelo ale niestety wywala mi blad (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

Kod
Nieznana kolumna 'LAST_INSERT_ID' w field list1054


Zapytanie wyglada "okazale" (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

  1. $adres_query = "INSERT
  2. INTO adres
  3. (id, ulica, nr_domu, nr_mieszkania, kod_pocztowy, miejscowosc, id_woj, tel_stac, tel_kom, fax, email) VALUES (NULL,'$aul', '$ad', '$sb', '$akp', '$sc', $woj, '$sd', '$se', '$sf', '$ae')";
  4.  
  5. $pracownik_query = "INSERT
  6. INTO pracownik
  7. (id, id_adres, id_przedmiot, id_wydzial, id_tytul, id_grupa, imie, nazwisko, username, haslo, rejestracja) VALUES (NULL, LAST_INSERT_ID, $pr, $wy, $tn, $gr, '$fn', '$ln', '$u', PASSWORD('$p'), NOW())";
  8.  
  9. $result = mysql_query ($adres_query) OR die (mysql_error().mysql_errno()); // Wykonaj zapytanie.
  10.  
  11. $result = mysql_query ($pracownik_query) OR die (mysql_error().mysql_errno()); // Wykonaj zapytanie.
  12.  
  13. IF ($result) { // Jeżeli zostało ono wykonane bez przeszkód.


Pod te wszystkie dziwne zmienne typu $aul, $ad itd wstawiam wyniki z poszczególnych $_POST formularza żeby przepuścić przez funckję:
  1. <?php
  2.  
  3. function escape_data ($data) {
  4. global $dbc; // Potrzebujemy połączenia.
  5. if (ini_get('magic_quotes_gpc')) {
  6. $data = stripslashes($data);
  7. }
  8. return mysql_real_escape_string($data, $dbc);
  9. } // Koniec funkcji.
  10.  
  11. ?>


Później wszytskie zmienne przefiltrowuje przez coś takiego:

  1. <?php
  2.  
  3. / Sprawdź wydział.
  4. if (empty($_POST['id_wydzial'])) {
  5. $wy = FALSE;
  6. $message .= '<div><p>Zapomniałeś wybrać wydział!</p>';
  7. } else {
  8. $wy = escape_data($_POST['id_wydzial']);
  9. }
  10.  
  11. ?>


może ma ktoś pomysł na jakąś pętle i wogóle jak to obejść żebym nie musiał takiego wypaśnego kodu pisać po kilkaset linii...

No ale najwazniejszy problem to to ze wyswietla ten blad ze nie zna LAST_INSERT_ID

Pomóżcie prosze (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Posty w temacie
- Dafidov   Zapytaniem php do bazy jako wybor opcji formularza   25.03.2006, 18:36:36
- - nospor   mysql_querry - nie ma takiej funkcji jest: mysql...   25.03.2006, 18:54:36
- - Dafidov   Lepszp rydz niż nic jak to mówią. Query działa - d...   25.03.2006, 22:23:31
- - kanan   Jesli adres jest kluczem obcym, to by bylo mozliwe...   26.03.2006, 15:09:09
- - Dafidov   Czyli jak to zrobic? Najpierw musze utworzyc w for...   26.03.2006, 15:22:56
- - kanan   Nie rozumiem jednego, w jakim aspekcie uzywasz adr...   26.03.2006, 16:32:59
- - Dafidov   Baza ktora tworze posiada tabele adres, do ktorej ...   26.03.2006, 17:01:24
- - nospor   W formularzu podajesz wszystkie dane: adres i prac...   26.03.2006, 17:10:31
- - Dafidov   Zaczytałem się w manualu php No to jest pewna nie...   26.03.2006, 18:12:59
- - nospor   LAST_INSERT_ID zwraca ci ostatnio dodane id do baz...   26.03.2006, 18:58:30
- - Dafidov   Troche mi to czasu zajelo ale niestety wywala mi b...   26.03.2006, 21:10:23
- - nospor   nasze niedopatrzenie. nie : LAST_INSERT_ID a: LAS...   26.03.2006, 21:14:04
- - Dafidov   Chyba się sam juz URATOWAŁEM Przyspałem że ma być...   26.03.2006, 21:19:14
- - nospor   ja bym ci proponowal stworzyc tablicę mapującą. mo...   26.03.2006, 21:25:36
- - Dafidov   Myśle że przenosin to już wystarczy jak na jeden t...   26.03.2006, 21:41:09
- - nospor   CytatMyśle że przenosin to już wystarczy jak na je...   26.03.2006, 21:50:03
- - Dafidov   No to trzeba bedzie poszperac troche No ale jak j...   26.03.2006, 23:25:36
- - nospor   To się nazywa tranzakcje: http://dev.mysql.com/doc...   27.03.2006, 08:35:44
- - Dafidov   Poczytałem troszkę w manualu i niestety nasuwa mi ...   27.03.2006, 21:08:18
- - nospor   begin, commit i rollback to zwykle zapytania mysql...   27.03.2006, 22:11:04
- - Dafidov   Dziekuje za pomoc. Z tym klopotem juz sobie poradz...   29.03.2006, 08:52:27


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: 3.10.2025 - 08:53