Musi dzialac !
<?php
include ('dbcon.php');
/*
* zapytania do bazy o id_dostawcy, id_kategori, nazweDostawcy, nazweKategori
*/
$zap = $con->query("SELECT DostawcaID, NazwaDostawcy FROM dostawcy;");
$zap2 = $con->query("SELECT KategoriaID, Nazwakategori FROM kategoria;");
if ($zap->num_rows > 0 && $zap2->num_rows > 0) {
while ($r = $zap->fetch_object()) {
echo " ID: " . $r->DostawcaID . " Nazwa: " . $r->NazwaDostawcy; }
while ($r = $zap2->fetch_object()) {
echo " ID: " . $r->KategoriaID . " Nazwa: " . $r->Nazwakategori; }
} else {
}
function createForm($idProduct = '', $nameProduct = '', $codeProduct = '', $dostawcaIdProduct = '', $categoryIdProduct = '', $iloscProduct = '', $cenaProduct = '', $error = '') {
?>
<h1><?php if ($idProduct != '') {
} else {
} ?></h1>
<?php
if ($error != '') {
}
?>
<form action="" method="post">
<div>
<?php if ($idProduct != '') { ?>
<input type="hidden" name="ProduktID" value="
<?php echo $idProduct; ?>" />
<p>
<?php echo "ID Produktu: " . $idProduct; ?></p>
<?php } ?>
<p><label>Nazwa Produktu: </label> <input type="text" name="NazwaProduktu" value="
<?php echo $nameProduct; ?>"/> </p>
<p><label>Kod Produktu: </label> <input type="text" name="KodProduktu" value="
<?php echo $codeProduct; ?>"/> </p>
<p><label>DostawcaID: </label>
<?php $zap = $con->query("SELECT * FROM kategoria;"); ?>
<select name="kategorie">
<?php foreach($zap->fetch_object() as $k => $v): ?>
<option value="
<?php echo $v->KategoriaID; ?>">
<?php echo $v->NazwKategori; ?></option>
<?php endforeach; ?>
</select><p>
// Tu chciałbym tą liste rozwijaną zamiast pola do wpisania[/b]
<p><label>Cena: </label> <input type="text" name="Cena" value="
<?php echo $cenaProduct; ?>"/> </p>
<input type="submit" name="accept" value="ACCEPT" />
<input type="submit" name="cancel" value="CANCEL" />
</div>
</form>
<?php
}
if (isset($_GET['ProduktID'])) { /*
* modul edycji
*/
if (isset($_POST['cancel'])) { header("Location: ?strona=changeProduct"); } elseif (isset($_POST['accept'])) {
$idProdukt = $_POST['ProduktID'];
$nameProduct = htmlentities($_POST['NazwaProduktu'], ENT_QUOTES
); $codeProduct = htmlentities($_POST['KodProduktu'], ENT_QUOTES
); $dostawcaIdProduct = htmlentities($_POST['DostawcaID'], ENT_QUOTES
); $categoryIdProduct = htmlentities($_POST['KategoriaID'], ENT_QUOTES
);
if ($nameProduct == '' || $codeProduct == '' || $dostawcaIdProduct == '' || $categoryIdProduct == '' || $iloscProduct == '' || $cenaProduct == '') {
$error = "uzupelnij wszystkie pola";
createForm($idProdukt, $nameProduct, $codeProduct, $dostawcaIdProduct, $categoryIdProduct, $iloscProduct, $cenaProduct, $error);
} else {
if ($x = $con->prepare("UPDATE produkt SET NazwaProduktu = ? ,KodProduktu = ? ,DostawcaID = ? ,KategoriaID = ?,Ilosc = ? ,Cena = ? WHERE ProduktID = ? ")) {
$x->bind_param("ssiiidi", $nameProduct, $codeProduct, $dostawcaIdProduct, $categoryIdProduct, $iloscProduct, $cenaProduct, $idProdukt);
$x->execute();
$x->close();
} else {
}
}
}
} else {
if (is_numeric($_GET['ProduktID']) && $_GET['ProduktID'] > 0
) {
$idProduct = $_GET['ProduktID'];
if ($stmt = $con->prepare("SELECT * FROM produkt WHERE ProduktID = ?")) {
$stmt->bind_param('i', $idProduct);
$stmt->execute();
$stmt->bind_result($id, $nameProduct, $codeProduct, $dostawcaIdProduct, $categoryIdProduct, $iloscProduct, $cenaProduct);
$stmt->fetch();
createForm($idProduct, $nameProduct, $codeProduct, $dostawcaIdProduct, $categoryIdProduct, $iloscProduct, $cenaProduct);
$stmt->close();
} else {
}
} else {
}
}
} else {
/*
* modul dodawanie
*/
if (isset($_POST['cancel'])) { header("Location: ?strona=changeProduct"); } elseif (isset($_POST['accept'])) {
$nameProduct = htmlentities($_POST['NazwaProduktu'], ENT_QUOTES
); $codeProduct = htmlentities($_POST['KodProduktu'], ENT_QUOTES
); $dostawcaIdProduct = htmlentities($_POST['DostawcaID'], ENT_QUOTES
); $categoryIdProduct = htmlentities($_POST['KategoriaID'], ENT_QUOTES
);
if ($nameProduct == '' || $codeProduct == '' || $dostawcaIdProduct == '' || $categoryIdProduct == '' || $iloscProduct == '' || $cenaProduct == '') {
$error = "uzupelnij wszystkie pola";
createForm(null, $nameProduct, $codeProduct, $dostawcaIdProduct, $categoryIdProduct, $iloscProduct, $cenaProduct, $error);
} else {
if ($x = $con->prepare("INSERT INTO produkt (NazwaProduktu,KodProduktu,DostawcaID,KategoriaID,Ilosc,Cena) VALUES (?,?,?,?,?,?)")) {
$x->bind_param("ssiiid", $nameProduct, $codeProduct, $dostawcaIdProduct, $categoryIdProduct, $iloscProduct, $cenaProduct);
$x->execute();
$x->close();
} else {
}
}
} else {
createForm();
}
}
?>
A jak Ci nie idzie foreach to zrob tak jak robisz while`m:
$zap = $con->query("SELECT KategoriaID, Nazwakategori FROM kategoria;");
if ($zap->num_rows) {
echo "<select>";
while ($r = $zap->fetch_object()) {
echo '<option value="
<?php echo $r->KategoriaID ?>">
<?php echo $r->NazwaKategori; ?></option>';
}
echo "</select>";
}