|
|
|
ผมใช้ jQuery editor แต่สามารถบันทึกข้อมูลได้ครับรบกวนผู้รู้แนะนำทีครับ |
|
|
|
|
|
|
|
ลอง Debug ดูหรือยังครับในหน้ารับค่าก่อนที่จะ insert ลอง echo ตัวแปร $_POST['description'] ดูครับว่าค่ามันส่งไปหรือไม่?
Code (PHP)
echo $_POST['description'];
หรือกรณีที่ต้องการแสดงผลใน textarea จะต้องใช้ .blur() ด้วยหรือไม่? ลองศึกษา plugin ที่นำมาใช้ก่อนนะครับ
|
|
|
|
|
Date :
2016-07-02 01:20:33 |
By :
Manussawin |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ก่อนใช้งานได้เข้าไปอ่าน document มากขนาดไหนครับ
ถ้าเป็นการใช้ ฟอร์มส่งข้อมูลธรรมดา
Code (JavaScript)
<textarea class="ckeditor" name="note_descript" id="note_descript" cols="70" rows="8" >
ฟหกด่าสว abcdefghi
</textarea>
แบบนี้ ก็แค่ add file ckeditor.js มาใช้เท่านั้น และกำหนด คลาส ckeditor ไว้ที่ textarea ด้วย
แค่นี้ก็ใช้งานได้ในระดับหนึ่งแล้วครับ สามารถรับส่งข้อมูล ระหว่าง client กับ server ได้แล้ว
แต่ถ้ามีการไปโมฯ config ใหม่อันนี้ ก็ต้องอ้างอิงให้ถูกก็ว่ากันไปครับ
|
|
|
|
|
Date :
2016-07-04 08:33:28 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>A Simple Page with CKEditor</title>
<script src="../ckeditor.js"></script>
</head>
<body>
<?php
if (isset($_POST['submit']))
{
echo $_POST['editor1'];
}
?>
<form method="post" action="?">
<textarea name="editor1" id="editor1" rows="10" cols="80">
This is my textarea to be replaced with CKEditor.
</textarea>
<input type="submit" name="submit">
</form>
<script>
CKEDITOR.replace( 'editor1' );
</script>
</body>
</html>
|
|
|
|
|
Date :
2016-07-04 08:58:02 |
By :
fossil31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ก็ได้นิ
Code (PHP)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>A Simple Page with CKEditor</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script>
<script src="../ckeditor.js"></script>
</head>
<body>
<?php
/*
if (isset($_POST['submit']))
{
echo $_POST['description'];
}
*/
?>
<form method="post" action="?">
<textarea name="description" id="description" rows="10" cols="80">
<p>This is my textarea to be replaced with CKEditor.</p>
</textarea>
<input type="submit" name="submit">
</form>
<script>
CKEDITOR.replace( 'description' );
var description = CKEDITOR.instances.description.getData();
$(function() {
$("form").submit(function(){
alert(description);
return false;
});
});
</script>
</body>
</html>
|
|
|
|
|
Date :
2016-07-04 09:27:07 |
By :
fossil31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลอง debug
alert("<?php echo PATH_PANEL?>/product/_ajax.php" + Math.random());
alert("<?php echo PATH_PANEL?>/product/list.php?cate_id=<?php echo $cate_id?>&b_id=<?php echo $b_id?>" + Math.random());
ว่า link ถูกต้องหรือไม่
ลองแก้ 2 บรรทัดนี้ดูนะ
url: "<?php echo PATH_PANEL?>/product/_ajax.php" + Math.random()
$.get("<?php echo PATH_PANEL?>/product/list.php?cate_id=<?php echo $cate_id?>&b_id=<?php echo $b_id?>" + Math.random()
|
ประวัติการแก้ไข 2016-07-04 09:38:05 2016-07-04 09:40:11
|
|
|
|
Date :
2016-07-04 09:36:16 |
By :
fossil31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลอง debug หรือยัง? ว่า Link ถูกต้องไหม?
alert("<?php echo PATH_PANEL?>/product/_ajax.php" + Math.random());
alert("<?php echo PATH_PANEL?>/product/list.php?cate_id=<?php echo $cate_id?>&b_id=<?php echo $b_id?>" + Math.random());
|
|
|
|
|
Date :
2016-07-04 09:42:31 |
By :
fossil31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
debug: บรรทัดนี้
var data = "type=save_product&"+$("#frm2").serialize()+"";
console.log(data);
//
แล้วลองอันนี้ดู
<script>
CKEDITOR.replace( 'description' );
var description = CKEDITOR.instances.description.getData();
$(function() {
var data = "type=save_product&" + $("#frm2").serialize();
data += "&description=" + description;
});
console.log(data);
</script>
กด F12 ดูว่าค่า description มาไหม
|
|
|
|
|
Date :
2016-07-04 09:50:40 |
By :
fossil31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
tag->php
แนะนำ <?php แบบ full
ลองศึกษา php optimize code
|
|
|
|
|
Date :
2016-07-04 09:51:37 |
By :
fossil31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ค่า description มันเกิดตอน java ต้อง add เข้าไปที่ data
อาจเปลี่ยนเป็น serializeArray()
var data = $("#frm2").serializeArray();
data.push({name: 'description', value: description});
console.log(data);
|
|
|
|
|
Date :
2016-07-04 09:55:05 |
By :
fossil31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ค่า description ยังไม่ได้ส่งไปกับ data
ต้อง add เข้าก่อน แล้ว debug ดู
|
|
|
|
|
Date :
2016-07-04 09:56:00 |
By :
fossil31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
CKEDITOR.replace( 'description' );
var description = CKEDITOR.instances.description.getData();
$(function() {
var data = "type=save_product&" + $("#frm2").serialize();
data += "&description=" + description;
});
console.log(data);
เกิด error
VM676:8 Uncaught ReferenceError: data is not defined
|
|
|
|
|
Date :
2016-07-04 09:57:43 |
By :
bosprogammer1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลอง alert(serialize) มาดูก่อนครับ ว่ามันได้รับค่าของ textarea มาหรือเปล่า
ผมก็เคยเจอปัญหา เลยไปกำหนด data ในการส่งเอง
Code (JavaScript)
var ro ={
name: $('#tmp_name').val(),
cc: $('#tmp_cc').val(),
bcc: $('#tmp_bcc').val(),
reply: $('#tmp_reply').prop('checked')? 1 : 0,
html: CKEDITOR.instances.note_descript.document.getBody().getHtml()
}
$.ajax({url: '/admin/Mailing/Save/'+$('#template').val(),type:'POST',data: ro}).done(function(msg){
|
|
|
|
|
Date :
2016-07-04 11:06:36 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- ลองเช็คค่า มีอยู่จริงหรือไม่
- เช็ค LimitRequestLine เพราะบางทีอาจมีลิมิตของมันอยู่
|
|
|
|
|
Date :
2016-07-04 11:19:55 |
By :
dudesaranyu |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
นั่นแหล่ะครับปัญหาเดียวกันที่เคยเจอ ผมเลยใช้วิธี ดึงข้อมูลจาก ckeditor โดยตรง
อ้างอิง id ของ textarea
html: CKEDITOR.instances.note_descript.document.getBody().getHtml()
สีแดงคือ id ของ textarea
ตัดปัญหา event ทำงานไม่สมบูรณ์ คือบางทีมันติด event จากการที่เรา โหลดไฟล์ javascript เข้ามาเยอะแยะ
และมันทับกันไปทับกันมา ทำให้บางส่วนของโปรแกรมเสียไป และหาปัญหาไม่เจอ
จากที่เขียนสั้นๆ ก็เขียนยาวอีกนิด แก้ปัญหาไปได้ ยังไม่ได้ย้อนกลับไปดูว่าปัญหามันเกิดจากอะไร
แต่คิดว่าแบบนี้ ชัดเจนแล้วเลยเลิกสนใจมัน
|
|
|
|
|
Date :
2016-07-04 11:37:13 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
หรือเป็นเพราะใช้
Code (PHP)
<form role="form" id="frm2" name="frm2" onsubmit="return false;">
เลยทำให้ไม่สามารถใช้ได้อะครับ
|
|
|
|
|
Date :
2016-07-04 11:44:11 |
By :
bosprogammer1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอดู Code เต็มๆซิ
|
|
|
|
|
Date :
2016-07-04 12:00:00 |
By :
fossil31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ฐานข้อมูล กำหนดแบบ text ไปเลย น่าจะได้บันทึกได้
|
|
|
|
|
Date :
2016-07-04 12:01:50 |
By :
compiak |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<form role="form" id="frm2" name="frm2" onsubmit="return false;">
<textarea class="form-control" id="description" name="description" rows="5" placeholder="กรอกข้อมูล ..."><?=$description?></textarea>
<script type="text/javascript">
// Replace the <textarea id="editor1"> with a CKEditor
// instance, using default configuration.
CKEDITOR.replace( 'description' );
var description = CKEDITOR.instances.description.getData();
$(function() {
$("form").submit(function(){
alert(description);
return false;
});
});
</script>
</form>
Code (JavaScript)
<script type="text/javascript">
$(document).ready(function(){
$("#btn-submit").click(function(){
if($("#name").val()==""){alert('ชื่อ');$("#name").focus();return;}
if($("#sub").val()==""){alert('รายละเอียดย่อย');$("#sub").focus();return;}
if($("#description").val()==""){alert('Description');$("#description").focus();return;}
var data = "type=save_product&"+$("#frm2").serialize()+"";
alert(data);
$.ajax({
type: "post",
url: "<?=PATH_PANEL?>/product/_ajax.php",
cache: false,
data: data,
success: function(result){
if(result==1){
alert('บันทึกข้อมูลเรียบร้อย');
$.fancybox.close();
$.get("<?=PATH_PANEL?>/product/list.php?cate_id=<?=$cate_id?>&b_id=<?=$b_id?>",function(result){
$("#list").html(result);
});
return;
}
alert('ไม่สามารถบันทึกข้อมูลได้');
return;
}
});
});
});
</script>
|
|
|
|
|
Date :
2016-07-04 12:06:59 |
By :
bosprogammer1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ทดสอบดูว่า ส่งค่าไปยัง php ไหม?
Code (PHP)
<form role="form" id="frm2" name="frm2" method="post">
<input type="text" id="#name">
<input type="text" id="#sub">
<textarea class="form-control" id="description" name="description" rows="5" placeholder="กรอกข้อมูล ..."><?php echo $description?></textarea>
<script type="text/javascript">
CKEDITOR.replace( 'description' );
var description = CKEDITOR.instances.description.getData();
$(function() {
$("form").submit(function() {
var data = {'description': description};
$.post('<?php echo $PATH_PANEL?>/product/_ajax.php', data, function(result){
alert(result);
});
return false;
});
});
</script>
</form>
php
Code (PHP)
echo $_POST['description'];
$PATH_PANEL มีค่าหรือไม่?
|
ประวัติการแก้ไข 2016-07-04 13:04:01
|
|
|
|
Date :
2016-07-04 13:03:08 |
By :
fossil31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไล่ทีละ step
1. ปลายทางถูกต้อง
2. ค่าทีส่งไปด้วย data มีหรือไม่?
3. ปลายทาง php ตรวจสอบว่าค่าส่งไปถึงหรือไม่? debug:echo, print_r, var_dump
4. จากนั้นค่อย query->insert หรือ update อื่นๆ
5. $.get(url) มาแสดงข้อมูล แต่อย่าลืม check $.get() ว่าข้อมูลถูกต้องหรือไม่
|
|
|
|
|
Date :
2016-07-04 13:19:05 |
By :
fossil31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองแทนค่าเข้าไปตรงๆ แทน $PATH_PANEL เพื่อตรวจสอบ
'<?php echo $PATH_PANEL?>/product/_ajax.php'
เป็น
'xxx/product/_ajax.php'
|
|
|
|
|
Date :
2016-07-04 13:37:43 |
By :
fossil31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$(function() {
$("form").submit(function() {
var data = {'description': description};
$.get('<?=PATH_PANEL?>/product/_ajax.php', data, function(result){
alert(result);
});
return false;
});
});
แล้วเกิด eror medthod - -ครับ
|
|
|
|
|
Date :
2016-07-04 13:44:30 |
By :
bosprogammer1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<form role="form" id="frm2" name="frm2" method="post">
<input type="text" id="#name">
<input type="text" id="#sub">
<textarea class="form-control" id="description" name="description" rows="5" placeholder="กรอกข้อมูล ..."><?php echo $description?></textarea>
<script type="text/javascript">
CKEDITOR.replace( 'description' );
var description = CKEDITOR.instances.description.getData();
$(function() {
$("form").submit(function() {
var data = {'description': description};
$.post('xxxxx/product/_ajax.php', data, function(result){
alert(result);
});
return false;
});
});
</script>
</form>
เปลี่ยน xxxxxx ให้ตรงกับ path ที่เรียก
|
|
|
|
|
Date :
2016-07-04 13:49:37 |
By :
fossil31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ได้แล้วครับขอบคุณทุกคอมเม้นครับที่ช่วยเหลือ ขอบคุณ MR.กล้าครับเป็นพิเศษครับขอบคุณมากๆครับทุกคน
|
|
|
|
|
Date :
2016-07-04 14:08:41 |
By :
bosprogammer1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมใช้ jQuery dropdown ในการเลือกชื่อพนักงานพอ เรียกแล้วข้อมูล ของพนักงานคนนั้นจะถูกกรอกโดยอัตโนมัติ แต่ผมติดปัญหาตรงที่ ถ้าชื่อพนักงานเป้นภาษาไทยมันจะเรียกข้อมูลมาไม่ได้ครับ แต่ ถ้าชื่อเป็นภาษาอังกฤษ ผมเรียกได้นะ มีแนวทางการแก้ปัญหาไหมครับ ผมลองเปลี่ยนในหน้า code นี้ เป็น UTF-8 แล้วก็ไม่ได้ผลครับ
|
|
|
|
|
Date :
2016-07-04 14:42:06 |
By :
winner |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 04
|