|
|
|
|
|
для: Alex_Sidneff
(28.09.2006 в 22:48)
| | <?
$url="data/chat_d.php";
if (!empty($_GET['name']))
{
//$name2del = preg_replace("#[^\w ]#", "", $_GET['name']);
$name2del = $_GET['name'];
$file = file($url);
foreach ($file as $key => $str)
{
@list(,$name) = explode('|', $str);
if ($name == $name2del)
unset($file[$key]);
}
$fd = fopen($url, "w");
if($fd)
{
fwrite($fd,implode("",$file));
fclose($fd);
}
}
if (filesize($url) > 0)
{
$data_massiv=file($url);
sort($data_massiv);
for($i=0;$i<sizeof($data_massiv);$i++)
{
if(substr($data_massiv[$i], 0, 1)=="#")
{
$temp=explode("|",$data_massiv[$i]);
if(trim($temp[3])=="guest")
{
$temp[3]="<font color=#17A818><b>Гость</b></font>";
}
if(trim($temp[3])=="master")
{
$temp[3]="<font color=#CF0F18><b>Админ</b></font>";
}
echo "<font size=3 color=#336699><b><a href=infa.php?name=$temp[1]>"
.$temp[1]."</a></b></font> имеет статус ".$temp[3].
"<input type=button onClick=document.location.href='"
.$_SERVER['PHP_SELF']."?name=$temp[1]' value='Убить $temp[1]'><br>";
}
}
}
?>
//Убить
<?php
foreach ( glob ( "data/user/$name*.*" ) as $filename )
{
$files=filesize($filename);
$filed=date ( "d-m-Y H:i:s" , filemtime ( $filename ));
echo ".$filename.";
echo " <form enctype='multipart/form-data' action='delet.php' method='post'>
<input type='hidden' name='filename' value='$filename'>
<input name='delpict' type='submit' value='Удалить'>
</form>" ;
}
?>
Вообщем вот! И это надо как то смешать в одно целое!
Здесь он выводит сначало имена которые удаляются, а потом он выводит файлы, у которых стоит кнопка удалить! и после нажатия на неё, он обращается к следующиму:
<?php
if (isset($delpict) and $delpict=="Удалить") {
echo "Удален файл: ".$filename;
unlink ($filename);
unset($delpict);
exit;
}
?>
Дак может зделать, чтоб он при удалении строки и файла, обращался к другому файлу и прописывал, мол типа Юзер такойто удалён, Фаил такойто удалён!!! | |
|
|
|
|
|
|
|
для: kasmanaft
(28.09.2006 в 22:31)
| | Так точно! Имя определяется Вот в такой строке:
foreach ( glob ( "data/user/$name*.*" ) as $filename )
тоесть имя файла начинается как $name и продолжает его " * " | |
|
|
|
|
|
|
|
для: Alex_Sidneff
(28.09.2006 в 22:13)
| | А чего удалять нужно? В смысле как определять имя файла, которого нужно удалить? Оно как-то привязано к имени пользователя, которого "убиваем" ? | |
|
|
|
|
|
|
|
для: kasmanaft
(28.09.2006 в 22:06)
| | Хм... действительно.... но можно этот фаил и скриптом опять же защитить...
Но дело не в этом...
Я в этом деле совсем новичёк! И я не совсем ещё доконца понимаю в этом! Так сказать учусь сразу на деле! Хотелось бы понять как это прикрепить...
Вот вы поставили кнопку "Убить $name" а как к этой кнопке приделать функцию удаления? Вы можете подсказать? | |
|
|
|
|
|
|
|
для: Alex_Sidneff
(28.09.2006 в 22:01)
| | Тогда в качестве адреса в кнопке следует передать еще и название файла (имя, номер .. или чего там еще)
document.location.href='".$_SERVER['PHP_SELF']."?name=$temp[1]&filename=XXXX'
Потом в скрипте удалять файл $_GET['filename'] (только нужно бы содержимое переменной проверить, чтобы взломщик не мог удалить того, чего не следовало бы, просто подставив туда имя другого файла) | |
|
|
|
|
|
|
|
для: Alex_Sidneff
(28.09.2006 в 22:01)
| | Понимаете, при удалении так сказать юзера, нужно удалить ещё 2 файла... вот например
<?php
foreach ( glob ( "data/user/$name*.*" ) as $filename )
{
$files=filesize($filename);
$filed=date ( "d-m-Y H:i:s" , filemtime ( $filename ));
echo ".$filename.";
echo "<b>Размер в байтах:</b><br>".$files."" ;
echo "" . $filed . "\n" ;
echo "
<form enctype='multipart/form-data' action='delet.php' method='post'>
<input type='hidden' name='filename' value='$filename'>
<input name='delpict' type='submit' value='Удалить'>
</form>
" ;
}
?>
как это можно связать? просто очень хочется.... | |
|
|
|
|
|
|
|
для: kasmanaft
(28.09.2006 в 21:55)
| | Дак а тогда к одной кнопке как то можно приделать? Ведь точно можно!!! | |
|
|
|
|
|
|
|
для: Alex_Sidneff
(28.09.2006 в 21:18)
| | Такую громоздкую функцию использовать не зачем, если нужно просто удалить файл (имя которого известно). Для этого можно использовать ф-ю unlink() ... которой в скобках указать имя файла для удаления (в кавычках)
(а для удаления строки из файла ее никак не применить) | |
|
|
|
|
|
|
|
для: kasmanaft
(28.09.2006 в 07:53)
| | А разве нельзя впихнуть в этот скрипт вот эту функцию к примеру(Для удаления не только строки, но и файла)?:
<?php
foreach ( glob ( "data/users/$name*cnf.*" ) as $filename )
{
$files=filesize($filename);
$filed=date ( "d-m-Y H:i:s" , filemtime ( $filename ));
echo ".$filename.";
echo "<br>".$files."<br>" ;
echo "<br>". $filed . "\n" ;
echo "
<form enctype='multipart/form-data' action='delet.php' method='post'>
<input type='hidden' name='filename' value='$filename'>
<input name='delpict' type='submit' value='Удалить'>
</form>
" ;
}
?>
Если это возможно, то как? Я же видел скрипты, которые удаляли не только строчку в файле... | |
|
|
|
|
|
|
|
для: Alex_Sidneff
(28.09.2006 в 02:04)
| | ой, сорри :)) ... в торопях не тот "href" изменил ...
echo "<LI><font size=3 color=#336699><b><a href=infa.php?name=$temp[1]>"
.$temp[1]."</a></b></font> имеет статус ".$temp[3].
" <input type=button onClick=document.location.href='"
.$_SERVER['PHP_SELF']."?name=$temp[1]' value='Убить $temp[1]'></ol>";
|
| |
|
|
|
|