• 22-11-2008, 18:31:41
    #1
    Merhaba

    vt'de kayıt değiştirmeyi yapamadım.. Hata kodu almıyorum..Yardımcı olursanız memnun olurum..
    Kod:

    case ayarduzelt:  
    $sorgu = mysql_query("SELECT * FROM ayar WHERE id = '$_GET[id]'"); 
    while ($bilgi = mysql_fetch_array($sorgu)){ 
    ?> 
    <?=$_GET[id];?> 
    <form action="yonetim.php?mode=ayarduzelt&id=<?=$_GET['id']?>" method="POST" > 
      <table width="400" border="1" cellspacing="0" cellpadding="0"> 
      <tr><td width="50"><font face="Verdana" size="2" color="Black">Site Basligi:</font></td> 
      <td width="260"><input type="Text" name="site_basligi" size="105" value="<?=$bilgi[site_basligi];?>"></td>
      </tr>
      <tr><td width="50"><font face="Verdana" size="2" color="Black">Okulun Adi:</font></td> 
      <td width="260"><input type="Text" name="okulun_adi" size="105" value="<?=$bilgi[okulun_adi];?>"></td>
      </tr>
      <tr><td width="50"><font face="Verdana" size="2" color="Black">Ust Resim:</font></td> 
      <td width="280"><input type="Text" name="ust_resim" size="105" value="<?=$bilgi[ust_resim];?>"></td>
      </tr>
      <tr><td width="50"><font face="Verdana" size="2" color="Black">Adres:</font></td> 
      <td width="260"><input type="Text" name="adres" size="105" value="<?=$bilgi[adres];?>"></td>
      </tr>
      <tr><td width="50"><font face="Verdana" size="2" color="Black">Mail:</font></td> 
      <td width="260"><input type="Text" name="mail" size="105" value="<?=$bilgi[mail];?>"></td>
      </tr>
      <tr><td width="50"><font face="Verdana" size="2" color="Black">Meta kelime:</font></td> 
      <td width="260"><input type="Text" name="meta_kelime" size="105" value="<?=$bilgi[meta_kelime];?>"></td>
      </tr>
      <tr><td width="50"><font face="Verdana" size="2" color="Black">Meta Aciklama:</font></td> 
      <td width="260"><input type="Text" name="meta_açiklama" size="105" value="<?=$bilgi[meta_açiklama];?>"></td>
      </tr>  
      <tr><td> 
      <input type="hidden" name="kaydet" value="1" /> 
      <input type="hidden" name="id" value="<?=$bilgi[id];?>" /> 
      <input type="Submit" name="Send Mail" value="Gonder">&nbsp;&nbsp;&nbsp;</td></tr> 
      </table></form><br> 
    <? 
    $site_basligi=$_POST['site_basligi']; 
    $okulun_adi=$_POST['okulun_adi']; 
    $ust_resim=$_POST['ust_resim'];
    $adres=$_POST['adres'];
    $mail=$_POST['mail'];
    $meta_kelime=$_POST['meta_kelime'];
    $meta_açiklama=$_POST['meta_açiklama'];
    }  
    if ($kaydet == 1) 
    { 
    $yaz = mysql_query("UPDATE ayar set site_basligi='".$site_basligi."', okulun_adi='".$okulun_adi."', ust_resim='".$ust_resim."', adres='".$adres."', mail='".$mail."', meta_kelime='".$meta_kelime."', meta_açiklama='".$meta_açiklama."', WHERE id='".$id."'"); 
    echo ("UPDATE ayar set site_basligi='$site_basligi', okulun_adi='okulun_adi', ust_resim='ust_resim', adres='adres', mail='mail', meta_kelime='meta_kelime', meta_aciklama='meta_aciklama' WHERE id='.$id.'"); 
        print mysql_error(); 
     echo "<script language='javascript'>alert('Düzenleme İşlemi Başarıyla Tamamlanmıştır...'); location.href='yonetim.php?mode=ayarlar.php';</script>"; 
    }else{ 
                echo "Hata oluştu"; 
            } 
    break;
  • 23-11-2008, 03:21:54
    #2
    UPDATE li SQL sorgusunda WHERE = '$id' yapmışsın. Ben kod genelinde $id göremedim?

    $id = $_GET['id'];
    bunu unutmuş olabilirmisin? Ayrıca her yerde $_GET['id'] yapıp durmuşsun. Hepsini üstteki gibi tek bi değişken üzerinden kullansaydın hata payın azalmış olurdu
  • 23-11-2008, 10:29:17
    #3
    $id=$_GET['id']
  • 23-11-2008, 10:38:49
    #4
    Php de yeniyim..

    Bir önceki sayfada ayraları görüntületiyorum. Buradan düzelt linkine tıkladığı zaman id'i alıp ona göre düzeltme yapmak istemiştim..
    <form action="yonetim.php?mode=ayarduzelt&id=<?=$_GET['id']?>" method="POST" >

    Yardımcı olursanız sevinirim.
  • 23-11-2008, 11:18:49
    #5
    akif adlı üyeden alıntı: mesajı görüntüle
    Php de yeniyim..

    Bir önceki sayfada ayraları görüntületiyorum. Buradan düzelt linkine tıkladığı zaman id'i alıp ona göre düzeltme yapmak istemiştim..
    <form action="yonetim.php?mode=ayarduzelt&id=<?=$_GET['id']?>" method="POST" >

    Yardımcı olursanız sevinirim.
    kayıtları listelettiğin yerde düzenle diye bir link koy
    linke yaz gitmesini istediğin adres ve
    örneğin:
    yonetim.php?duzenleid=<?=$_GET['id']?> böyle bir link verirsen yonetim.php de duzenleid ye değeri atamış olursun..
    if(isset($_GET['duzenleid']))
    {
    $id=$_GET['id'];
    mysql_query("SELECT * FROM tablo WHERE id='$id' ");
    }
    yaparsan o id ye ait kayıt gelir sonra düzenleme işlemlerini yapabilirsin
  • 23-11-2008, 17:42:59
    #6
    Bir önceki sayfada dediğiniz gibi linki veriyorum.
    <a href="yonetim.php?mode=ayarlarduzelt&id=<?=$okunan['id']?>">Düzelt</a> bu şekilde
    ayarlarduzelt sayfasına id'li gelmiş oluyor zaten..
    yukarıdaki kodlar ayarlarduzelt kodları..
    düzenlemeleri enter'ledikten sonra;Hata yok fakat güncelleme yapmıyor...
  • 24-11-2008, 15:27:08
    #7
    echo $yaz dediğimde;

    şu hatayı aldım..

    UPDATE ayar set site_basligi='Okul Web Sayfası', okulun_adi='okulun_adi', ust_resim='ust_resim', adres='adres', maill='maill', meta_kelime='meta_kelime', meta_aciklama='meta_aciklama' WHERE id='.1.'You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE id='1'' at line 1
  • 24-11-2008, 20:13:26
    #8
    akif adlı üyeden alıntı: mesajı görüntüle
    echo $yaz dediğimde;

    şu hatayı aldım..

    UPDATE ayar set site_basligi='Okul Web Sayfası', okulun_adi='okulun_adi', ust_resim='ust_resim', adres='adres', maill='maill', meta_kelime='meta_kelime', meta_aciklama='meta_aciklama' WHERE id='.1.'You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE id='1'' at line 1
    WHERE id='.1.'
    noktalar olmayacak ki syntax yani yazım hatasından kaynaklanan sorunlar var google sql update yazarsan doğru yazımını öğrenirsin
  • 24-11-2008, 20:18:57
    #9
    SQL sorgusu olarak bunu dener misiniz?
    daha rahat gözükmesi için alt satıra geçtim tek satırdada yapabilirsiniz

    kodlarınızda gördüğüm hatalar en belirgin olarak meta aciklamadan sonra , koyup where yazmissiniz, ordaki virgulu kaldirirsaniz sorunuuz cözülebilir,
    cok fazla . kullnarak birleştirmişinizi içeriği bu şekildede kullanabilirsiniz

    $yaz = mysql_query("UPDATE ayar SET site_basligi='$site_basligi',
    okulun_adi='$okulun_adi',
    ust_resim='$ust_resim',
    adres='$adres',
    mail='$mail',
    meta_kelime='$meta_kelime',
    meta_açiklama='$meta_aciklama' WHERE id=$id");