Şimdi Ara

php database veri eklemede hata

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
8
Cevap
0
Favori
178
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • öncelikle merhaba. php konusunda kodlamanın amacını anlayacak kadar tecrübem var ama yönetecek tecrübeye tam haiz değilim. öğrenme amaçlı localhost da bir veri tabanı kurdum. amacım ürün adı ve ürün fiyatını database e eklemek (şimdilik. daha sonra da bunu listelemeyi ve değiştirmeyi öğreneceğim)


    kurduğum veri tabanın adı: satis

    iki alt başlık bulunuyor, bunlar urun ve fiyat (tablo)


    ekle.php kodları

    <html>

    <head>

    </head>

     

    <body>

    <form method="POST" action="ekle2.php">

    <table border="1" align="center">

    <tr>

    <td colspan="2" align="center"> Kayıt Ekleme</td>

     

    </tr>

    <tr>

    <td>Ürün Adı</td>

    <td><input type="text" name="urun"></td>

    </tr>


    <tr>

    <td>Fiyatı</td>

    <td><input type="text" name="fiyat"></td>

    </tr>


    <tr>

    <td></td>

    <td><input type="submit" value="Kaydet"></td>

    </tr>

    </table>

    </form>

     

    </body>

     

    </html>


    ekle2.php kodları


    <?php

     $urun = $_POST['urun'];

     $fiyat = $_POST['fiyat'];


     

    $baglan=mysqli_connect("localhost","root","","satis"); 

    mysqli_set_charset($baglan, "utf8");

     

    $sql="select urun from satis WHERE urun='$urun'";

     

    $sonuc1= mysqli_query($baglan,$sql);

    $satirsay=mysqli_num_rows($sonuc1);

     

    if ($satirsay>0)

    {

    echo "Bu Ürün daha önce kaydedilmiş";

     

    } else{

    $sqlekle="INSERT INTO satis( Ürün, Fiyatı) 

    VALUES ('$urun','$fiyat')";

     

    $sonuc=mysqli_query($baglan,$sqlekle);

     

    if ($sonuc==0)

    echo "Eklenemedi, kontrol ediniz";

    else

    echo "Başarıyla eklendi";

    };

     

    ?>


    benim gördüğüm kadarıyla bir hata yok ancak kayıt ekle dediğimde eklenemedi, kontrol ediniz uyarısı alıyorum. database e de veri eklenilmemiş. nerede hata yapıyorum belirtirseniz çok sevinirim.








  • kendi hatamı kendim buldum :)

    ekle2.php de


    } else{

    $sqlekle="INSERT INTO satis( Ürün, Fiyatı) 

    VALUES ('$urun','$fiyat')";


    şeklinde olan kodu


    } else{

    $sqlekle="INSERT INTO satis( urun, fiyat) 

    VALUES ('$urun','$fiyat')";


    olarak değiştirince kayıt başarıyla tamamlandı. konu kapatılabilir. Teşekkürler

  • Bu şekilde kodlamaya spagetti kodlama denir.



    PROTOTURKyoutube
    Bu ders Tayfun Erbilen tarafından hazırlanmıştır. Yeni çıkardığım PHP Eğitim Setime gözatın! https://udemy.com/php-egitim-seti/?couponCode=ERBILEN -- Sosyal Hesaplarım; https://facebook.com/erbilennet https://facebook.com/prototurkcom https://twitter.com/tayfunerbilen https://twitter.com/prototurkcom https://instagram.com/tayfunerbilen
    https://www.youtube.com/watch?v=GOwFVMOJv68


    Bu şekilde kodlamayı öğren.


    25 önce öyle kodluyoruz diye senin de öyle kodlamana gerek yok.

  • INSERT işleminde injection saldırısına maruz kalmamak için UTF-8 karakter seti ayarlanarak aşağıdaki fonksiyonun kullanılması şiddetle tavsiye edilir:
    https://www.php.net/manual/en/mysqli.real-escape-string.php



    < Bu mesaj bu kişi tarafından değiştirildi programmer_onur -- 26 Eylül 2023; 23:12:11 >
    < Bu ileti mini sürüm kullanılarak atıldı >
  • Saldırı yememek icin prepared statements kullanacak.. En sağlamı odur..

  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.