ถามเรื่อง jquery กับการส่งค่าหน่อยครับ
ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา ถามเรื่อง jquery กับการส่งค่าหน่อยครับ
ไม่รู้ว่าผมเขียนคำสั่งถูกหรือเปล่านะครับพอดีทำระบบให้คะแนนอยู่
$(function(){
$("#score").click(function(){
var score=$("#score").attr("value");
$.post("t.php",
{score:score},
function(data){
$("#Showtext").html(data);
});
});
});
ตรงนี้คำไปต่อไม่เป็นว่าจะส่งค่า หรือ ไอดีของผู้ใช้งานนี้เข้าไปยังไง
<a href='#' onclick='$(#score).trigger(click);return false;'><b>ให้พลังน้ำใจ</b></a>
จุดประสงค์ของระบบ คือ มีคลิกแล้วเพิ่ม คะแนนให้ผู้ใช้งานนั้นๆแล้วคะแนนนี้จะไปเก็บไว้อีกตารางหนึ่งครับ
tb_score มีรายละเอียดดังนี้ครับ
id_score เก็บ รหัส PK
ืname_u1 เก็บชื่อ ผู้ได้รับคะแนน
name_u2 เก็บชื่อผู้ให้คะแนน
today เก็บวันที่ ที่ให้คะแนน
ประมาณนี้ครับ พอดีเขียนแล้วศึกษาดัดแปลงจากเว็บนี้ดูแล้วไปต่อไม่เป็นครับ

คำแนะนำ และการใช้งาน
สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก
- ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
สามารถทำได้หลายวิธี และวิธีที่น่าจะง่ายที่สุด ของ jQuery คือสร้างฟอร์มส่งข้อมูลตามปกติ และให้กำหนด id ของฟอร์ม ข้อมูลไหนที่ต้องการส่ง และไม่ต้องการแสดงก็ให้ใฃ้ input type=hidden
HTML Code ตัวอย่าง
1 2 3 4 5 | < form id = "my_form" name = "my_form" method = "post" action = "" > < input name = "my_hidden" type = "hidden" id = "my_hidden" value = "1" /> < input type = "text" name = "my_textbox" id = "my_textbox" /> < input type = "button" name = "my_send_button" id = "my_send_button" value = "Send" /> </ form > |
Javascript Code ตัวอย่าง
1 2 3 4 5 6 7 8 | <script type= "text/javascript" src= "js/jquery-1.4.1.min.js" ></script> <script type= "text/javascript" > $( function (){ $( "#my_send_button" ).click( function (){ $.post( "post_data.php" ,$( "#my_form" ).serialize()); }); }); </script> |
ส่วนไฟล์รับค่า หรือไฟล์ php ก็กำหนดเงื่อนไขตามปกติ ค่าที่ส่งไป จะเป็นตัวแปร POST ตามตัวอย่างข้างต้น ค่าที่ส่งไป จะเป็น $_POST['my_hidden'] และ $_POST['my_textbox']

ขอบคุณมากครับ
ถ้าเป็นแบบ form นั้นผมเข้าใจครับ พอทำได้ แต่ว่าถ้าทำเป็นแบบ ลิงค์โดยไม่ได้มีการส่งค่าแบบ from ครับตรงนี้แหละที่ผมไม่รู้ว่าจะส่งข้อมูลยังไง
ค้าเป็นแบบลิงค์เอาครับ

ถ้าหน้าที่ต้องการส่งค่า มีแค่ชุดข้อมูลเดียวที่ต้องการส่ง หมายถึงมีลิ้งค์สำหรับ ให้คะแนนในหน้านั้นแค่ลิ้งค์เดียว สามารถใช้ตัวอย่าง ตามความเห็นก่อนหน้าไปประยุกต์ใช้งานได้
แต่ถ้าหน้านั้นมีลิ้งค์สำหรับให้คะแนนหลายอัน แนะนำให้ทำเป็นฟังก์ชัน เช่น
1 2 3 4 5 6 7 8 9 10 11 | <script type= "text/javascript" > function makeScore(data1,data2){ var dataSend={ score:data1, id:data2 } $.post( "t.php" ,dataSend, function (data){ $( "#Showtext" ).html(data); }); } </script> |
การส่งค่า
1 | < a href = 'javascript:makeScore(1,15);' >< b >ให้พลังน้ำใจ</ b ></ a > |
ไม่รู้ว่าจะเข้าใจไหม.. ลองศึกษาการใช้งานฟังก์ชันใน javascript เพิ่มเติม
https://www.ninenik.com/javascript-manual/function.html#1193137

