Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] Insert do DB
Forum PHP.pl > Forum > Przedszkole
o2w5n778
Witam!
Mam problem dotyczący insert'a do bazy danych.
  1. function insert($table, $keys, $values){
  2. $keys = implode('`, `', $keys);
  3. $values = implode(', ', $values);
  4.  
  5. $insert = $this->query("INSERT INTO `".$table."` (`".$keys."`) VALUES ('".$values."')");
  6.  
  7. }

Co jeżeli w $keys są wartości NULL, nie może być przecież `NULL` tylko NULL.
Z góry dziękuję za pomoc!
bpskiba
Cytat(o2w5n778 @ 11.05.2012, 18:20:51 ) *
Co jeżeli w $keys są wartości NULL, nie może być przecież `NULL` tylko NULL.
Z góry dziękuję za pomoc!


Jeżeli umieścisz NULL w cudzysłowiu w bazie zostanie zapisany tekst, a nie wartość null (jeżeli pole nie jest typu tekstowego zapytanie zwróci błąd)
o2w5n778
To jest właśnie mój problem. Niestety, nie wiem jak go rozwiązać dlatego tutaj napisałem.
bpskiba
Cytat(o2w5n778 @ 11.05.2012, 18:35:00 ) *
To jest właśnie mój problem. Niestety, nie wiem jak go rozwiązać dlatego tutaj napisałem.

Najprościej tak:
  1. function insert($table, $keys, $values){
  2. $keys = implode('`, `', $keys);
  3. $values = implode(', ', $values);
  4. $values="'$values'";
  5. $values=str_replace("'null'","null",$values);
  6. $insert = $this->query("INSERT INTO `".$table."` (`".$keys."`) VALUES ($values)");
  7. }

Pisane z palca
o2w5n778
PHP nie wyświetla żadnego błędu, ale zapytanie się nie wysyła.

Już sobie poradziłem, dzięki za natchnienie.
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.