Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> INSERT INTO
mani4
post 20.09.2005, 20:12:29
Post #1





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 20.09.2005

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


Witam mam pytanie odnosnie kodu ponizej przedstawionego...
Chce zeby zmienne przekazane z formularza zostaly dodane do bazy. Co zrobilem zle ? Albo wypluwa mi blad w 15 linijce nie wiedziec czemu, albo wogole nie wypluwa bledu - ale tez nie dodaje do bazy. Pomocy !
za pomoc z gory dziekuje.
  1. <?php
  2. $host = "db.st.interia.pl";
  3.  
  4. $polaczenie = mysql_connect($host, $username, $password);
  5. mysql_select_db($database, $polaczenie);
  6.  
  7. $query = "INSERT INTO ewid 
  8. (imie, nazwisko, pesel, ulica, lokal, mieszkanie, telefon, dt_rozpoczecia_sz
    kolenia, kategoria, instruktor, prawo_jazdy_nr, pozwolenie_numer, wydane, uwagi, 
    zaplacono, dodano)
  9. VALUES
  10. ('$imie', '$naz', '$pesel', '$ulica', '$nrb', '$nrl', '$tel', '$dtr', '$kat', '$instruktor', '$pjnr', '$pozw', '$wydane', '$uwagi', '$placa', '$dod')";
  11. $wynik = mysql_query($query, $polaczenie)
  12. echo mysql_errno() . ": " . mysql_error() . "n";
  13. if($wynik) {
  14. echo "Zapytanie do bazy zakończyło sie sukcesem";
  15. } else {
  16. echo "Nieudane zapytanie do bazy";
  17.  
  18. ?>


Ten post edytował mani4 20.09.2005, 21:11:53
Go to the top of the page
+Quote Post
darecki
post 20.09.2005, 20:24:57
Post #2





Grupa: Zarejestrowani
Postów: 54
Pomógł: 2
Dołączył: 24.08.2005
Skąd: Warszawa

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


po pierwsze nie pisz danych dostepowych do swojego serwera MySQL (wyedytuj to)
po drugie czy mozesz podac strukture bazy danych ? ewentualnie sprawdz czy dane do pola typu INT nie zapisujesz w ciapkach np.:
zakladajac ze pole lokal jest typu INT powinienes wartosc zapisac bez ciapek:

  1. <?php
  2.  
  3. $query = "INSERT INTO ewid 
  4. (imie, nazwisko, pesel, ulica, lokal, mieszkanie, telefon, dt_rozpoczecia_sz
    kolenia, kategoria, instruktor, prawo_jazdy_nr, pozwolenie_numer, wydane, uwagi, 
    zaplacono, dodano)
  5. VALUES
  6. ('$imie', '$naz', '$pesel', '$ulica', $nrb, '$nrl', '$tel', '$dtr', '$kat', '$instruktor', '$pjnr', '$pozw', '$wydane', '$uwagi', '$placa', '$dod')";
  7.  
  8. ?>


jezeli varchar to z ciapkami:
  1. <?php
  2.  
  3. $query = "INSERT INTO ewid 
  4. (imie, nazwisko, pesel, ulica, lokal, mieszkanie, telefon, dt_rozpoczecia_sz
    kolenia, kategoria, instruktor, prawo_jazdy_nr, pozwolenie_numer, wydane, uwagi, 
    zaplacono, dodano)
  5. VALUES
  6. ('$imie', '$naz', '$pesel', '$ulica', '$nrb', '$nrl', '$tel', '$dtr', '$kat', '$instruktor', '$pjnr', '$pozw', '$wydane', '$uwagi', '$placa', '$dod')";
  7.  
  8. ?>


Ten post edytował darecki 20.09.2005, 20:31:46


--------------------
Copyright ˆ by Darecki Ÿ Wszystkie prawa zastrzeżone
TanioNaRybki.pl
Go to the top of the page
+Quote Post
mani4
post 20.09.2005, 21:15:25
Post #3





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 20.09.2005

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


  1. lp char(3) NOT NULL,
  2. imie char(30),
  3. nazwisko char(20),
  4. pesel char(20),
  5. ulica char(20),
  6. lokal char(3),
  7. mieszkanie char(3),
  8. telefon char(20),
  9. dt_rozpoczecia_szkolenia char(12),
  10. kategoria char(3),
  11. instruktor char(10),
  12. prawo_jazdy_nr char(20),
  13. pozwolenie_numer char(20),
  14. wydane char(12),
  15. uwagi blob,
  16. zaplacono integer,
  17. dodano char(30),
  18. PRIMARY KEY (nazwisko)


co z blob ? jak zrobic zeby nadawal lp nastepne w kolejnosci automatycznie ?
Go to the top of the page
+Quote Post
-Gość_luki-
post 20.09.2005, 21:32:33
Post #4





Goście







Wyrzuca Ci błąd w linii nr 15, ponieważ brakuje tam na końcu średnika winksmiley.jpg
Go to the top of the page
+Quote Post
gladiror
post 20.09.2005, 22:32:33
Post #5





Grupa: Zarejestrowani
Postów: 398
Pomógł: 0
Dołączył: 13.07.2005
Skąd: Lublin

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


Gość_luki => masz rację... 11 linia...


--------------------
"Państwo to ja" Ludwik XIV
"Wróg zaatakuje to co kochasz" Ojciec Chrzestny
"Wszystko powinno być proste jak to tylko możliwe, ale nie prostsze..." A. Einstein
"Wyobraźnia jest ważniejsza niż wiedza" Albert Einstein
"Nieprawda powtarzana wielokrotnie staje się prawdą"
Go to the top of the page
+Quote Post
mani4
post 21.09.2005, 08:11:31
Post #6





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 20.09.2005

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


Wczesniej wyskakiwal blad w 12 linijce (teraz). gdzie brakuje srednika?
gdzie wczesniej brakuje czegokolwiek ? moze ktos napisze poprawiony skrypt ?
Go to the top of the page
+Quote Post
nospor
post 21.09.2005, 08:17:42
Post #7





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Przeciez wyraźnie masz napisane że brakuje średnika:
  1. <?php
  2.  
  3. $wynik = mysql_query($query, $polaczenie)
  4.  
  5. ?>


powinno byc:

  1. <?php
  2.  
  3. $wynik = mysql_query($query, $polaczenie);
  4.  
  5. ?>

Cieżko tak samemu wstawic ten średnik?

@gladiror Twoje wypwiedzi nic nie wnoszą, więc i ty ich nie wnoś do tematu, inaczej posypią się ostrzeżenia

@mani4 i prosze na przyszłość nie krzyczeć w temacie


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
mani4
post 21.09.2005, 19:16:39
Post #8





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 20.09.2005

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


ja nie krzycze - poprostu funkcje SQL'owe pisze z wielkich liter - nie wiem jakies glupie przyzwyczajenie. Jesli zostalo to tak odebrane przepraszam - postaram sie zeby to sie nie powtorzylo

teraz mam pytanie - czy ma ktos moze skrypcik ktory wyciaga z bazy najwieksze ID questionmark.gif albo moze finkcja w sql'u ktora dodaje +1 do poprzedniego ID

Ten post edytował mani4 21.09.2005, 20:57:09
Go to the top of the page
+Quote Post
strife
post 21.09.2005, 21:25:58
Post #9





Grupa: Przyjaciele php.pl
Postów: 2 605
Pomógł: 96
Dołączył: 22.10.2004
Skąd: UK

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


Cytat(mani4 @ 2005-09-21 20:16:39)
teraz mam pytanie - czy ma ktos moze skrypcik ktory wyciaga z bazy najwieksze ID questionmark.gif albo moze finkcja w sql'u ktora dodaje +1 do poprzedniego ID

Witam,

[...] jeśli chcesz największa wartość to przez MAX, a dodawanie normalnie robisz czyli.
  1. SELECT MAX(id)
  2. FROM tabela

  1. INSERT
  2. INTO tabela WHERE id = id + 1


Pozdrawiam!


--------------------
Go to the top of the page
+Quote Post
mani4
post 26.09.2005, 23:34:00
Post #10





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 20.09.2005

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


  1. "INSERT
  2. INTO ewid (lp, imie.....)
  3. VALUES
  4. ( 'lp = lp + 1', '$imie', '$nazwisko'....);


Dlaczego zawsze pw polu lp mam wartosc lp. a nie o jeden wieksza od lp ?
Go to the top of the page
+Quote Post
adif
post 26.09.2005, 23:38:46
Post #11





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 12.06.2005

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


pole lp char(3) NOT NULL, ustaw sobie jako autonumerowanie i problem bedzie rozwiazany
Go to the top of the page
+Quote Post
gladiror
post 27.09.2005, 06:48:25
Post #12





Grupa: Zarejestrowani
Postów: 398
Pomógł: 0
Dołączył: 13.07.2005
Skąd: Lublin

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


autonumerowanie => auto_increment


--------------------
"Państwo to ja" Ludwik XIV
"Wróg zaatakuje to co kochasz" Ojciec Chrzestny
"Wszystko powinno być proste jak to tylko możliwe, ale nie prostsze..." A. Einstein
"Wyobraźnia jest ważniejsza niż wiedza" Albert Einstein
"Nieprawda powtarzana wielokrotnie staje się prawdą"
Go to the top of the page
+Quote Post
adif
post 27.09.2005, 11:22:21
Post #13





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 12.06.2005

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


jeszcze dodam jedno o czym zpomniałem wcześniej napisać...

oprócz autonumerowania, zmień typ pola "lp" z "char" na int() - jest to pole liczbowe, które posłuży Ci do autonumerowania. "char" jest polem tekstowym.

Poza tym PRIMARY KEY z (nazwisko) zmieniłbym na (lp)
Ja bym proponował tak:

lp int(10) NOT NULL auto_increment PRIMARY KEY
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 Wersja Lo-Fi Aktualny czas: 14.06.2025 - 10:41