Çözüldü PHP veri tabanına veri eklenmiyor

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Katılım
30 Kasım 2018
Mesajlar
5.701
Makaleler
2
Çözümler
14
Merhabalar, foruma girdiğim metinler uzun bunu veri tabanına kaydedemiyorum ama kısa yazıları kaydediyorum. Varchar yaptım olmadı text yaptım olmadı longtext yaptım yine olmadı. Hangi tür yaparsam verileri veri tabanına kaydedebilirim? Kodlarda hata olsa hiç kaydetmemesi lazım. Tarayıcı hatası yüzüne kodları eklemiyorum.
 

Dosya Ekleri

  • kodlar.txt
    11 KB · Görüntüleme: 155
Çözüm
@Yeniçocuk çift tırnak (") ve tek tırnak (') karakterlerini kaldırdığında sorun devam ediyor mu?

Etmemesi gerek. Eğer sorun buysa çözüm yöntemi şu şekildedir;

PHP:
$degisken = mysqli_real_escape_string($baglanti, $_POST["input_name_degeri"]);

Bu methodu tüm form alanların için uygulaman gerek. Bu sayede XSS veya SQL injection saldırılarına karşı da sistemini korumuş olursun.
Veri tipini varchar yapıp yandaki karakter alanına değer girmeyi dene. Örneğin;

1617659405882.png
 
Phpmyadmin kısmından ekleyebiliyorum sorun yok. Form ekranından ekleyemiyorum. Form ekranında kısa yazı yazıldığı zaman sorunsuz ekleniyor örnek resimdeki gibi yaptım yine olmadı.
Metin "'" işareti içeriyorsa sıkıntı olabilir. Bu durumda htmlentities($degisken, ENT_QUOTES, "UTF-8"); methodu ile sorunu çözebilirsin.
 
Benim yazdığım öneri ile aynı öneriyi yazmaktan ne anlıyorsun? Üstelik konu sahibi çözüm olmadığını belirtmiş.
Başka bir çözüm yolu yok dostum. Ne bu atarın? phpmyadmin'i kendin yapmış gibi konuşuyorsun. Sorunun çözümü bu şekilde olur. Yanlış bir şey yaptığından yapamıyor olabilir.
 
Başka bir çözüm yolu yok dostum. Ne bu atarın? phpmyadmin'i kendin yapmış gibi konuşuyorsun. Sorunun çözümü bu şekilde olur. Yanlış bir şey yaptığından yapamıyor olabilir.
PhpMyAdmin'den değeri yazabildiğini belirtmiş. Belli ki sorun başka bir şey. PHP kodu ile MySQL komutu çalıştıramadığı için olabilir. Bunun de sebebi escape karakterleri olabilir. Kısıtlı bilgin ile tek çözüm yolu bu demen doğru değil. Atar yapmıyorum, eksik bilgilerini göstermeye çalışıyorum.
 
PhpMyAdmin'den değeri yazabildiğini belirtmiş. Belli ki sorun başka bir şey. PHP kodu ile MySQL komutu çalıştıramadığı için olabilir. Bunun de sebebi escape karakterleri olabilir. Kısıtlı bilgin ile tek çözüm yolu bu demen doğru değil. Atar yapmıyorum, eksik bilgilerini göstermeye çalışıyorum.
Daha dün buna benzer sistem yazdım dostum. Phpmyadminde ne yaptığına dair bir görselde atmamış arkadaş. Eksik bilgi diyorsun aynı çözüm yolunu sunuyorsun anlamadım ben seni neyse bu gün biraz aksi uyanmışsın bilgine. Polemiğe girmek yerine soruna çözüm bulmayı öneriyorum.
 
Sakin olun kalp kırmaya lüzüm yok. Sistemi tekrardan özetleyeyim. Hastane otomasyonu ödevi yapıyorum. Branşlarla ilgili bilgileri veritabanından çekip Div'in içerisine yazdıracağım. Bunun için form oluşturdum. Verileri phpmyadmin ekranından değil de yetkili kullanıcı form ekranından girmesini istedim. Form çalışıyor ama formdaki textarea kısmına yanı paragrafı yazınca kaydediyor. Dün akşam varchar yaptım longtext yaptım olmadı 2000 karakter verdim yine olmadı.

tablo.JPG

Tablonun yapısı bu şekilde.
 
Uyarı! Bu konu 5 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Technopat Haberler

Geri
Yukarı