Помогнете ми(по-подходящо заглавие не се сетих :) )

HunteR

Super Moderator
Така следният въпрос
Значи в един файл имам следните записи
123&1233&12344
231&1312&34324
423&4324&42342
...
Така аз искам да се изтрие например целият 2-ри този дето почва 231.
Как ще стане?


Някой ще ми каже ли как става номера не може никой да не знае :?
 

n_alexiev

Registered
Значи и от дата.бг те помня .
Моля те само 1 .
Забрави тези файлове , SQL -а е нещото.
За предимствата няма да говоря щото ще ми се счупи клавиатурата :?:
 

Soul_Stealler

Registered
това е равно на самоубийство :lol:

Имам малка идея, но незнам дали ще стане.

Сложи по едно ID отпред.
Пример:
1&123&1233&12344
2&231&1312&34324
3&423&4324&42342

После вземи всеки ред в array.
Дай му explode и вземи ID-то.

Само че засега съм го направил не да се трие реда, а вместо ID-то да пише del.
Т.е. като вземеш стойностите трябва да сложиш

if($line[0] != "del")
и после кода ти.
Трябва да сложиш и една GET заявка.
Пример:
fail.php?id=5
Ето какво сътворих:

Код:
<?php
$id = $_GET['id'];
if (($id != null) && (is_numeric($id))){
$id--;
$file= file("hunter.txt");
$n= count($file); 
for ($i=0; $i<$n;$i++)
{ 
$line = explode ("&",$file[$i] ); 
   $line_text[] = array (
   "id"  => $line[0],
   "1" => $line[1],
   "2"  => $line[2],
   "3"  => $line[3]
);
}

	for($i = 0; $i < $n; ++$i){
     if ($i != $id){
      if (($line_text[$i][id] != null) && ($line_text[$i][1] != null) && ($line_text[$i][2] != null) && ($line_text[$i][3] != null)){
      $text = $text.$line_text[$i][id]."&".$line_text[$i][1]."&".$line_text[$i][2]."&".$line_text[$i][3];
      }
      } else {
       $text = $text."del&".$line_text[$i][1]."&".$line_text[$i][2]."&".$line_text[$i][3];
      }
	}
$fp = fopen("hunter.txt", "w");
fwrite($fp, $text);
fclose($fp);
}
$file= file("hunter.txt");
$n= count($file); 

for ($i=0; $i<$n;$i++)
{ 
$line = explode ("&",$file[$i] ); 
if($line[0] != "del"){
echo $file[$i]."<br />";
}
}

?>
 

Горе