• 16-02-2013, 14:19:35
    #1
    Üyeliği durduruldu
    Selamlar
    yapmış olduğum bir ürün listeleme scriptinin admin panelindeki ürün düzenleme sayfamda bi problemle karşılaşıyorum.

    urun düzenle sayfasında güncellenebilir alanlar : urun adı, urun resimleri, urun açıklaması,
    fakat bunların dışında bir de , kullanıcının ürün kategorisini de değiştirmesini istiyorum.

    örneğin
    bu komutlarla formdan gelen urun adı ve detayını veritabanına yazdırabiliyorum

    $urun_duzenle = mysql_query("UPDATE urunler SET baslik='$urun_adi' WHERE id='$id'"); 
    $urun_duzenle_detay = mysql_query("UPDATE urunler SET detay='$detay' WHERE id='$id'");
    fakat ürüne ait kategori id sini güncelletemiyorum
    şu şekilde veritabanındaki tüm kategorilere ait bilgileri döngü ile elde ediyorum

    <?php  
    echo "<select name=\"kategori\">";  
    $sor=mysql_query("select * from kategori ");  
    while($yaz=mysql_fetch_array($sor)){  
    $id=$yaz['id'];  
    $kat_adi=$yaz['kat_adi'];  
    echo "<option value=$xid>$kat_adi</option> " ;} echo"</select>"; ?>
    Ürününün kategori id sini update etmem için aşağıdaki kodu kullandım fakat ,

    $kategori_guncelle = mysql_query("UPDATE urunler SET kat_id='$id' WHERE id='$id'");
    ürün id değerini 0 olarak atadı.
    Kategori güncellrken kullandığım sql sorgusunda bi yanlışlık var , yardımcı olabilir misiniz.
    Şimdiden Teşekkürler
  • 16-02-2013, 14:44:10
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    mysql_query("UPDATE urunler SET kat_id='$id' WHERE id='$id'"); 
    /*
    * kat='$id'
    */
    yapmışsınız ve ürünün idsiyle aynı değeri göndermişsiniz burada bir problem olabilir gibi bi' kontrol edin isterseniz.
  • 16-02-2013, 15:11:43
    #3
    Üyeliği durduruldu
    evet dediğiniz gibi bu sorguda ürünün id si neyse veritabnına onu kaydediyo

    Peki kategoriye ait id'yi veritabanına yazdırmam için hangi sql sorgusunu kullanmam lazım?

    Teşekkürler.
  • 16-02-2013, 15:37:18
    #4
    mysql_query("UPDATE urunler SET kat_id='$kat_id' WHERE id='$id'");
    şeklinde deneyebilir misiniz ?
  • 16-02-2013, 15:40:55
    #5
    Üyeliği durduruldu
    bu şekilde değiştirince ürünün kat_id sini 0 olarak atıyo.

    yardımın için sağol

    urun duzenle syfasının tüm kodları bu şekilde
    <?php ob_start(); ?>
    <?php include("../inc/ayar.php")?>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Tozanlı Tekstil Yönetim Paneli</title>
    <link rel="stylesheet" href="css/katduzenle.css" />
    <script language="javascript" type="text/javascript" src="jscripts/tiny_mce/tiny_mce.js"></script>
    <!-- TinyMCE -->
    
    <script language="javascript" type="text/javascript" src="jscripts/tiny_mce/cart.js"></script>
    
    <!--<script language="javascript" type="text/javascript" src="jscripts/tiny_mce/tiny_mce.js"></script>
    <script language="javascript" type="text/javascript">
    tinyMCE.init({
    mode : "textareas"
    });
    </script>  -->
    </head>
    
    <body>
    
    
    <?php ob_start(); 
    
    error_reporting(E_ALL ^ E_NOTICE);
    $cerez_varmi=$_COOKIE["kul_adi"];// kul_adi altinda cerez varmı diye bakıyoruz varsa $cerez_varmi değişkenininin içi dolu olacaktır. yoksa boş :D
    // Yani kullanıcılarımıza göstereceğimiz yerleri bu şekilde kkuullanarak gösterebeiliriz.
    // if cerez varmı vs. gerekli yerlere { aç ve } kapat bunun arasındakiler gözükecek örnek şekilde olduğuğ gibi
    if($cerez_varmi!="")
    {
    ?>
    
    <?php 
    echo "<select name=\"kategori\">"; 
    $sor=mysql_query("select * from kategori "); 
    while($yaz=mysql_fetch_array($sor)){ 
    $id=$yaz['id']; 
    $kat_adi=$yaz['kat_adi']; 
    echo "<option value=$xid>$kat_adi</option> " ;} echo"</select>"; ?>
    
    <?php 
    }
    else
    {
    $sadece= "Bu sayfaya sadece kayıtlı kullanıcılarımız erişebilir.";
    }
    ?>
    <?php if ($cerez_varmi!="") { 
     echo "<div id=\"hosgeldin\" style=\"margin-top:12px;\">Hoşgeldin $cerez_varmi</div> "; 
     } 
     else
      echo "<div id=\"sadece\">$sadece</div>"; ?>
      <?php
    //Bir string değişken oluşturduk
    $adim = $_GET['adim'];
    switch($adim){
    case "": //Atadığımız string değişkenimize hiçbir değer atanmamış ise aşağıdaki kodlamalar devreye giriyor
    ?>
      
      <?php if ($cerez_varmi!="") {
    echo "  
      <div class=\"menu\" style=\"margin-top:20px\">
    <ul>
    <li><a href=\"tanitimyazisi_duzenle.php\"> Tanıtım Yazısını Düzenle</a></li>
    <li><a href=\"kurumsalyazisi_duzenle.php\">Kurumsal Yazısını Düzenle</a></li>
    <li><a href=\"iletisim_duzenle.php\">İletişim Bilgilerini Düzenle</a></li>
    <li><a href=\"vm_duzenle.php\">Vizyon Misyon Düzenle</a></li>
    <li><a href=\"kampanya_ekle.php\">Kampanyaları Yönet</a></li>
    <li><a href=\"kategori_ekle.php\">Kategorileri Yönet</a></li>
    <li><a href=\"urun_duzenle.php\">-Kategori Düzenle & Sil </a></li>
    <li><a href=\"urun_ekle.php\">Ürünleri Yönet</a></li>
    <li><a href=\"\">-Ürün Düzenle & Sil </a></li>
    <li><a href=\"cikis.php\">Güvenli Çıkış</a></li>
    </ul>
    </div>
    
    <table width=\"900\" border=\"1\" bordercolor=\"#CCCCCC\" style=\"text-align:center; border-collapse:collapse; color:#333; font-size:12px; font-family:Arial; margin-bottom:25px; margin-left:200px;\">
      <tr>
        <td width=\"18\" bgcolor=\"#F2F2F2\"><b>id</b></td>
    	<td width=\"18\" bgcolor=\"#F2F2F2\"><b>Kat id</b></td>
        <td width=\"183\" bgcolor=\"#F2F2F2\"><b>Ürün Adı</b></td>
        <td width=\"200\" bgcolor=\"#F2F2F2\"><b>Detay</b></td>
        <td width=\"77\" bgcolor=\"#F2F2F2\"><b>İşlemler</b></td>
    	<td width=\"77\" bgcolor=\"#F2F2F2\"><b>Resim 1</b></td>
    	<td width=\"77\" bgcolor=\"#F2F2F2\"><b>Resim 2</b></td>
    	<td width=\"77\" bgcolor=\"#F2F2F2\"><b>Resim 3</b></td>
    	 <td width=\"77\" bgcolor=\"#F2F2F2\"><b>Resim 4</b></td>
      </tr>
    "; } else
    {
      echo"<meta http-equiv=\"refresh\" content=\"0;URL=index.php\">";
    }?>
    <?php
    $kategori_cek = mysql_query("SELECT * FROM urunler ORDER BY id DESC");
    while($kategori_cek_yeni = mysql_fetch_array($kategori_cek)){
    $id = $kategori_cek_yeni['id'];
    $kat_id=$kategori_cek_yeni['kat_id'];
    $sira++;
     
    echo '
      <tr>
        <td>'.$id.'</td>
    	<td>'.$kat_id.'</td>
        <td>'.$kategori_cek_yeni['baslik'].'</td>
    	<td style="width:200px;">'.$kategori_cek_yeni['detay'].'</td>
        <td><a href="?adim=urunsil&id='.$id.'">Sil</a> - <a href="urun_duzenle.php?adim=urunduzenle&id='.$id.'">Düzenle</a></td>
    	<td>'.$kategori_cek_yeni['urun_resmi'].'</td>
    	<td>'.$kategori_cek_yeni['resim_yolu_2'].'</td>
    	<td>'.$kategori_cek_yeni['resim_yolu_3'].'</td>
    	<td>'.$kategori_cek_yeni['resim_yolu_4'].'</td>
    	
      </tr>';
    }
    ?></table>
    
    <?php
    break;
     
    case "kategorionay": //Kategori ekleme onayı için oluşturduğumuz string değişken değeri
    //Kategori Ekleme formundan metin kutusu verilerini çekiyoruz
    $urun_adi = str_replace("'", "'", $_POST['urun_adi']);
    $detay= str_replace("'", "'", $_POST['detay']);
     
    if($urun_adi == "" and $detay == ""){ //Eğer kategori adı alanı boş ise hata mesajı verdiriyoruz
        echo '<script type="text/javascript">alert("Kategori adını boş bıraktınız!");</script>';
        echo '<meta http-equiv="refresh" content="0;URL=urun_duzenle.php">';
    }else{ //Eğer boş bırakılan bir alan yoksa, kategori kayıt işlemini gerçekleştiriyoruz
        $kategori_kaydet = mysql_query("INSERT INTO kategori (kat_adi,detay) VALUES ('$urun_adi','$detay')"); //Kategoriyi veritabanına kaydedicek mysql kodu
        echo '<script type="text/javascript">alert("Kategori ekleme işleminiz başarıyla gerçekleşti!");</script>';
        echo '<meta http-equiv="refresh" content="0;URL=urun_duzenle.php">';
    }
    break;
     
    case "urunsil": //Kategori silme onayı için oluşturduğumuz string değişken değeri
    $id = $_GET['id']; //Kategorinin id'sini çekiyoruz
    $urun_sil = mysql_query("DELETE FROM urunler WHERE id=$id"); //Kategoriyi silmek için çektiğimiz kategori id'si ile kategoriyi eşleştirip sildirme işlemi yapmak için mysql kodumuz
     
    if($urun_sil){ //Eğer kategori başarıyla silinirse onay mesajı verdiriyoruz
        echo '<script type="text/javascript">alert("Ürün başarıyla silindi!");</script>';
        echo '<meta http-equiv="refresh" content="0;URL=urun_duzenle.php">';
    }else{ //Eğer kategori silinirken bir hata oluşursa hata mesajı verdiriyoruz
        echo '<script type="text/javascript">alert("Ürün silinirken bir hata oluştu!");</script>';
        echo '<meta http-equiv="refresh" content="0;URL=urun_duzenle.php">';
    }
    break;
     
    case "urunduzenle": //Kategori düzenlemek için oluşturduğumuz string değişken değeri
    $id = $_GET['id']; //Kategori id'sini çekiyoruz
    $kategori_cek = mysql_query("SELECT * FROM urunler WHERE id=$id"); //Seçtiğimiz kategroriyi düzenleyebilmek için seçtiğimiz kategori id'si ile eşleştirip bilgileri çekiyoruz
    $kategori_cek_yeni = mysql_fetch_array($kategori_cek);
    
    echo '
      <div class="menu" style="margin-top:20px">
    <ul>
    <li><a href="tanitimyazisi_duzenle.php"> Tanıtım Yazısını Düzenle</a></li>
    <li><a href="kurumsalyazisi_duzenle.php">Kurumsal Yazısını Düzenle</a></li>
    <li><a href="iletisim_duzenle.php">İletişim Bilgilerini Düzenle</a></li>
    <li><a href="vm_duzenle.php">Vizyon Misyon Düzenle</a></li>
    <li><a href="kampanya_ekle.php">Kampanyaları Yönet</a></li>
    <li><a href="kategori_ekle.php">Kategorileri Yönet</a></li>
    <li><a href=\"urun_duzenle.php\">-Kategori Düzenle & Sil </a></li>
    <li><a href="urun_ekle.php\">Ürünleri Yönet</a></li>
    <li><a href="cikis.php">Güvenli Çıkış</a></li>
    </ul>
    </div>
    
    <div style="margin-left:200px;">
    <form action="urun_duzenle.php?adim=kategoriduzenonay&id='.$id.'" method="post" enctype="multipart/form-data" name="form1" id="form1">
    <table width="400" border="0">
      <tr>
        <span>Ürün Adı </span><br>
        <input name="urun_adi" type="text" value="'.$kategori_cek_yeni['baslik'].'" /><br />
    	
    
    
    
    	<textarea name="detay" rows="10" cols="60" value="">'.$kategori_cek_yeni['detay'].'</textarea >
      </tr>
       <tr>
        <td>&nbsp;</td>
    	Resim 1<input name="resim"  type="file" id="resim"  size="30" value="df" /><br>
        Resim 2<input name="resim2" type="file" id="resim2" size="30" value="df" /><br>
        Resim 3<input name="resim3" type="file" id="resim3" size="30" value="df" /><br>
        Resim 4<input name="resim4" type="file" id="resim4" size="30" value="df" /><br><br>
        <td><input type="submit" value="Düzenle" /></td>
      </tr>
    </table>
    </form>
    </div>';
    
    break;
     
    case "kategoriduzenonay": //Kategori düzenlememizin onayı için oluşturduğumuz string değişken değeri
    $kaynak        = $_FILES["resim"]["tmp_name"]; // Yüklenen dosyanýn adý
    $klasor        = "../images/urunimg/"; // Hedef klasörümüz
    $yukle        = $klasor.basename($_FILES['resim']['name']);
    $tip=        $_FILES["resim"]["type"];
    $boyut=$_FILES["resim"]["size"];
    $isim=$_FILES["resim"]["name"];
    $id = $_GET['id'];
    
    $kaynak2=$_FILES["resim2"]["tmp_name"]; // Yüklenen dosyanýn adý
    $klasor2="../images/urunimg/"; // Hedef klasörümüz
    $yukle2=$klasor2.basename($_FILES['resim2']['name']);
    $tip2=$_FILES["resim2"]["type"];
    $isim2=$_FILES["resim2"]["name"];
    
    $kaynak3=$_FILES["resim3"]["tmp_name"]; // Yüklenen dosyanýn adý
    $klasor3="../images/urunimg/"; // Hedef klasörümüz
    $yukle3=$klasor3.basename($_FILES['resim3']['name']);
    $tip3=$_FILES["resim3"]["type"];
    $isim3=$_FILES["resim3"]["name"];
    
    $kaynak4=$_FILES["resim4"]["tmp_name"]; // Yüklenen dosyanýn adý
    $klasor4="../images/urunimg/"; // Hedef klasörümüz
    $yukle4=$klasor4.basename($_FILES['resim4']['name']);
    $tip4=$_FILES["resim4"]["type"];
    $isim4=$_FILES["resim4"]["name"];
    $kategori=str_replace("'", "'", $_POST['kategori']);
    
    $urun_adi = str_replace("'", "'", $_POST['urun_adi']);
    $detay = str_replace("'", "'", $_POST['detay']);
    $xid = $_GET['xid'];
    $urun_duzenle = mysql_query("UPDATE urunler SET baslik='$urun_adi' WHERE id='$id'");
    $urun_duzenle_detay = mysql_query("UPDATE urunler SET detay='$detay' WHERE id='$id'");
    $kategori_guncelle = mysql_query("UPDATE urunler SET kat_id='$kat_id' WHERE id='$id'");
     echo "$ct";
    if(!empty($urun_adi) and ($tip=="image/jpeg" || $tip=="image/gif" || $tip=="image/png") ){ //Eğer düzenleme başarılı olursa onay mesajı verdiriyoruz
    
    $urun_duzenle_resim_yolu = mysql_query("UPDATE urunler SET urun_resmi='$isim' WHERE id='$id'");
    $urun_duzenle_resim_yolu2 = mysql_query("UPDATE urunler SET resim_yolu_2='$isim2' WHERE id='$id'");
    $urun_duzenle_resim_yolu3 = mysql_query("UPDATE urunler SET resim_yolu_3='$isim3' WHERE id='$id'");
    $urun_duzenle_resim_yolu4 = mysql_query("UPDATE urunler SET resim_yolu_4='$isim4' WHERE id='$id'");
    ;}
    $x=move_uploaded_file($kaynak, $yukle);
    $xx=move_uploaded_file($kaynak2, $yukle2);
    $xxx=move_uploaded_file($kaynak3, $yukle3);
    $xxxx=move_uploaded_file($kaynak4, $yukle4);
    if($urun_duzenle and $urun_duzenle_resim_yolu){
        echo '<script type="text/javascript">alert("Ürün başarıyla düzenlendi!");</script>';
        echo '<meta http-equiv="refresh" content="0;URL=urun_duzenle.php">';}
    else{ //Düzenlenirken bir hata oluşursa hata mesajı verdiriyoruz
        echo '<script type="text/javascript">alert("Ürün düzenlenirken bir hata oluştu!");</script>';
        echo '<meta http-equiv="refresh" content="0;URL=urun_duzenle.php">';
    }
    break;
    }
    ?>
    
    
    
    
    
    
    
    
    
    </body>
    </html>
  • 16-02-2013, 15:55:06
    #6
    setten sonra hangi sütunları güncelleyecekseniz onları virgül ile ayırıp güncelletin, Eğer değişmesini istemiyorsanız ilgili kategoriyi sorguya dahil etmeyin

    SET kat_id='$kat_id' , urun_id='$urunid' .. Gibi..
  • 16-02-2013, 16:09:21
    #7
    Üyeliği durduruldu
    big_turk cevabın için sağol dediğini yaptım fakat sorunum sürüyor, kat_id değerini 0 olarak atıyor
  • 16-02-2013, 16:14:47
    #8
    $kategori_guncelle = mysql_query("UPDATE urunler SET kat_id=$id WHERE id=$id");
    Şu şekilde denermisin.

    $kategori_guncelle = mysql_query("UPDATE urunler SET kat_id=10 WHERE id=$id");
    Yada şöyle dene bakalım değeri 10 olarak güncelleyecekmi.
  • 16-02-2013, 16:23:43
    #9
    Üyeliği durduruldu
    Ersat deiğin ilk sorguda urünün id si ne ise kat_id ye onu atıyo

    ikince sorguda kat_id=10 yapınca 10 olarak güncelliyo sorgu doğru olarak işliyo