ตอนนี้ผมใช้ Framwork ของ jQTouch สําหรับพัฒนาเว็บไซต์บนมือถืออ่ะครับ
(ไม่ต้องอ่านตัวเลขนะครับผมใส่ไว้เพื่อแบ่งเป็นส่วนๆให้เข้าใจง่ายขึ้นครับ)
โดย1. ในหน้าแรกนั้นเป็น Menu list text แบบคงที่คือแบ่งเป็นหมวดหมู่สินค้า และเมืื่อคลิกเลือกหมวดหมู่แล้ว 2.ก็จะเป็นหน้าถัดไปที่เป็น list รายการสินค้า โดยรายชื่อสินค้าต่างๆนั้นจะทําการดึงข้อมูลจาก Database เป็น Dynamic text list แล้วแต่ละ list นี้ก็จะ link เป็นของตัวเองไปยังหน้าถัดไป 3.เพื่อแสดงสินค้านั้นๆแต่ละรุ่นอ่ะครับ แล้วเมื่อคลิกรุุ่นที่ต้องการแล้ว 4.ก็จะแสดงรายละเอียดเกี่ยวกับรุ่นนั้นๆครับ
สรุปก็จะมีทั้งหมด 4 หน้าครับ
ปัญหาของผมอยู่ที่ระหว่างหน้า 2 ไป 3
ติดปัญหาในหน้า 3 ที่จะต้องเชค link product ที่ส่งมาแล้วเชคใน Database ว่าเป็นสินค้าไหนเพื่อที่จะแสดงรุ่นแต่ละรุ่นของสินค้านั้น
โค๊ดในส่วนของหน้าที่สองเพื่อส่งค่าไปให้ jQuery
1 2 3 4 5 6 7 8 | <?php include ( "../database_connect/dbconect.php" ); $sql = "select * from test_product" ; $result = mysql_query( $sql ); while ( $row = mysql_fetch_array( $result )) { print '<li class="arrow"><a href="#' . $row ["Link "].'" id= "demo" >'. $row [ "Name_Detail" ]. '</a></li>' ; $product = $row [ "Name" ]; } ?> |
โค๊ดในส่วนของ jQuery ที่นําค่า $product มา
$('a#demo').click(function(){
alert("Mouse Click");
var u_product=<?=$product?>
$.post("index.php",checkName(u_product));
});
โค๊ดในหน้าสามรับค่ามาเชคเพื่อ Query ข้อมูลใน Database
1 2 3 4 5 6 7 8 9 10 | <?php include ( "../database_connect/dbconect.php" ); function checkName( $name ){ echo 1; $sql = "select * from test_product_list where Name='$name'" ; $result = mysql_query( $sql ); while ( $row = mysql_fetch_array( $result )) { print '<li class="arrow">' . $row [ "Name_Detail" ]. '</a></li>' ; } } ?> |
ในส่วนของความคิดเห็นที่สามผมไม่เข้าใจโค๊ดบรรทัดนี้อ่ะครับ
- $.post("t.php",dataSend,function(data){
- $("#Showtext").html(data);
- });
อย่างไรช่วยอธิบายให้หน่อยนะครับหรือ ไม่ถ้าผมส่งค่าผิดหรือมีวิธีการไหนช่วยผมหน่อยนะครับ ขอบคุณครับ

คือ ตอนนี้ผมก็ต้องการทำลักษณะนี้เหมือนกันครับ เข้ามาเจอเลยอยากถามต่อครับ
แล้วพอเก็บใน database แล้วให้แสดงผลต่อเลยได้ไหมครับแบบไม่ต้องรีเฟรชหน้าจอเลยอ่ะครับ
รบกวนด้วยครับ ผมเซิชดูหลายที่แล้วกระทู้นี้ใกล้เคียงที่สุด ผมadd bookmarkไว้แล้วจะกลับมาดูครับ
ปล.ทำไม่เป็นครับแต่อยากลองทำ
