v2.5.2
Giriş yap

#Çözüldü! Options içerisine kayıtlı olan bütün kategori başlıklarını listelemek istiyorum

yahyairis
504 defa görüntülendi

Merhabalar,
Bir adet başlık bir adet kategori tablom var eklediğim başlıklara uygun kategoriler ile eşleştiriyorum. Yeni ekle dediğim zaman, veri tabanı üzerinde kayıtlı olan bütün verileri görebiliyorum. Başlığı düzenle dediğim zaman, sadece eşleştirilen kategori verisi geliyor. Inner join ya da ikinci bir sorgu ile denedi, Inner join bana farklı bir sonuç vermedi, ikinci sorgu ise sonuca yakınlaştırdı ama istediğim gibi olmadı. İki sorgu ile kayıtlı olan kategori başlıklarını döngü içerisinde kayıtlı veriymiş gibi gereksiz bir tekrar halinde listeledi. Benim istediğim; Options içerisine kayıtlı olan bütün kategori başlıklarını listelemek istiyorum.

Aldığım Hata "Warning: Undefined array key "categoryName" in C:\xampp\htdocs\PHP-Blog-Admin\admin\subject-details-edit.php on line 56"

<?php
   $sql="SELECT * FROM subject WHERE id='$subid'";
$query = mysqli_query($connection, $sql);
while ($row = mysqli_fetch_assoc($query)) {
echo                               
' <form id="validation" class="form-horizontal" action="functions/update_subject.php" method="post"> 
<input type="hidden" name="id" value="'.$row["id"].'"/>			 
<div class="form-group">
<select class="select2_single form-control">									 									
<option value="'.$row['categoryid'].'">'.$row['categoryName'].'</option>	
</select>
</div>							
<div class="form-group">
<label for="pwd">Konu Başlığı:</label>
<input type="text" class="form-control" name="subjecttitle" placeholder="'.$row['subjecttitle'].'">								  
<span class="help-block">Yazmış olduğunuz ya da yazacağınız Konu Başlığı.</span>
</div>							
<div class="form-group">
<label for="pwd">Konu İçeriği:</label>
<span class="help-block">Eklediğiniz Konu Başlığından biraz bilgi verebilir ve tartışma konusunu daraltabilirsiniz.</span>
<input type="text" class="form-control" name="subjectcontent" placeholder="'.$row['subjectcontent'].'">								  
</div>
<div class="form-group">
<label for="pwd">Konu İpucu :</label>
<span class="help-block">Eklediğiniz Konu Başlığınızın okurlar tarafından bilgi birikimi olmayabilir, lütfen biraz ipucu veriniz.</span>
<input type="text" class="form-control" name="subjecthint" placeholder="'.$row['subjecthint'].'">								  
</div>								  
<button type="submit" class="btn btn-default" name="usubject">Güncelle</button>
</form> 
'
;} 
?>
Cevap yaz
Cevaplar (2)
yahyairis
1161 gün önce

Merhabalar,
Dün paylaştığım problemi çözdüm. Kategorileri listelemek istediğim için sorguyu, veritabanından çektiğim verilerden ayrı olarak farklı bir sorgu ve döngü ile yaptım. Şu an problemsiz olarak çalışıyor.

<form id="validation" class="form-horizontal" action="functions/update_subject.php" method="post"> 
<div class="form-group">
<label for="pwd">Kayıtlı Kategori Listesi:</label> <br />
<select class="select2_single form-control" name="categoryid">
<?php 
if($r_set = $connection->query("SELECT * from category")){
while ($row = $r_set->fetch_assoc()) {
echo "<option value=$row[categoryid]>$row[categoryName]</option>";
} 
} 
?>
</select>
<span class="help-block">Yazmış olduğunuz Kategorilere göz atabilirsiniz.</span>
</div>
<?php
   $sql="SELECT * FROM subject WHERE id='$subid'";
$query = mysqli_query($connection, $sql);
while ($row = mysqli_fetch_assoc($query)) {
echo                               
' <form id="validation" class="form-horizontal" action="functions/update_subject.php" method="post"> 
<input type="hidden" name="id" value="'.$row["id"].'"/>			 
<div class="form-group">
<select class="select2_single form-control">									 									
<option value="'.$row['categoryid'].'">'.$row['categoryName'].'</option>	
</select>
</div>							
<div class="form-group">
<label for="pwd">Konu Başlığı:</label>
<input type="text" class="form-control" name="subjecttitle" placeholder="'.$row['subjecttitle'].'">								  
<span class="help-block">Yazmış olduğunuz ya da yazacağınız Konu Başlığı.</span>
</div>							
<div class="form-group">
<label for="pwd">Konu İçeriği:</label>
<span class="help-block">Eklediğiniz Konu Başlığından biraz bilgi verebilir ve tartışma konusunu daraltabilirsiniz.</span>
<input type="text" class="form-control" name="subjectcontent" placeholder="'.$row['subjectcontent'].'">								  
</div>
<div class="form-group">
<label for="pwd">Konu İpucu :</label>
<span class="help-block">Eklediğiniz Konu Başlığınızın okurlar tarafından bilgi birikimi olmayabilir, lütfen biraz ipucu veriniz.</span>
<input type="text" class="form-control" name="subjecthint" placeholder="'.$row['subjecthint'].'">								  
</div>								  
<button type="submit" class="btn btn-default" name="usubject">Güncelle</button>
</form> 
'
;} 
?>
makifgokce
1161 gün önce

$row['categoryName'] diye bişeyin daha önceden tanımlanmadığı için böyle bir hata alıyorsun.
var_dump($row) yaparak çıktı alırsan öyle birşey gelmediğini görürsün.