Witam otóż mam taki oto poniższy kod który ma za zadania aktualizowanie danej treści w bazie danych.
Wszystko do formularzy pobiera poprawnie...
Otóż skrypt wyświetla zawartość tabeli w postaci formularza. Za pomocą checkbox-a wybieram który rekord ma być edytowny. Wpisuje nową treść, klikam na edytuj i niestety nie wiem czemu jakoś nic nie robi... Znajdzie może ktoś z was jakiś błąd?
Proszę bardzoo o pomoc (IMG:
style_emoticons/default/smile.gif)
Z GÓRY DZIĘKUJĘ I DAJĘ PLUSY !
Struktura tabeli aktualności id INT auto_increment podstawowy
data date
tresc TEXT
user varchar(50)
Kod PHP
<?PHP
$query = "SELECT id, data, tresc, user FROM aktualnosci ORDER BY data DESC";
echo("<form action=\"edycja.php\" method=\"post\">");
{
$id = $row[0];
$data = $row[1];
$tresc = $row[2];
$user = $row[3];
// mało ważne ustawienia tabeli i formularza
echo("<table width=\"300\" align=\"justify\">"); echo("<td width=\"300\" class=\"ramka2 nsl\" bgcolor=\"#EAEAEA\" align=\"left\">");
// 1 pole które chce edytować
echo("Data <br> <input type=\"text\" value=\"$data\" name=\"data[]\">");
echo("<td width=\"300\" class=\"ramka2 nsl2\">"); echo("<div align=\"justify\">");
// 2 pole które chce edytować
echo("Tresc <br> <textarea cols=\"70\" rows=\"5\" name=\"tresc[]\">$tresc</textarea>");
echo("<td width=\"200\" class=\"ramka2 nsl\" bgcolor=\"#EAEAEA\" align=\"left\">");
// 3 pole które chce edytować
echo("Uzytkownik <br> <input type=\"text\" value=\"$user\" name=\"user[]\">");
echo("<td width=\"100\" class=\"ramka2 nsl\" bgcolor=\"#EAEAEA\" align=\"left\">");
// checkbox o wartości id
echo("<input type=\"checkbox\" name=\"doedycji[]\" value=\"$id\">");
}
echo("<input type=\"submit\" value=\"edytuj\">");
if($doedycji==0)
{
echo("Brak rekordow w bazie."); }
else
{
// tu powinno się wszystko odbyć ale niestety ....
foreach ($_POST['doedycji'] as $key=>$k)
{
$data = $_POST["data"][$key];
$user = $_POST["user"][$key];
$tresc = $_POST["tresc"][$key];
if(mysql_query("UPDATE aktualnosci SET DATA='$data', TRESC='$tresc', USER='$user' WHERE id='$k'")) {
echo("Rekord(y)został(y) edytowany(e)"); }
else
{
}
}
}
?>
Czyli nikt nie może też znaleźć błędu?
Szkoda...;/
Może jednak ktoś jeszcze spróbuje?
Albo naprowadzi mnie inaczej jak to zrobić?
Ten post edytował kondziu9516 30.03.2012, 20:47:37