Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php/mysql] Problem z INSERT INTO
lutador
post 27.12.2007, 15:53:02
Post #1





Grupa: Zarejestrowani
Postów: 183
Pomógł: 3
Dołączył: 5.03.2007
Skąd: Opole

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


witam,

moj problem wyglada nastepujaco: z formularza metoda GET przychodza 4 zmienne. Przychodza na 100% sprawdzalem przez echo.. problem zaczyna sie gdy chce je wrzucic do bazy. Jezeli chce wrzucic 1 to dziala jezeli wiecej niz 1 to nie chce :/ Ponizej przedstawiam kod. Moze ktos bedize mial pomysl czemu sie tak dzieje..

  1. <?php
  2. include('connect.php');
  3.  
  4. $nazwisko = $_GET['nazwisko'];
  5. $oddzial = $_GET['oddzial'];
  6. $problem = $_GET['problem'];
  7. $osoba = $_GET['osoba'];
  8.  
  9.  
  10. $nazwisko = mysql_real_escape_string($nazwisko);
  11. $oddzial = mysql_real_escape_string($oddzial);
  12. $osoba = mysql_real_escape_string($osoba);
  13. $problem = mysql_real_escape_string($problem);
  14.  
  15. $data = date('d-m-Y');
  16.  
  17. /*
  18. echo $nazwisko;
  19. echo $oddzial;
  20. echo $osoba;
  21. echo '<p>';
  22. echo $problem;
  23. */
  24.  
  25. $wstaw = "INSERT INTO help SET osoba = '$osoba',
  26. oddzial = '$oddzial',
  27. nazwisko = '$nazwisko',
  28. data1 = '$data',
  29. problem = '$problem' ";
  30.  
  31.  
  32. if (!mysql_query($wstaw, $connection))
  33. {
  34. $display = 'blad!';
  35. }
  36. else
  37. {
  38. $display = 'Zgloszenie zostalo dodane!';
  39.  
  40. }
  41.  
  42.  
  43. echo $display;
  44. ?>

tablica help ma pola: data1, osoba, nazwisko, oddzial, problem wszystkie sa typu varchar
Go to the top of the page
+Quote Post
Lion_87
post 27.12.2007, 15:55:36
Post #2





Grupa: Zarejestrowani
Postów: 850
Pomógł: 120
Dołączył: 15.02.2007
Skąd: Łódź

Ostrzeżenie: (10%)
X----


w pytaniu zamiast pprzecinków musi być and smile.gif

$wstaw = "INSERT INTO help SET osoba = '$osoba' and oddzial = '$oddzial'' and nazwisko = '$nazwisko'
and data1 = '$data' and problem = '$problem' ";

Ten post edytował Lion_87 27.12.2007, 15:57:01
Go to the top of the page
+Quote Post
lutador
post 27.12.2007, 16:02:19
Post #3





Grupa: Zarejestrowani
Postów: 183
Pomógł: 3
Dołączył: 5.03.2007
Skąd: Opole

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


w innym skryptach mialem przecinek i dzialalo. Zrobilem z AND i dalej sie sypie :/
Go to the top of the page
+Quote Post
phpion
post 27.12.2007, 16:03:56
Post #4





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Cytat(Lion_87 @ 27.12.2007, 17:55:36 ) *
w pytaniu zamiast pprzecinków musi być and smile.gif

Gdzie to wyczytałeś? Składnia mówi co innego. Zasada jest taka: nie wiesz - nie pisz. Wszystkim będzie lżej.

@lutador:
wyświetl sobie na ekran zmienną $wstaw i daj nam tutaj to, co zostanie wyświetlone.
Go to the top of the page
+Quote Post
Lion_87
post 27.12.2007, 16:08:50
Post #5





Grupa: Zarejestrowani
Postów: 850
Pomógł: 120
Dołączył: 15.02.2007
Skąd: Łódź

Ostrzeżenie: (10%)
X----


Cytat(phpion.com @ 27.12.2007, 16:03:56 ) *
Gdzie to wyczytałeś?


Nigdzie!!! i wiem co składnia mówi ( o ile mówi)

A dlaczego SET a nie VALUES?

Ten post edytował Lion_87 27.12.2007, 16:09:05
Go to the top of the page
+Quote Post
phpion
post 27.12.2007, 16:14:04
Post #6





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Cytat(Lion_87 @ 27.12.2007, 18:08:50 ) *
Nigdzie!!!

No właśnie.

Cytat(Lion_87 @ 27.12.2007, 18:08:50 ) *
i wiem co składnia mówi ( o ile mówi)

Kłóciłbym się, że wiesz...

Cytat(Lion_87 @ 27.12.2007, 18:08:50 ) *
A dlaczego SET a nie VALUES?

Zapoznaj się ze składnią INSERT INTO:
z VALUES:
  1. INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE]
  2. [INTO] tbl_name [(col_name,...)]
  3. VALUES ({expr | DEFAULT},...),(...),...
  4. [ ON DUPLICATE KEY UPDATE col_name=expr, ... ]

z SET:
  1. INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE]
  2. [INTO] tbl_name
  3. SET col_name={expr | DEFAULT}, ...
  4. [ ON DUPLICATE KEY UPDATE col_name=expr, ... ]

Polecam książeczkę do podusi.
Go to the top of the page
+Quote Post
lutador
post 28.12.2007, 12:44:45
Post #7





Grupa: Zarejestrowani
Postów: 183
Pomógł: 3
Dołączył: 5.03.2007
Skąd: Opole

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


wyswietlona zmienna $wstaw

INSERT INTO help SET osoba = 'agnieszka', oddzial = 'brzezie', nazwisko = 'nazwisko', data1 = '28-12-2007', problem = 'jakis problem'

wszystki przychodzi ok tylko nie chce wrzucic do bazy ;/
Go to the top of the page
+Quote Post
nevt
post 28.12.2007, 13:03:49
Post #8





Grupa: Przyjaciele php.pl
Postów: 1 595
Pomógł: 282
Dołączył: 24.09.2007
Skąd: Reda, Pomorskie.

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


help jest wyrazem zastrzeżonym w MySQL... na wszelki wypadek weź go w odwrócone apostrofy:
  1. INSERT INTO `help` SET ...

do tego pokaż jaki opis błędu zwraca baza przy zapytaniu i będziesz wiedział o co chodzi...
  1. <?php
  2. //zamiast
  3. $display = 'blad!';
  4. //wstaw
  5. $display = mysql_error($connection);
  6. ?>


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

-
Oh no, my young coder. You will find that it is you who are mistaken, about a great many things... -
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: 18.07.2025 - 08:33