Strict Standards: Resource ID#18 used as offset, casting to integer (18) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#23 used as offset, casting to integer (23) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#25 used as offset, casting to integer (25) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#26 used as offset, casting to integer (26) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401
ТвойWeb :: Как удалять строки?
ТвойWeb ТвойWeb
Качественный Европейский хостинг
Форум для чайников
 Чат на форуме      Помощь      Поиск      Пользователи


 Страниц (3): [1] 2 3 »   

> Описание: Как удалять строки?
victor
Отправлено: 18 Марта, 2005 - 08:46:45
Post Id



Full Member


Покинул форум
Сообщений всего: 177
Дата рег-ции: Февр. 2005  

Карма 0




Чего тут не хватает
CODE:

<?php
if($del == "del&mail")
{
if ($id == "$del"){
$id--;
$file = file("/usr/www/region45/cms/htdocs/scripts/mail.txt"); //Считываем файл в массив
for($i=0;$i<sizeof($file);$i++){
if($i==$id) unset($file[$i]); //удаляет элемент из массива
}
$fp=fopen("/usr/www/region45/cms/htdocs/scripts/mail.txt","w"); //Открываем наш файл и удаляеем все из него
fputs($fp,implode("$id","$file")); //Переписываем наш файл с новыми данными
fclose($fp); //Закрываем файл
}
}
?>

Почему не хочет выполняться.
Cылка на нее вот такая:
CODE:

http://cms.region45.ru/scripts/deletmail.php?action=del&mail=fonarik@zauralmedia.ru
 
 Top
Ray Wen Администратор
Отправлено: 18 Марта, 2005 - 10:02:19
Post Id



Собиратель шишек...


Покинул форум
Сообщений всего: 2602
Дата рег-ции: Янв. 2005  
Откуда: Волгоград

Карма 21




victor
Я не совсем понял от куда береться переменная $del и не совсем понимаю сравнения $del == "del&mail"... и это только начало, а ведь дальше тоже не все ясно.
 
 Top
TvoyWeb Администратор
Отправлено: 18 Марта, 2005 - 16:39:53
Post Id



Главный здесь


Покинул форум
Сообщений всего: 7072
Дата рег-ции: Нояб. 2003  
Откуда: Tashkent Uz

Карма 52




victor
Извини, но у меня создается впечатление, что ты делаешь все бездумно или не понимая что делаешь.
Почитай о передаче параметров методами POST и GET
Вот твой код который должен работать, если я правильно понял твой пост:
CODE:
УПС ..... СТОП...... ЕСТЬ ОШИБКА......
\n\n(Добавление)
victor
В каком формате записаны данные в файле mail.txt ? Покажи часть текста в этом файле.
 
 Top
ETC Администратор
Отправлено: 19 Марта, 2005 - 02:01:39
Post Id



Flash-coder


Покинул форум
Сообщений всего: 5275
Дата рег-ции: Дек. 2003  
Откуда: TimeZero

Карма 26




Что-то я не понял ничего из этого кода, лучше бы, конечно, mail.txt показать. Я так думаю, что наверняка там всё записано построчно, а это проще.
 
 Top
TvoyWeb Администратор
Отправлено: 19 Марта, 2005 - 03:33:54
Post Id



Главный здесь


Покинул форум
Сообщений всего: 7072
Дата рег-ции: Нояб. 2003  
Откуда: Tashkent Uz

Карма 52




ETC
Да он напутал с параметрами GET.
Я исправил код, но помимо параметров, там еще напутано с чтением и записью в файл.
Поэтому, victor давай-ка покажи как записаны данные в mail.txt .
 
 Top
victor
Отправлено: 21 Марта, 2005 - 02:27:49
Post Id



Full Member


Покинул форум
Сообщений всего: 177
Дата рег-ции: Февр. 2005  

Карма 0




Естественно все записываеться построчно
вот внутренности файла txt
CODE:

fonarik@zauralmedia.ru
sobesednict@list.ru

А где я напутал, я же беру построчно из файла. Сравниваю переменные и переписываю файл с нуля.
А переменную $del я взял для удобства.
 
 Top
TvoyWeb Администратор
Отправлено: 21 Марта, 2005 - 09:35:31
Post Id



Главный здесь


Покинул форум
Сообщений всего: 7072
Дата рег-ции: Нояб. 2003  
Откуда: Tashkent Uz

Карма 52




victor пишет:
А где я напутал, я же беру построчно из файла.

