Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Chyba oślepłem bo nie widze błędu
Forum PHP.pl > Forum > Bazy danych > MySQL
Jarod
  1. <?php
  2.  
  3.  $query = &#092;"INSERT INTO sprzet(klient_id, nazwa, sztuk) \".
  4.  &#092;"VALUES (\".$_POST['id_klienta'].\",'\".strip_tags($_POST['sprzet']).\"', sztuk =\".$_POST['sztuk'].\");\";
  5.  $result = mysql_query($query)
  6. or die (&#092;"Zapytanie nieudane! BŁĄD: \".mysql_error());
  7.  
  8. ?>


Wszytko ladnie dodaja ale w miejsce sztuk w bazie danych wstawia 1 albo 0. Jeśli w formularzu podaje większa cyfre niż 1 to wstawia zero. Ale tu jest wszystko ok, chyba że ja już ślepy jestem ;p
Kinool
a do czego ci ta skladnia:
Cytat
$query = "INSERT INTO sprzet(klient_id, nazwa, sztuk) ".  "VALUES (".$_POST['id_klienta'].",'".strip_tags($_POST['sprzet'])."', sztuk =".$_POST['sztuk'].");";
questionmark.gif? wiec juz chyba wiesz gdzie masz blad

a tak na marginiesie to nie prosciej zrobic to tak:

  1. <?php
  2.  
  3. $sprzet = strip_tags($_POST['sprzet']);
  4. $klient_id = intval($_POST['id_klienta']);
  5. $sztuk = intval($_POST['sztuk']);
  6. $query = &#092;"INSERT INTO sprzet(klient_id, nazwa, sztuk) VALUES ($klient_id, '$sprzet', $sztuk)\";
  7.  
  8. ?>
Jarod
Cytat(Kinool @ 2005-06-04 15:18:56)
a do czego ci ta skladnia:
Cytat
sztuk =".$_POST['sztuk']."
questionmark.gif? wiec juz chyba wiesz gdzie masz blad

Sorki ale jestem na nogach 20h. Nie łapie..

W $_POST['sztuk'] przekazywana jest wartość liczbowa i zapisywana do bazy do kolumny sztuk

Będe wdzięczny za wyjaśnienie. sad.gif
Kinool
w zapytaniu INSERT nie przypisujesz wartosci w ten sposob! (poprzez "=" )
wymieniasz nazwy pol a potem przydzielasz im wartosci
nie wiem czy mnie rozumiesz tongue.gif
Jarod
Cytat(Kinool @ 2005-06-04 15:26:42)
w zapytaniu INSERT nie przypisujesz wartosci w ten sposob! (poprzez "=" )
wymieniasz nazwy pol a potem przydzielasz im wartosci
nie wiem czy mnie rozumiesz tongue.gif

no fakt. rotfl thx
nospor
chodzi oto, że w zapytaniu insert masz instrukcje : kolumna=wartosc. Nie ma takiej skladni (znaczy się jest to pewnie traktowane logicznie, czyli albo 1 albo 0). Ty masz wstawic tylko wartość, czyli jak u ciebie:
  1. <?php
  2.  
  3. $query = &#092;"INSERT INTO sprzet(klient_id, nazwa, sztuk) \".
  4.  &#092;"VALUES (\".$_POST['id_klienta'].\",'\".strip_tags($_POST['sprzet']).\"',\".$_POST['sztuk'].\");\";
  5. $result = mysql_query($query)
  6. or die (&#092;"Zapytanie nieudane! BŁĄD: \".mysql_error());
  7.  
  8. ?>

ale skorzystaj z rozwiązania @kinool'a. jest czytelniejsze i bezpieczniejsze
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.