Ben gerçekten bu bir yardıma ihtiyacınız ... anlamaya çalışıyorum 3 saat geçirdim ...
Temelde, ben 3 bu fonksiyon çalışması için gerekli tabloları (sorgu ve PHP) ... Yazar, Kitap ve kullanıcılar var.
Bir yazar birçok kitap olabilir, ve bir kullanıcı birçok kitap olabilir - o kadar.
Admin kullanıcı bir kitap güncellemek için seçtiğinde, onlar alanlarında güncel verileri görüntüleyen bir form ile sunulmaktadır, çok yalındır ... Ancak bir zor kısmı var, yönetici kullanıcı bir kitap (örtmek için yazar değiştirebilirsiniz onlar bir hata yapmak) ve aynı zamanda kitap ile ilişkili olduğu için kullanıcıyı değiştirmek.
Ben author_id veya user_id için ne kadar bugüne kadar herhangi bir değer almıyorum tek kitap bilgilerini güncellemek için seçtiğinizde. Bu neden oluyor ben açıkça kullanıcılar için kimliklerini görmek ve çünkü kullanıcı kitap bilgilerini güncellemeleri olduğunda, kullanıcı ve yazar ile dernekler (bir dernek var iken önce) tamamen hurdaya ediliyor, yani ... Ben göremiyorum kaynak kodu içinde benim seçenek değerleri için yazarlar (bunlar seçme dropdowns vardır çünkü bu). Burada kullanıcı kimliğini almak için benim sql budur:
Kullanıcılar DAN User_id, adını SEÇİMİ
ve sonra ben sistemdeki tüm kullanıcıları getirir benim seçin seçeneğiniz var:
<label>This book belongs to:</label> <select name="name" id="name">
<option value="<?php echo $row['user_id']?>" SELECTED><?php echo $row['name']?> - Current</option>
<?php
while($row = mysql_fetch_array($result))
{ ?> <option value="<?php echo $row['user_id']; if (isset($_POST['user_id']));?>"><?php echo $row['name']?></option>
<?php } ?>
Sunulan HTML biçiminde, ben kullanıcıların (adını) seçebilirsiniz ve kaynak kodu içinde ben kullanıcıların adlarla eşleşen (değer) kimlikleri görebilirsiniz.
Son olarak, güncelleştirme gerçekleştirir benim komut, ben bu var:
$book_id = $_POST['book_id'];
$bookname = $_POST['bookname'];
$booklevel = $_POST['booklevel'];
$author_id = $_POST['author_id'];
$user_id = $_POST['user_id'];
$sql = "UPDATE books SET bookname= '".$bookname."', booklevel= '".$booklevel."', author_id='".$author_id."', user_id= '".$user_id."' WHERE book_id = ".$book_id;
Bu sorgunun sonucu ... Açıkçası bu soruya ben (HTML görüntülenen) ile kullanıcı şeyler için bilgi verdik author_id veya user_id ya için hiçbir değer verir ama lutfen yazarları ile aynı sorun var tahmin im .. . değişiklik kabul böylece nasıl komut geçirilen bu kimlik numarası alabilirsiniz! (