|
|
|
มีปัญหาเกียวกับการใช้ textarea ครับ เวลาส่ง มันจะมี \ หน้า ' |
|
|
|
|
|
|
|
คือผมกำลังทำเกี่ยวกับการ ใช้คำสั่งพวก SQL ผ่านทาง หน้าเว็บที่เป็น PHP น่ะครับ แล้วปัญหาก็คือ
เช่นผมกรอกข้อมูล
INSERT INTO `list` VALUES (48, 'One Piece 1-5', 'วันพีช 1-5', 1, 'T', '', 0, 3, '1-5 E', 0, 'http://dujthep.files.wordpress.com/2010/12/20080528news0102_onepiece.jpg');
ลงในช่อง textarea เพื่อที่จะส่งค่าไปประมาลผล
แต่พอส่งไปแล้วค่าที่ได้กลับเป็น
INSERT INTO `list` VALUES (48, \'One Piece 1-5\', \'วันพีช 1-5\', 1, \'T\', \'\', 0, 3, \'1-5 E\', 0, \'http://dujthep.files.wordpress.com/2010/12/20080528news0102_onepiece.jpg\');
ซึ่งมันจะมี เครื่องหมาน \ มาเติมที่หน้า เครื่องหมาย ' ทั้งหมด
ซึ่งนำไปประมาลผลใน SQL ไม่ได้
พอจะมีวิธีแก้ไขรึเปล่าครับ
ข้อสังเกตุ ผมรันใน 127.0.0.1 มันปรกติน่ะครับ
แต่พอเอาขึ้นเว็บอัพโหลด มันก็เกิดปัญหาดังกล่าว
ขอบคุณครับ ที่เข้ามารับฟังปัญหา
Tag : PHP, HTML/CSS
|
ประวัติการแก้ไข 2011-02-22 10:43:27
|
|
|
|
|
Date :
2011-02-22 10:40:31 |
By :
omaga03 |
View :
1124 |
Reply :
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองใช้คำสั่ง $sql= stripslashes($sql);
ก่อนเอา $sql ดังกล่าวไปใช้งานดูน่าจะได้
|
|
|
|
|
Date :
2011-02-22 10:54:39 |
By :
chineji |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
stripslashes();
คำสั่งนี้ แจ่มไปเลยครับ ขอบคุณครับ
|
|
|
|
|
Date :
2011-02-22 11:10:06 |
By :
omaga03 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ฟังก์ชันข้อความ adddslashes () และ stripslashes () สามารถใช้จัดรูปแบบข้อความใหม่สำหรับการจัดเก็บในฐานข้อมูล
ตัวอักษรบางประเภท เช่น เครื่องหมายคำพูด ( ' และ " ), backslash (\) และตัวอักษร NULL มีปัญหากับการแปลความหมายของฐานข้อมูลเพื่อการจัดเก็บเข้าสู่ฐานข้อมูล ดังนั้นจึงจำเป็นต้องหาวิธีการระบุ หรือ escape ตัวอักษรเหล่านี้เพื่อให้ฐานข้อมูล เช่น MySql สามารถเข้าใจความหมายตัวอักษรพิเศษ แล้วทำ escape ตัวอักษรเหล่านี้โดยให้เพิ่ม backslash ข้างหน้า เช่น "(double quote) จะเป็น \" และ \ (backslash) จะเป็น \\ (กฎที่ประยุกต์แบบทั่วไปกับอักษรพิเศษ ถ้ามี \\ ในข้อความต้องแทนที่ด้วย \\\\)
PHP มี 2 วิธีฟังก์ชันพิเศษที่ออกแบบสำหรับการออกแบบตัวอักษร ก่อนการเขียนข้อความเข้าสู่ฐานข้อมูล ควรจัดรูปแบบด้วย addslashes ()
$stringvar = addslashes ($stringvar);
addslashes นำข้อความเป็นพารามิเตอร์และส่งออกข้อความจัดรูปแบบใหม่
เมื่อใช้ addslashes () แล้ว ข้อความได้รับการเก็บในฐานข้อมูลด้วย slash ในข้อความนั้น เมื่อดึงข้อความออกมาต้องตัด slash ออกด้วยฟังก์ชัน stripslashes ()
$stringvar = stripslashes ($stringvar);
|
|
|
|
|
Date :
2011-02-22 11:11:46 |
By :
omaga03 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|