ช่วยดู code delete line ให้ผมหน่อยคับ
ผมได้ทำระบบเก็บข้อความแบบ txt
แสดงเป็น line 01234
ผมได้ส่งค่า <input type=checkbox name='a[]' value='$line_num'>
//ส่วนรับค่า
$arr=count($a);
for($n=0;$n< $arr;$n++){
echo "$a[$n]"; // ผมต้องการ ดึงค่า $line_num ตรงนี้ เช่นผมต้องการเลือก checkboxเพื่อลบทีละหลาย line
แต่ผมไม่ทราบว่าต้องแทรก $lineNum ที่เป็น array เพื่อที่จะ delete line ยังไง
//code delete line
$fileName = "c.txt";
$lineNum = $a;
$arr = file($fileName);
$lineToDelete = $lineNum;
unset($arr["$lineToDelete"]);
if (!$fp = fopen($fileName, 'w+'))
{
print "Cannot open file ($fileName)";
exit;
}
if($fp) {
foreach($arr as $line) { fwrite($fp,$line); }
fclose($fp);
}
echo "done";
$del = 10; // สมมุติว่าลบบรรทัดที่ 10
$datas = array(); // แอเรย์เก็บข้อมูลที่ไม่ได้ถูกลบ
$fr = file('data.dat');
for($i = 0 ; $i < count($fr) ; $i++){
if($del != $i){
// ไม่ใช่บรรทัดที่ต้องการลบ
$datas[] = $fr[$i];
}
}
// บันทึกข้อมูลที่ยังเหลือ
$f = fopen('data.dat', 'w');
fwrite($f, implode("\n", $datas));
fclose($f);
?>
For ($i=0; $i<Count($a); $i++){
$del = $a[$i] ;// สมมุติว่าลบหลายบรรทัด 1234
ปัญหาของผมก็คือ ส่งค่ามาหลายแต่มันลบแค่บรรทัดเดียว