lostyazilim
tr.link

[YARDIM] Ajax İle PHP mail() Fonksiyonunu CKEditor 4 İle Kullanamıyorum

5 Mesajlar 835 Okunma
acebozum
tr.link

chocolaxq chocolaxq WM Aracı Kullanıcı
  • Üyelik 01.02.2016
  • Yaş/Cinsiyet 27 / E
  • Meslek .
  • Konum Diğer
  • Ad Soyad E** K**
  • Mesajlar 10
  • Beğeniler 1 / 0
  • Ticaret 0, (%0)
Arkadaşlar aşağıdaki kodlar ile sıkıntısız email gönderebiliyorum. Ama düz textarea işime yaramıyor o yüzden bir editör kullanmak istiyorum. CKEditor 4'ü ajax kullanılmayan mail gönderici ile kullanıyorum çok memnunum o yüzden burada da CKEditor 4 kullanmak istiyorum ama o kadar basit değilmiş. JavaScript bilgim yok bu yüzden saatlerce deneme yanılma ile yapmaya çalıştım ama bir yere varamadım. CKEditor 4 kullanınca giden mailin içeriği boş oluyor. Ben kurcalarken "undefined", "null" gibi mesajlar geldi ama CKEditor 4'e yazdığım mesaj veya HTML'i hiçbir şekilde gönderemedim.

Orijinal kodları:

if (isset($_POST['ajax'])) {
$to = $_POST['to'];
$subject = $_POST['sub'];
$msg = $_POST['msg'];
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
$headers .= "From: ".$_POST['name']."<".$_POST['from'].">";

$send = mail($to,$subject,$msg,$headers);

if ($send) {
echo "

️ $to

";
}else{
echo "

❌ $to

";
}
exit();
}
?>







Postacı





Postman


























<script></script>
<script>
$(document).ready(function(){
$("#btn").on('click',function(){
var mailist = $("#to").val().split("\n");
var tmailist = mailist.length;
for (var current = 0; current < tmailist; current++) {
var from = $("#from").val();
var name = $("#name").val();
var sub = $("#sub").val();
var msg = $("#msg").val();
var to = mailist[current];
var data = "ajax=1&from=" + from + "&name=" + name + "&sub=" + sub + "&msg=" + msg + "&to=" + to;
$.ajax({
type : 'POST',
data: data,
success: function(data) {
$("#result").append(data);
}
});
}


});
});
</script>



CKEditor 4 kullanmaya çalıştığım ama beceremediğim kodlar:

if (isset($_POST['ajax'])) {
$to = $_POST['to'];
$subject = $_POST['sub'];
$msg = $_POST['msg'];
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
$headers .= "From: ".$_POST['name']."<".$_POST['from'].">";

$send = mail($to,$subject,$msg,$headers);

if ($send) {
echo "

️ $to

";
}else{
echo "

❌ $to

";
}
exit();
}
?>







Postacı



<script></script>


Postman















<script>
CKEDITOR.replace( 'msg' );
</script>











<script></script>
<script>
$(document).ready(function(){
$("#btn").on('click',function(){
var mailist = $("#to").val().split("\n");
var tmailist = mailist.length;
for (var current = 0; current < tmailist; current++) {
var from = $("#from").val();
var name = $("#name").val();
var sub = $("#sub").val();
var msg = $("#msg").val();
var to = mailist[current];
var data = "ajax=1&from=" + from + "&name=" + name + "&sub=" + sub + "&msg=" + msg + "&to=" + to;
$.ajax({
type : 'POST',
data: data,
success: function(data) {
$("#result").append(data);
}
});
}


});
});
</script>



Arkadaşlar çok deneme yaptım bir şekilde beceremedim. Ajax ve PHP mail fonksiyonundan anlayıp da derdimi anlamayan varsa Discord, WhatsApp veya PM ile iletişime geçerek TeamViewer id ve şifresi verebilirim sesli ve görsel olarak anlatabilirim. Şimdiden yardım edenlere teşekkür ederim.

CKEditor 4 hakkında bilginiz yoksa buradan fikir sahibi olabilirsiniz: https://cdn.ckeditor.com/
 

 

Discord: Nekro#8006
Instagram: @emirhan.k0c
elektronikssl
webimgo

kelebek kelebek WM Aracı Kullanıcı
  • Üyelik 11.05.2013
  • Yaş/Cinsiyet 32 / E
  • Meslek Geliştirici
  • Konum Malatya
  • Ad Soyad E** K**
  • Mesajlar 3142
  • Beğeniler 60 / 764
  • Ticaret 5, (%100)
Sorunun nedeni html elementinden veri çekmeye çalışıyorsun fakat ckeditor gibi sistemlerlerde veriyi sistem üzerinden erişmen gerekiyor.

var data = CKEDITOR.instances.msg.getData();


https://ckeditor.com/docs/ckeditor4/latest/guide/dev_savedata.html
chocolaxq

kişi bu mesajı beğendi.

chocolaxq chocolaxq WM Aracı Kullanıcı
  • Üyelik 01.02.2016
  • Yaş/Cinsiyet 27 / E
  • Meslek .
  • Konum Diğer
  • Ad Soyad E** K**
  • Mesajlar 10
  • Beğeniler 1 / 0
  • Ticaret 0, (%0)

kelebek adlı üyeden alıntı

Sorunun nedeni html elementinden veri çekmeye çalışıyorsun fakat ckeditor gibi sistemlerlerde veriyi sistem üzerinden erişmen gerekiyor.

var data = CKEDITOR.instances.msg.getData();


https://ckeditor.com/docs/ckeditor4/latest/guide/dev_savedata.html


Hocam çok teşekkür ederim bu şekilde kullanıyorum doğru demi?

var data = "ajax=1&from=" + from + "&name=" + name + "&sub=" + sub + "&msg=" + CKEDITOR.instances.msg.getData() + "&to=" + to;
 

 

Discord: Nekro#8006
Instagram: @emirhan.k0c

kelebek kelebek WM Aracı Kullanıcı
  • Üyelik 11.05.2013
  • Yaş/Cinsiyet 32 / E
  • Meslek Geliştirici
  • Konum Malatya
  • Ad Soyad E** K**
  • Mesajlar 3142
  • Beğeniler 60 / 764
  • Ticaret 5, (%100)

chocolaxq adlı üyeden alıntı

Hocam çok teşekkür ederim bu şekilde kullanıyorum doğru demi?

var data = "ajax=1&from=" + from + "&name=" + name + "&sub=" + sub + "&msg=" + CKEDITOR.instances.msg.getData() + "&to=" + to;


Denemedim fakat muhtemelen çalışacaktır
 

 

wmaraci
wmaraci

chocolaxq chocolaxq WM Aracı Kullanıcı
  • Üyelik 01.02.2016
  • Yaş/Cinsiyet 27 / E
  • Meslek .
  • Konum Diğer
  • Ad Soyad E** K**
  • Mesajlar 10
  • Beğeniler 1 / 0
  • Ticaret 0, (%0)

kelebek adlı üyeden alıntı

Denemedim fakat muhtemelen çalışacaktır


Hocam CKEditor kullanmamın pek bir etkisi olmadı yine html bozuk yolluyor veya boş gidiyor. TeamViewer versem kontrol eder misiniz?
 

 

Discord: Nekro#8006
Instagram: @emirhan.k0c
wmaraci
wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al