А ты посмотри свой код. Что ты с чем сравниваешь?
Вот держи код который должен у тебя нормально работать
CODE:
if(isset($_GET['action']) && $_GET['action'] == "del"){//если существует в запросе параметр action
//и этот парметр равен del
if (isset($_GET['mail']) && !empty($_GET['mail'])){//Если в запросе существует параметр mail и он не пустой
$delmail = $_GET['mail']."\r\n"; //Строка для поиска в массиве
$file = file("/usr/www/region45/cms/htdocs/scripts/mail.txt"); //Считываем файл в массив
if ($key = array_search($delmail, $file)){//Если в массиве есть элемент равноый строке поиска $delmail
unset($file[$key]);//То удаляем эту строку
$fp=fopen("/usr/www/region45/cms/htdocs/scripts/mail.txt","w"); //Открываем файл для записи
foreach ($file as $mail){
fwrite($fp,$mail); //Переписываем файл с новыми данными
}
fclose($fp); //Закрываем файл
} else {//Если такого адреса нет в базе выведем ошибку.
echo "<span style=\"font: bold 10pt Arial;color:Red;\">Ошибка!<BR>Такого адреса нет в базе.</span>";
}
} else {//Если в строке запроса не введен e-mail выведен соответсвующую оршибку
echo "<span style=\"font: bold 10pt Arial;color:Red;\">Ошибка!<BR>Не указан E-mail</span>";
}
} else {//Если файл был вызван без GET параметров, перенаправим пользователя на главную страницу сайта
Header("Location:index.php");
}
 
 Top
victor
Отправлено: 21 Марта, 2005 - 11:21:48
Post Id



Full Member


Покинул форум
Сообщений всего: 177
Дата рег-ции: Февр. 2005  

Карма 0




Переменная $del&mail содержит строчку об получателе. А у тебя это две переменные.
У меня такой вопрос. Мне код менять:
CODE:

http://cms.region45.ru/scripts/deletmail.php?action=del&mail=fonarik@zauralmedia.ru

fonarik@zauralmedia.ru подставляется автоматически. При помощи переменной $file_array[$i].
Этот код показывает, что адрес удаляется правильный. Адрес получателя.
На самом деле код выглядет так:
CODE:

http://cms.region45.ru/scripts/deletmail.php?action=del&mail=$file_array[$i].

 
 Top
TvoyWeb Администратор
Отправлено: 21 Марта, 2005 - 17:25:23
Post Id



Главный здесь


Покинул форум
Сообщений всего: 7072
Дата рег-ции: Нояб. 2003  
Откуда: Tashkent Uz

Карма 52




victor
Цитата:
Переменная $del&mail

Где в твоем коде такая переменная?
И потом
Выдержка из мануала по PHP
Цитата:
Правильное имя переменной должно начинаться с буквы или символа подчеркивания с последующими в любом количестве буквами, цифрами или символами подчеркивания

Ты же сейчас использовал недопустимый знак ("&"Подмигивание в имени переменной!!!
Это грубейшая ошибка!!!
Я уже неоднократно говорил тебе чтобы ты почитал о передаче данных методом GET и POST.
Вот посмотри, твоя ссылка
CODE:
http://cms.region45.ru/scripts/deletmail.php?action=del&mail=fonarik@zauralmedia.ru

Она состоит из двух частей:
1. URL до исполняемого файла http://cms.region45.ru/scripts/deletmail.php
2. GET запрос ?action=del&mail=fonarik@zauralmedia
В свою очередь GET запрос у тебя состоит из двух элементов данных запроса
? - символ разделения URL и запроса
action=del - первый элемент данных запроса
& - разделитель данных в запросе
mail=fonarik@zauralmedia - второй элемент данных запроса
Так какая же переменная
Цитата:
содержит строчку об получателе

Ссылки на отписку от рассылки? Нет не надо, я же писал под твою ссылку.
Цитата:
У меня такой вопрос. Мне код менять:

 
 Top
victor
Отправлено: 22 Марта, 2005 - 01:16:11
Post Id



Full Member


Покинул форум
Сообщений всего: 177
Дата рег-ции: Февр. 2005  

Карма 0




TvoyWeb тогда скажи чего нехватает твоему файлу, почему он неможет найти строчку.
CODE:

Ошибка!
Такого адреса нет в базе.

И извини, я просто неправильно задал вопрос. Там я хотел спросить нужно ли указывать метод GET.

Теперь вернемся к нашему файлу. Я его проверил при помощи echo
CODE:

Удаляем sobesednict@list.ru // переменная $delmail
В файле: Array // переменная $file
Ошибка!
Такого адреса нет в базе.

К переменной $delmail притензий нет
А переменная $file так должна писаться? Или должна написать содержимое файла.
 
 Top
Страниц (3): [1] 2 3 »
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0, скрытых: 0)
« PHP/Perl »


Все гости форума могут просматривать этот раздел.
Только администраторы и модераторы могут создавать новые темы в этом разделе.
Только администраторы и модераторы могут отвечать на сообщения в этом разделе.
 



Форум на AlfaSpace.NET


Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.0378]     [ Gzipped ]



Notice: ob_end_flush(): failed to send buffer of ob_gzhandler (1) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/page_tail.php on line 33