Stworzylam sobie taka klase, ktora bedzie obslugiwac mi bazy danych. I podczas tworzenia ostataniej metody insert napotkalam problem. Nie wiem jak powinnam polaczyc te wszystkie zmienne i polecenia. W ogole mam problem z kontatenacja ostatnio ehh. Oto kod:
class Tabela
{
private $nazwa;
private $limit = 1;
function __construct(String $nazwa)
{
$this->nazwa = $nazwa;
}
function limit(int $ile)
{
$this->limit = $ile;
}
{
$zapytanie = "SELECT " . join(',', $kolumny) . " FROM $this->nazwa LIMIT $this->limit"; $db = Db::getInstance();
$wynik = mysqli_query($db, $zapytanie);
return $wynik->fetch_all(MYSQLI_ASSOC);
}
function where(string $kolumna, $cos)
{
$zapytanie = "SELECT * FROM $this->nazwa WHERE $kolumna='$cos'";
$db = Db::getInstance();
$wynik = mysqli_query($db, $zapytanie);
return $wynik->fetch_all(MYSQLI_ASSOC);
}
function showKolumns()
{
$zapytanie = "SHOW COLUMNS FROM $this->nazwa";
$db = Db::getInstance();
$wynik = mysqli_query($db, $zapytanie);
return $wynik->fetch_all(MYSQLI_ASSOC);
}
[b
] $zapytanie="INSERT INTO $this->nazwa ".join(',', $kolumny) ." VALUES '. join(',', $wartosc) .'";[/b
] -> tu nie zwraca mi prawidlowego zapytania
. Powinno to wygladac na przyklad tak: "INSERT INTO `oceny`(`id`, `imie`, `przedmiot`, `ocena`) VALUES ('23', 'Ania', 'matematyka', '5')".
$db = Db::getInstance();
$wynik = mysqli_query($db, $zapytanie);
return $wynik->fetch_all(MYSQLI_ASSOC);
}
Czy sa jakies zlote zasady konkatenacji?