 |
insert ข้อมูลไม่ได้คะ ช่วยดูโค๊ด นี้ให้หน่อยคะ ขอบคุณคะ |
|
 |
|
|
 |
 |
|
คงต้องดูฟังก์ชัน current กับ next ด้วยล่ะ
|
 |
 |
 |
 |
Date :
2012-01-07 08:42:54 |
By :
nimporn |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
รู้จุดผิดคะ แต่ไม่รู้จะแก้ยังไงให้หายERROR ไม่เคยใช้ currentกับ next มาก่อน ช่วยดูให้ทีนะคะ ขอบคุณคะ
|
 |
 |
 |
 |
Date :
2012-01-07 09:46:46 |
By :
jomjam |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ไม่มีคนเข้ามาตอบเรย แฮะroll::
ลองเอาตัวแปร $arr_data มาใช้กับ
Code (PHP)
$a = current( $arr_data )
$b = next( $arr_data )
สามารถ insert ได้ แต่ช่องว่างถูกinsertลงไปด้วย

อยากรู้จังคะ ทำไมการเรียกใช้ตัวแปร
Code (PHP)
$a = current( $v );//error
$b = next( $v);//error
จึงทำให้ Error ทำไมเอาตัวแปรมาใช้กับ currentกับnextมาใช้แบบนี้ไม่ได้ งงจริงๆคะ
|
 |
 |
 |
 |
Date :
2012-01-07 17:45:46 |
By :
jomjam |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เออเรอร์ เพราะมันไม่ใช่อาร์เรย์ แต่เป็นค่าที่อยู่ใน อาร์เรย์ มันเลยเออร์เออร์
|
 |
 |
 |
 |
Date :
2012-01-07 18:23:38 |
By :
artkung |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
แล้วต้องทำไงดีคะ ......ช่วยแก้หน่อยคะ  
|
 |
 |
 |
 |
Date :
2012-01-07 18:45:55 |
By :
jomjam |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Code (PHP)
<?
$arr_data= explode("|",$text);
$numarr = count($arr_data);
for ($i=0; $i<$numarr; $i++) {
$a = $arr[$i];
$i++;
$b = $arr[$i];
$sql ="INSERT INTO twogram (w_one,w_two,frequency) VALUES ('$a','$b','1') ON DUPLICATE KEY UPDATE FREQUENCY= FREQUENCY+1 ";
$result = mysql_query($sql);
}
if($result) {
echo "เพิ่มข้อมูลงฐานข้อมูลสำเร็จ"."<br>";
} else {
echo "ไม่สามารมเพิ่มข้อมูลได้"."<br>";
}
?>
foreach เป็นการดึงค่าใน array มาเก็บในตัวแปรหลัง as ซึงไม่ใช่ตัวแปร array ครับ
จึงไม่สามารถใช้ฟังก์ชั่น current() หรือ next() ของ array ได้
ไม่แน่ใจว่าผมเข้าใจถูกไหม คือ ในการเพิ่มข้อมูลแต่ละ record คุณต้องใช้ค่าในตัวแปร array เป็นคู่ๆ เช่น
$arr_data[0], $arr_data[1]
$arr_data[2], $arr_data[3]
$arr_data[4], $arr_data[5]
...
ถ้าใช่ก็ใช้ for ธรรมดาวน loop ก็ได้ครับ เช็คจากความยาวของตัวแปร array
ใน loop ก็เก็บค่าตัวแรกก่อน เพิ่มค่า แล้วเก็บตัวที่ 2 ครับ
|
 |
 |
 |
 |
Date :
2012-01-09 11:47:25 |
By :
amuropao08 |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ลองแล้วคะ insert ไม่ได้เลย 
|
 |
 |
 |
 |
Date :
2012-01-09 15:07:53 |
By :
jomjam |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
มีฟ้อง error อะไรไหมครับ รบกวนแก้ตรง
Code (PHP)
$result = mysql_query($sql);
เป็น
$result = mysql_query($sql) or die mysql_error();
เพื่อแสดง error และ echo $sql ออกมาดูครับว่าค่าเข้าไปใน query หรือเปล่า
|
 |
 |
 |
 |
Date :
2012-01-09 15:13:51 |
By :
amuropao08 |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ลองแล้วคะ insertได้ แต่เป็นค่าว่าง ข้อมูลไม่มาเรยสักตัวคะ .. 
|
 |
 |
 |
 |
Date :
2012-01-09 15:59:16 |
By :
jomjam |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ลอง echo ค่าที่ส่งมาดูว่ามีค่าส่งมาหรือป่าว
ลองดู
|
 |
 |
 |
 |
Date :
2012-01-09 16:03:51 |
By :
ozma |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
พอจะปรับโค๊ดเก่า มาแก้และใช้ฟังก์ชัน currentกับnext เหมือนเดิมได้ไหมค่ะ
เพราข้อมูลจะต้องตัดช่องว่างออกด้วย ก่อน insert ลงDB
Code (PHP)
//$text ="|| |การ|ประชุม|ทาง|วิชาการ| |ครั้ง|ที่| ||||| |||| || |||||||||||| |การ|";
$arr_data= explode("|",$text);
if (strlen(trim($v))>0)
{
$a = current( $v );//error
$b = next( $v);//error
$sql ="INSERT INTO twogram (w_one,w_two,frequency) VALUES ('$a','$b','1') ON DUPLICATE KEY UPDATE FREQUENCY= FREQUENCY+1 ";
$result = mysql_query($sql);
}
if($result)
{
echo "เพิ่มข้อมูลงฐานข้อมูลสำเร็จ"."<br>";
}
else
{
echo "ไม่สามารมเพิ่มข้อมูลได้"."<br>";
}
}
}
|
 |
 |
 |
 |
Date :
2012-01-09 16:05:01 |
By :
jomjam |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เพิ่มเติม ข้อมูลประมาณนี้คะ
$text ="|| |การ|ประชุม|ทาง|วิชาการ| |ครั้ง|ที่| ||||| |||| || |||||||||||| |การ|";
|
 |
 |
 |
 |
Date :
2012-01-09 16:14:26 |
By :
jomjam |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เย้ๆๆๆๆๆได้แล้วคะ Code (PHP)
$arr_data= explode("|",$text);
$numarr = count($arr_data);
for ($i=0; $i<$numarr; $i++) {
$a = current($arr_data);
$b = next($arr_data);
if((strlen(trim($a))>0)&&(strlen(trim($b))>0)){
echo"$a"."<br>";
echo"$b";
$sql ="INSERT INTO twogram (w_one,w_two,frequency) VALUES ('$a','$b','1') ON DUPLICATE KEY UPDATE FREQUENCY= FREQUENCY+1 ";
$result = mysql_query($sql);
}
}
|
 |
 |
 |
 |
Date :
2012-01-09 18:15:38 |
By :
jomjam |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|