Mam problem z zlokalizowaniem błędu z skrypcie. Mianowicie gdy wypełnię formularz i zatwierdzę dane, przekierowuje mnie na stronę lecz nie zmienia danych. Brak mi koncepcji od czego może to zależeć i co można by było dodać, zmienić aby edycja rekordu była możliwa. Najgorsze jest to iż żadnego błędu mi nie wyświetla, a dane z formularza nie zostają zapisane w tabeli bazy danych. Czy zrobiłem jakikolwiek błąd w samym zapytaniu?
Zdjęcia obrazujące mój problem:
http://files.tinypic.pl/i/00273/llubtqv7prb6.jpg http://files.tinypic.pl/i/00273/dy43shrq6l1b.jpg Skrypt wysyłania danych z formularza
<?php
// update do tabeli leki
//jeśli są
if (isset($_POST['id'])==TRUE) {
if ($_POST[nazwa]==TRUE){
mysql_query("UPDATE lek SET Nazwa_lek='$_POST[nazwa]' WHERE ID_lek='$_POST[id_lek]'")or
die('Błąd zapytania: '.mysql_error());}
if($_POST[producent]==TRUE){
mysql_query("UPDATE lek SET Producent_lek='$_POST[producent]' WHERE ID_lek='$_POST[id_lek]'") or
die('Błąd zapytania: '.mysql_error());}
if($_POST[cena]==TRUE){
mysql_query("UPDATE lek SET Cena_lek='$_POST[cena]' WHERE ID_lek='$_POST[id_lek]'") or
die('Błąd zapytania: '.mysql_error());}
if($_POST[kup]==TRUE){
mysql_query("UPDATE lek SET Kupujacy_lek='$_POST[kup]' WHERE ID_lek='$_POST[id_lek]'") or
die('Błąd zapytania: '.mysql_error());} }
Formularz: wyświetla wszystko zgodnie z ilością kolumn w tabeli. Nie wysyła jednak danych wpisanych w formularzu.
<table border="0" rules="rows" style="border:5px #38b7c6 solid; width:800px; "> <form action="edytuj.php" method="post"> <td width="286px">ID leku:
</td><td width="300px"> <?php echo $L1; ?></td><td width="130px"><input type="hidden" name="id" /></td></tr> <tr><td>Nazwa leku:
</td><td><?php echo $L2; ?></td><td><input type="text" name="nazwa" value="<?php echo $L2; ?>" />
</td></tr> <tr><td>Producent leku:
</td><td><?php echo $L3; ?></td><td><input type="text" name="producent" value="<?php echo $L3; ?>" />
</td></tr> <tr><td>Cena leku:
</td><td> <?php echo $L4; ?></td><td><input type="text" name="cena" value="<?php echo $L4; ?>"/>
</td></tr> <tr><td>Kupujący:
</td><td> <?php echo $L5; ?></td><td><input type="text" name="kup" value="<?php echo $L5; ?>"/>
</td></tr> <tr><a href="edytuj.php"style="background: blue; position: absolute; left: 300px;">Tak,edytuj
</a></tr> <tr><a href="baza.php" style="background: red; position: absolute; left: 400px;">Nie powróc
</a></tr>
Skrypt pośredniczący w wyświetlaniu danych do formularza
<?php
include 'db.php'; // połączenie się z bazą danych
//jesli METODA GET przśle link<a href="edytuj1.php?id_lek='; echo $row[ID_lek]; echo '" >';echo'Lek #:'; echo $row[ID_lek]; echo '</a> połącz się z MySQLem i bazą
if (isset($_GET['id_lek'])) { $_SESSION['id_lek'] = $_POST['id_lek'];
$_SESSION['id_lek'] = $_GET['id_lek'];
//Jesli jest pobrany link <a href="edytuj1.php?id_lek='; echo $row[ID_lek]; echo '" >';echo'Lek #:'; echo $row[ID_lek]; echo '</a> pobrany z poprzedniej strony
//wyslij Metodą GET lub POST id_lek z linku
if(isset($_GET['id_lek'])){ $lek = $_GET['id_lek'];}
else { $lek = $_POST['id_lek']; }
$tabela = 'lek';
$pyt=mysql_query("SELECT * FROM $tabela WHERE ID_lek='$lek' "); {
$L1 = $lek['ID_lek'];
$L2 = $lek['Nazwa_lek'];
$L3 = $lek['Producent_lek'];
$L4 = $lek['Cena_lek'];
$L5 = $lek['Kupujacy_lek'];
}
}
?>