Kod
case "test":
$tabela = DatabaseManager::selectBySQL("SELECT * FROM users1");
print'<table border="10"><tr><td>Imię i nazwisko</td><td>E-mail</td><td>Telefon</td><td>Adres</td>';
foreach($tabela as $tabele )
{
print'<tr><td>'.$tabele['fullname'].' </td><td>'.$tabele['mail'].' </td><td>'.$tabele['telefon'].' </td>
<td>'.$tabele['STAN'].'
<form name="form" id="form" action="update" method="POST">
<select name="STAN" class="work1">
<option value="wolny">wolny</option>
<option value="zajęty">zajęty</option>
</select></td></tr>';
$_SESSION['stan1'] = $tabele['id']; #id uzytkownika z bazy
}
print'</table>';
print' <br /><br />
<input type="submit" name="submit-form" class="submit-form" value="Zarejestruj" /> </form>
break;
$tabela = DatabaseManager::selectBySQL("SELECT * FROM users1");
print'<table border="10"><tr><td>Imię i nazwisko</td><td>E-mail</td><td>Telefon</td><td>Adres</td>';
foreach($tabela as $tabele )
{
print'<tr><td>'.$tabele['fullname'].' </td><td>'.$tabele['mail'].' </td><td>'.$tabele['telefon'].' </td>
<td>'.$tabele['STAN'].'
<form name="form" id="form" action="update" method="POST">
<select name="STAN" class="work1">
<option value="wolny">wolny</option>
<option value="zajęty">zajęty</option>
</select></td></tr>';
$_SESSION['stan1'] = $tabele['id']; #id uzytkownika z bazy
}
print'</table>';
print' <br /><br />
<input type="submit" name="submit-form" class="submit-form" value="Zarejestruj" /> </form>
break;
Za pomocą POSTA przesyłam dane do metody update w "usermanagerze":
Kod
public function Update($POST) {
if(isset($POST) && is_array($POST)) {
$res = DatabaseManager::updateTable("users1", array("STAN"=>$POST['STAN']),array("id"=>$_SESSION['stan1']));
#tabela kolumna tabeli where id=stan1
if($res) {
return true;
} else {
return false;
}
} else {
return false;
}
if(isset($POST) && is_array($POST)) {
$res = DatabaseManager::updateTable("users1", array("STAN"=>$POST['STAN']),array("id"=>$_SESSION['stan1']));
#tabela kolumna tabeli where id=stan1
if($res) {
return true;
} else {
return false;
}
} else {
return false;
}
Całość przekierowuję do pliku update:
Kod
<?php
if(isset($_POST['STAN'])) {
$um = new UserManager;
$res = $um->Update($_POST);
if($res) {
echo'succes';
} else {
die("Utworzenie użytkownika nie było możliwe!");
}
} else {
die("DOSTĘP DO TEJ STRONY ZOSTAŁ ZABLOKOWANY PRZEZ ADMINISTRATORA!");
}
?>
if(isset($_POST['STAN'])) {
$um = new UserManager;
$res = $um->Update($_POST);
if($res) {
echo'succes';
} else {
die("Utworzenie użytkownika nie było możliwe!");
}
} else {
die("DOSTĘP DO TEJ STRONY ZOSTAŁ ZABLOKOWANY PRZEZ ADMINISTRATORA!");
}
?>
Problem jest następujący: W tabelce po zmianie listy rozwijanej działa update ale tylko dla ostatniego rekordu, dla poprzednich nie.
Trzeba byłoby każde id użytkownika w foreachu jakoś przeiterować i zapisać do zmiennych, ale nie wiem do końca jak to zrobić, chciałem to zrobić na zmiennych sesyjnych no ale tak raczej się nie da jak teraz mam bo zapisuje tylko ostatni element, nadpisuje pozostałe elementy $_SESSION['stan1'] = $tabele['id'] co pokazuje tabelka:
