• 28-08-2008, 21:14:59
    #10
    Üyeliği durduruldu
    herkese çok teşekkürler yapamaya calışacağım
  • 28-08-2008, 23:32:00
    #11
    Yazım hataları olabilir ama mantığı böyle...

    Yorum tablomuzun böyle olduğunu varsayarsak...
    id|sarki_id|      baslik       |mesaj
    -------------------------|---------
    1|   34    |yorum_baslik1  |mesaj1
    2|   35    |yorum_baslik2  |mesaj2
    3|   13    |yorum_baslik3  |mesaj3
    Yukarıdaki tabloyu yönetmek için aşağıdaki fonksiyonları kullanabilirsin...
    #Yorum ekleme başarılı ise true değerini döndürür...
    function yorum_ekle($sarki_id, $baslik, $mesaj){
      return
      mysql_query("INSERT INTO yorumlar (sarki_id,basliki,mesaj) VALUES('$sarki_id','$baslik','$mesaj)")
      ? true : false;
    }
    
    #Yorum silme...
    function yorum_sil($yorum_id){
      return
      mysql_query("DELETE FROM yorumlar WHERE id='$yorum_id' LIMIT 1")
      ? true : false;
    }
    
    #Yorum düzenleme işlemi...
    function yorum_duzenle($yorum_id, $baslik, $mesaj){
       return
      mysql_query("UPDATE yorumlar SET baslik='$baslik',mesaj='$mesaj' WHERE id='$yorum_id' LIMIT 1")
      ? true : false;
    }
    
    #Şarkıya ait yorumları listeleme...
    function yorumlar($sarki_id){
      #Geçici değişken...
      $d=array();
      #SQL sorgusu hazırlanıyor...
      $sql=mysql_query("SELECT * FROM yorumlar WHERE sarki_id='$sarki_id'");
      while($d2=mysql_fetch_array($sql))
          $d[]=$d2;
      return $d;
    }
    Forumda yazdım hata var ise kusura bakma .Hata var ise oluşan hatayı buraya yazaran yardımcı olabilirim.
  • 29-08-2008, 14:59:11
    #12
    Üyeliği durduruldu
    sanırım ama bunları yönetemicem demi ? mesela onay falan veremem
  • 29-08-2008, 15:01:40
    #13
    kamuran21 adlı üyeden alıntı: mesajı görüntüle
    sanırım ama bunları yönetemicem demi ? mesela onay falan veremem
    Birşey anlayamadım . Biraz daha açıklayabilirmisiniz.
  • 29-08-2008, 15:26:28
    #14
    Üyeliği durduruldu
    mustafa90 adlı üyeden alıntı: mesajı görüntüle
    Birşey anlayamadım . Biraz daha açıklayabilirmisiniz.
    ben şöyle bişi yaptım

    <?php
    session_start();
    // *** Redirect if username exists
    $MM_flag="MM_insert";
    if (isset($_POST[$MM_flag])) {
      $MM_dupKeyRedirect="yorum_fail.php";
      $loginUsername = $_POST['soz'];
      $LoginRS__query = "SELECT yorum FROM gelenyorum WHERE yorum='" . $loginUsername . "'";
      mysql_select_db($database_lyrics, $lyrics);
      $LoginRS=mysql_query($LoginRS__query, $lyrics) or die(mysql_error());
      $loginFoundUser = mysql_num_rows($LoginRS);
    
    
      //if there is a row in the database, the username was found - can not add the requested username
      if($loginFoundUser){
        $MM_qsChar = "?";
        //append the username to the redirect page
        if (substr_count($MM_dupKeyRedirect,"?") >=1) $MM_qsChar = "&";
        $MM_dupKeyRedirect = $MM_dupKeyRedirect . $MM_qsChar ."requsername=".$loginUsername;
        header ("Location: $MM_dupKeyRedirect");
        exit;
      }
    }
    $formhatasi = "
    <script language=\"javascript\">
    this.location = \"ekle.php?hata=form\";
    </script>
    ";
    $ip = $_SERVER["REMOTE_ADDR"];
    function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") 
    {
      $theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;
    
      switch ($theType) {
        case "text":
          $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
          break;    
        case "long":
        case "int":
          $theValue = ($theValue != "") ? intval($theValue) : "NULL";
          break;
        case "double":
          $theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";
          break;
        case "date":
          $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
          break;
        case "defined":
          $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
          break;
      }
      return $theValue;
    }
    
    
    $editFormAction = $_SERVER['PHP_SELF'];
    if (isset($_SERVER['QUERY_STRING'])) {
      $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
    }
    
    
    if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "yorumekle")) {
      $insertSQL = sprintf("INSERT INTO eklenenler (isim, konu, mail, yorum, ip) VALUES (%s, %s, %s, %s, %s)",
                           GetSQLValueString($_POST['isim'], "text"),
                           GetSQLValueString($_POST['konu'], "text"),
                           GetSQLValueString($_POST['mail'], "text"),
                           GetSQLValueString($_POST['yorum'], "text"),
                           GetSQLValueString($ip, "text"));
    
    
      mysql_select_db($database_lyrics, $lyrics);
      $Result1 = mysql_query($insertSQL, $lyrics) or die($formhatasi);
    
    
      $insertGoTo = "yorum_ok.php";
      if (isset($_SERVER['QUERY_STRING'])) {
        $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
        $insertGoTo .= $_SERVER['QUERY_STRING'];
      }
      header(sprintf("Location: %s", $insertGoTo));
    } else { ?>
    
    <?php
    }
    $textstr = '';
    for ($i = 0, $length = 8; $i < $length; $i++) {
       $textstr .= $chars[rand(0, count($chars) - 1)];
    }
    
    if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "yorumekleadm")) {
      $insertSQL = sprintf("INSERT INTO yorum (isim, konu, mail, yorum) VALUES (%s, %s, %s, %s)",
                           GetSQLValueString($_POST['isim'], "text"),
                           GetSQLValueString($_POST['konu'], "text"),
                           GetSQLValueString($_POST['mail'], "text"),
                           GetSQLValueString($_POST['yorum'], "text"));
      mysql_select_db($database_lyrics, $lyrics);
      $Result1 = mysql_query($insertSQL, $lyrics) or die($formhatasi);
    
    
      $insertGoTo = "yorum_ok_adm.php";
      if (isset($_SERVER['QUERY_STRING'])) {
        $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
        $insertGoTo .= $_SERVER['QUERY_STRING'];
      }
      header(sprintf("Location: %s", $insertGoTo));
    }
    önce gelenyorum tablosuna gidiyor ordan ben onay verişyorum yorum ekleniyor fakat şurda bişi takılıo kafama bu nasıl şarkıyla aynı id yi alcak yorumlar ? yada bu kod doğrumu şuan ?
  • 29-08-2008, 16:10:59
    #15
    Önce bir tavsiyede bulunayım .
    SQL sorgusu hazırlarken sprintf fonksiyonunu kullanmışsın bence bunu sık sık kullanma çünkü hem boşuna kullanıyorsun hemde boşuna zaman kaybı yapıyor.
    yorumlara şarkı id sini ekleme konusuna gelecek olursak aşağıdaki örnek işine yarayabilir...
    <html>
    <body>
       <!-- Şarkıları listelerken bir link verebilirsin her şarkıya ama linki verirken aşağıdaki şekilde vermen gerekiyor...-->
       <a href="yorum_yaz.php?sarki_id=[ID]">a şarkısına yorum yaz</a>
       <a href="yorum_yaz.php?sarki_id=[ID]">b şarkısına yorum yaz</a>
       <a href="yorum_yaz.php?sarki_id=[ID]">c şarkısına yorum yaz</a>
    </body>
    </html>
    yorum_yaz.php
    <?
    
    if((int)$_REQUEST['sarki_id']==0){
      header("location: index.php");
    }
    
    
    if($_POST['aksiyon']=='yorum_ekle'){
     //Şarkı id sini alıyoruz...
      $sarki_id=$_POST['sarki_id'];
      yorum_ekle($sarki_id, $_POST['baslik'], $_POST['mesaj']);
      echo 'YORUM EKLENDİ<br>';
    }
    
    ?>
    <form action="" method="post">
      <input type="hidden" name="aksiyon" value="yorum_ekle"/>
      <input type="hidden" name="sarki_id" value="<?=$_GET['sarki_id'];?>"/>
      <input type="text" name="baslik"/>
      <textarea name="mesaj"></textarea>
      <input type="submit" value="kaydet">
    </form>
    Böyle bir mantık kullanabilirsiniz. O verdiğiniz kodu incelemedim. Pek zamanım da yok. Eğer hata var ise düzeltmeye çalışırım..
  • 29-08-2008, 16:27:35
    #16
    Üyeliği durduruldu
    hmmm ne dediğini anladım galiba deniyorum şimdi .
  • 29-08-2008, 18:14:39
    #17
    yorumları onaylama işlminde nasıl bi mantık yürütülüyor
  • 29-08-2008, 18:43:09
    #18
    Tillom adlı üyeden alıntı: mesajı görüntüle
    yorumları onaylama işlminde nasıl bi mantık yürütülüyor
    yorumların gösterildiği sayfada sorgu bu şekilde

    $mysql_query("select * from yorumlar where onay=1");

    yani onayı 1 olanlar yayınlanıyor ve yorum girilince otomatik sıfır ataması için default 0 yaparsın..

    **admin panelindende yorumları listeleyip update ile onaylarını 1 yaparsın geneli bu