• 16-12-2008, 14:09:34
    #1
    Merhaba arkadaşlar aşağıda resmini gördüğünüz gibi bir form yaptım.

    Formun Kodu
    Alıntı
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <style type="text/css">
    <!--
    .stil1 {font-family: Verdana, Arial, Helvetica, sans-serif}
    .stil3 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; }
    .stil5 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; font-weight: bold; }
    -->
    </style>
    </head>
    <body>
    <table width="391" border="0">
    <tr>
    <td width="77" height="144" valign="top"><p><span class="stil5">Site adı</span></p>
    <p><span class="stil5">Site Adresi<br>
    </span></p>
    <p><span class="stil5"></span><span class="stil5">Kategorisi</span></p></td>
    <td width="10" valign="top"><p><span class="stil5">:</span></p>
    <p><span class="stil5">:</span></p>
    <p><span class="stil5">:</span></p>
    <p>&nbsp;</p></td>
    <td width="290" align="left"><form action="kaydet.php" method="post" name="siteler" id="siteler">
    <span class="stil5">
    <label>
    <input name="site_adi" type="text" id="site_adi" size="40">
    </label>
    <br>
    <br>
    <label>
    <input name="site_url" type="text" id="site_url" size="40">
    </label>
    </span>
    <p><span class="stil5">
    <label> </label>
    </span><span class="stil3">
    <label></label>
    </span><span class="stil1">
    <label> </label>
    </span>
    <label></label>
    <select name=site_kategori id="site_kategori" style="WIDTH: 160px">
    <option value="" selected>Site Kategorisi</option>
    <option value="haber">Haber Sitleri</option>
    <option value="spor">Spor Siteleri</option>
    <option value="gazeteler">Gazeteler</option>
    <option value="ajanslar">Ajanslar</option>
    <option value="dergiler">Dergiler</option>
    <option value="televizyonlar">Televizyonlar</option>
    <option value="radyolar">Radyolar</option>
    <option value="medya">Medya</option>
    <option value="magazin">Magazin</option>
    <option value="dunya_medyasi">Dünya Medyas&yacute;</option>
    <option value="yerel_gazeteler">Yerel Gazeteler</option>
    <option value="sivil_toplum">Sivil Toplum</option>
    <option value="saglik">Sa&eth;l&yacute;k</option>
    <option value="ekonomi">Ekonomi</option>
    <option value="bankalar">Bankalar</option>
    <option value="egitim">E&eth;itim</option>
    <option value="universiteler">Üniversiteler</option>
    <option value="kariyer">Kariyer</option>
    <option value="faydali_linkler">Faydal&yacute; Linkler</option>
    <option value="arama_motorlari">Arama Motorlar&yacute;</option>
    <option value="siyasi_partiler">Siyasi Partiler</option>
    <option value="bakanliklar">Bakanl&yacute;klar</option>
    <option value="valilikler">Valilikler</option>
    <option value="formlar">Forumlar</option>
    <option value="bloglar">Bloglar</option>
    <option value="populer">Popüler</option>
    <option value="komik">Komik</option>
    <option value="oyun_siteleri">Oyun Siteleri</option>
    </select>
    </p>
    <p align="left">
    <input type="submit" name="Gönder" id="Gönder" value="Gönder">
    &nbsp;&nbsp;
    <input type="reset" name="Temizle" id="Temizle" value="Temizle">
    &nbsp;&nbsp; </p>
    </form></td>
    </tr>
    </table>
    </body>
    </html>
    Buda kayit.php nin kodu
    Alıntı
    <?php
    $baglanti = @MySql_pconnect("localhost","***","***") or die("baglanamadi...");
    @MySql_select_db("***",$baglanti) or die("veritabani seçilemedi");
    $site_adi = $_POST['site_adi'];
    $site_url = $_POST['site_url'];
    $site_kategori = $_POST['site_kategori'];
    $sql = mysql_query("INSERT INTO siteler (site_adi) VALUES ('$site_adi')", $baglanti) or mysql_error();
    $sql = mysql_query("INSERT INTO siteler (site_url) VALUES ('$site_url')", $baglanti) or mysql_error();
    $sql = mysql_query("INSERT INTO siteler (site_kategori) VALUES ('$site_kategori')", $baglanti) or mysql_error();
    echo "Veri basariyla eklendi...!";
    @mysql_close();
    ?>
    Formdan girdiğim bilgiler veritabanına kaydoluyor ama aşağıdaki resimdeki gibi her bir form girdisi için farklı id oluşturuyor.

    forma girilen bilgilerin aşağıdaki resimdeki gibi olması için ne yapmam lazım bide kategorileride veritabanındanmı çekmesi lazım ? benim için çok önemli yardımcı olursanız çok sevinirim...
  • 16-12-2008, 15:08:35
    #2
    Kurumsal PLUS
    3 sorguyla 3 ayrı satır olarak eklediğin için böyle oluyor. kayıt.php şu şekilde değiştir:

    <?php
    $baglanti = @MySql_pconnect("localhost","***","***") or die("baglanamadi...");
    @MySql_select_db("***",$baglanti) or die("veritabani seçilemedi");
    $site_adi = $_POST['site_adi'];
    $site_url = $_POST['site_url'];
    $site_kategori = $_POST['site_kategori'];
    $sql = mysql_query("INSERT INTO siteler (site_adi, site_url, site_kategori) VALUES ('$site_adi', '$site_url', '$site_kategori')", $baglanti) or mysql_error();
    echo "Veri basariyla eklendi...!";
    @mysql_close();
    ?>
    Ayrıca kodlarında hiçbir güvenlik önlemi veya filtreleme yok. Bu şekilde hacklenirsin. Kodlarını en azından şöyle yap:

    <?php
    $baglanti = @MySql_pconnect("localhost","***","***") or die("baglanamadi...");
    @MySql_select_db("***",$baglanti) or die("veritabani seçilemedi");
    $site_adi = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($_POST['site_adi']) : mysql_escape_string($_POST['site_adi']);
    $site_url = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($_POST['site_url']) : mysql_escape_string($_POST['site_url']);
    $site_kategori = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($_POST['site_kategori']) : mysql_escape_string($_POST['site_kategori']);
    $sql = mysql_query("INSERT INTO siteler (site_adi, site_url, site_kategori) VALUES ('$site_adi', '$site_url', '$site_kategori')", $baglanti) or mysql_error();
    echo "Veri basariyla eklendi...!";
    @mysql_close();
    ?>
  • 16-12-2008, 15:17:45
    #3
    Bartuc adlı üyeden alıntı: mesajı görüntüle
    3 sorguyla 3 ayrı satır olarak eklediğin için böyle oluyor. kayıt.php şu şekilde değiştir:
    <?php
    $baglanti = @MySql_pconnect("localhost","***","***") or die("baglanamadi...");
    @MySql_select_db("***",$baglanti) or die("veritabani seçilemedi");
    $site_adi = $_POST['site_adi'];
    $site_url = $_POST['site_url'];
    $site_kategori = $_POST['site_kategori'];
    $sql = mysql_query("INSERT INTO siteler (site_adi, site_url, site_kategori) VALUES ('$site_adi', '$site_url', '$site_kategori')", $baglanti) or mysql_error();
    echo "Veri basariyla eklendi...!";
    @mysql_close();
    ?>
    Ayrıca kodlarında hiçbir güvenlik önlemi veya filtreleme yok. Bu şekilde hacklenirsin. Kodlarını en azından şöyle yap:
    <?php
    $baglanti = @MySql_pconnect("localhost","***","***") or die("baglanamadi...");
    @MySql_select_db("***",$baglanti) or die("veritabani seçilemedi");
    $site_adi = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($_POST['site_adi']) : mysql_escape_string($_POST['site_adi']);
    $site_url = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($_POST['site_url']) : mysql_escape_string($_POST['site_url']);
    $site_kategori = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($_POST['site_kategori']) : mysql_escape_string($_POST['site_kategori']);
    $sql = mysql_query("INSERT INTO siteler (site_adi, site_url, site_kategori) VALUES ('$site_adi', '$site_url', '$site_kategori')", $baglanti) or mysql_error();
    echo "Veri basariyla eklendi...!";
    @mysql_close();
    ?>
    Çok teşekkür ederim tam istediğim gibi oldu bide kafama şu takıldı aceba form sayfasındaki kategorileride veritabanındanmı çekmesi lazım ?
  • 16-12-2008, 15:20:59
    #4
    Kurumsal PLUS
    farketmez istediğiniz gibi yapabilirsiniz, ister elle ayarlayın ister veritabanından çektirin. Veritabanından çektirmeniz size kolaylık sağlayacaktır listelemelerde, site eklerken kategori ismi yerine kategorinin id'sini eklersiniz.
  • 16-12-2008, 16:16:16
    #5
    veri tabanınına başarılı bir şekilde veri girişi yaptım ancak bir sıkıntım daha var veritabanına girdiğim verilerin çıktısını aşağıdaki gibi almak istiyorum

    <DIV class=tabLink><a href="page/go.php?out=https://www.r10.net" target="_blank">R10</A></DIV>

    ne yapmam lazım?

    yaz.php kodu

    Alıntı
    <?php

    $baglanti = @MySql_pconnect("localhost","realmdy_medya","medya ") or die("MySQL Bağlantı Hatası");
    @MySql_select_db("realmdy_medya",$baglanti) or die("MySql Veritabanı seçilemedi");

    $sql = mysql_query("SELECT * FORM siteler", $baglanti) or die("Sorgu Hatası");

    while($yaz = mysql_fetch_assoc($sql))
    {

    echo $yaz['siteler']."<br />";
    }

    ?>
  • 16-12-2008, 16:51:03
    #6
    Kurumsal PLUS
    <?php
    
    $baglanti = @MySql_pconnect("localhost","realmdy_medya","medya ") or die("MySQL Bağlantı Hatası");
    @MySql_select_db("realmdy_medya",$baglanti) or die("MySql Veritabanı seçilemedi");
    
    $sql = mysql_query("SELECT * FORM siteler", $baglanti) or die("Sorgu Hatası");
    $row_sql = mysql_fetch_assoc($sql);
    
    do {
    
    echo '<DIV class=tabLink><a href="page/go.php?out='.$row_sql['site_url'].'" target="_blank">'.$row_sql['site_adi'].'</A></DIV><br >';
    } while($row_sql = mysql_fetch_assoc($sql));
    
    ?>
  • 16-12-2008, 17:10:37
    #7
    valla sorun nerden kaynaklanıyor bulamadım ama MySQL Bağlantı Hatası diyor
  • 16-12-2008, 22:30:22
    #8
    Üyeliği durduruldu
    veritabanı kullanıcı adı ile şifresinde sorun vardır doğruluklarını kontrol edip tekrar dene.
  • 17-12-2008, 08:54:12
    #9
    Hata ("localhost","realmdy_medya","medya ") password ile " arasındaki boşluktan kaynaklanıyordu düzelttim ancak şimdide Sorgu Hatası diye hata veriyor :O