1. fotoğraftaki kodları kullanarak mysql veritabanına içerik göndermeye çalıştığımda normal içeriği başarıyla ekliyor ama 2. resimdeki gibi içerisinde kod olan metni veritabanına kaydedemiyor nasıl çözebilirim? #php #mysql


1. fotoğraftaki kodları kullanarak mysql veritabanına içerik göndermeye çalıştığımda normal içeriği başarıyla ekliyor ama 2. resimdeki gibi içerisinde kod olan metni veritabanına kaydedemiyor nasıl çözebilirim? #php #mysql


Son bir saat içinde 240 ziyaretçi, 17 kayıtlı kullanıcı giriş yaptı.
Problem içerikteki ' karakteridir muhtemelen.
Mysql da contentin tipini varchar degil text yap.
@ehuseyin Onu denedim ama olmadı ne yazık ki, @asylmz hangi karakter anlayamadım hangi satırdaki?
@bakiyildiz https://teknoseyir.com/durum/956133#comment-3507123
Veritabanına bu tarz kodları text olarak eklerken htmlspecialchars($veri) şeklinde eklemek gerekiyor sanırım, daha sonra okurken de htmlspecialchars_decode yaparak kullanabilirsiniz sayfa içinde.
htmlspecialchars: https://secure.php.net/manual/tr/function.htmlspecialchars.php
htmlspecialchars_decode: https://secure.php.net/manual/tr/function.htmlspecialchars-decode.php
@bakiyildiz şu kısım yeterli olabilir.
$icerik = addslashes($_POST['icerik']);
http://pasted.co/9f482350
Teşekkürler.
Daha saglikli bir cozum olarak "prepared statements" kullanmanizi tavsiye ederim. https://www.w3schools.com/php/php_mysql_prepared_statements.asp
Her şey düzgün çalışıyor ama bu sefer de içerikte html kodu olunca 403 erişim engeli hatası veriyor bunu ayarlayabileceğim bir yer var mı?
@dirigeant @asylmz @erenhatirnaz @ehuseyin
Uygulama ve web sunucusunun log dosyalari sizin dostunuzdur 🙂 Onlari hep el altinda tutun. Eger kapaliysa hata kayitlarini etkinlestirin. http://php.net/manual/en/errorfunc.configuration.php#ini.error-log
403 hatasini uygulama sunucu degil, web sunucu doner. Web sunucu kayitlarindan hatanin ne olduguna bakabilirsiniz. Muhtemelen uygulamaniz hata verdigi icin web sunucu 500 donmeye calisiyor fakat o hata sayfasina erisemiyordur.
Eger prepared statements kullanmiyorsaniz SQL sorgusuna eklediginiz tum girdilerin SQL cumlesini bozmayacak sekilde duzenlendiginden emin olmaniz lazim. https://stackoverflow.com/a/3252678 Ayrica veriyi okudugunuzda bu islemleri geri cevirerek veriyi ozgun haline dondurmelisiniz.
Tum bunlarla ugrasmamak icin prepared statement ya da daha iyisi PDO kullanmanizi tavsiye ederim. Ilk anda nispeten daha karmasik gorunse bile daha kolay, kaliteli ve guvenli kod yazmaniza yardimci olacaktir.
@dirigeant cpanel içerisindeki hatalarda böyle yazıyor:
2018-09-27 13:46:29.901 [INFO] [-ip adresi-:50222:HTTP2-11] File not found [/home/home/public_html/403.shtml]
O verdiğiniz linki pek anlamadım php.ini dosyası oluşturup içine mi eklemem lazım kodu?
Cpanel kullaniyorsaniz yapilandirma dosyalarina ihtiyaciniz yok. Cpanel arayuzunden gerekli ayarlari yapabilirsiniz.
Sistem ayarlari ve arayuz ozellikleri barindirma servisi aldiginiz firmaya gore degisebilir. Kendi firmanizin belgelerinden php hata kayitlarina nasil erisebileceginizi bulabilirsiniz.
Gelistirme denemelerinizi kendi bilgisayarinizda yapmaniz size zaman kazandiracaktir. Xammp, wamp vb. yazilimlarin yardimiyla php & mysql uygulamalarini bilgisayarinizda kolayca calistirabiliriniz.
Çözemedim işi bu işi kalsın bir süre. 🙂
@bakiyildiz biraz google biraz da belge okuma pratigi ile cozulemeyecek birsey degil. Turkce ve ingilizce yuzlerce anlatim bulabilirsiniz. Ilk basta bakacak cok sey cikiyor (web sunucu, uygulama sunucu, yapilandirma secenekleri vs.). Kisa sure sonra bunlari atlatip sadece yazdiginiz koda ve ilgili belgelere odaklanabilirsiniz.