Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> удаление конкретных постов через страничку 
V
    Опции темы
web
Дата 7.2.2006, 12:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 7.2.2006

Репутация: нет
Всего: нет



Значит, всем привет...

т.к. как я новичек, да еще вообще мало что по PHP знаю? понадобится ваша помощь..
попробую описать задачку

у меня есть система комментариев. Она хранится в базе MySQL.
Мне нужно вывести на php страничку список комментариев, последних 15 по времени, и иметь возможность удалять конкретный комментарий.

немного помучавшись сделал такой вот файл..


Код

<?
    $usr = "username";
    $pwd = "password";
    $db = "database";
    $host = "localhost";

    $cid = mysql_connect($host,$usr,$pwd);
    if (!$cid) { echo("ERROR: " . mysql_error() . "\n");    }

    if ($task=="del") {

        $SQL = " DELETE FROM `comments` ";
    $SQL = $SQL . " WHERE `commentid` = $id ";
        mysql_db_query($db, $SQL, $cid);

    }   
?>
<HTML>
<HEAD>
  <TITLE>Manage Links</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF" >
<H1>Edit Links</H1>
<?

    $SQL = " SELECT * FROM comments ORDER BY `comments`.`date` DESC limit 15";
    $retid = mysql_db_query($db, $SQL, $cid);
    if (!$retid) { echo( mysql_error()); }
    else {
        echo ("<P><TABLE CELLPADDING=4>\n");
        while ($row = mysql_fetch_array($retid)) {
            $sitename = $row["comment"];
            $id = $row["commentid"];

            echo ("<TR>");
            echo ("<TD>$sitename</TD>\n");
            echo ("<TD><A HREF=\"manage.php?id=$id&task=del\">Delete</A></TD>");
            echo ("</TR>");
        }
        echo ("</TABLE>");
    }
?>

</BODY>
</HTML>






в базе есть 1 таблица - comments

В таблице имеются след. записи
commentid
tutorialid
name
url
email
comment
date


данный скрипт выводит все на страничку как полагается, в конце появляется линк delete, правильно выбирает id, но не удаляет комментарий.

Помогите с этим...



PM MAIL   Вверх
IvanB
Дата 7.2.2006, 12:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 155
Регистрация: 23.5.2005
Где: Irkutsk

Репутация: 2
Всего: 5



Для начала я бы советовал почитать внимательно вот эту статью: http://forum.vingrad.ru/index.php?act=modu...mp;article=2846

А если лень разбираться, то:
Цитата

Код

if ($task=="del") {
 $SQL = " DELETE FROM `comments` ";
 $SQL = $SQL . " WHERE `commentid` = $id ";
 mysql_db_query($db, $SQL, $cid);
}
 

на
Код

if (isset($_GET['task'], $_GET['id']))
{
 $id=$_GET['id'];
 $task=$_GET['task'];
 // Далее твой код
}



Это сообщение отредактировал(а) IvanB - 7.2.2006, 12:56
--------------------
Закон отладки: Каждая последняя ошибка является предпоследней.
PM MAIL ICQ   Вверх
web
Дата 7.2.2006, 12:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 7.2.2006

Репутация: нет
Всего: нет



выдает ошибку в строке 6 твоего кода.
PM MAIL   Вверх
IvanB
Дата 7.2.2006, 12:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 155
Регистрация: 23.5.2005
Где: Irkutsk

Репутация: 2
Всего: 5



А ты ; в 4-ой строке моего кода поставь. smile
--------------------
Закон отладки: Каждая последняя ошибка является предпоследней.
PM MAIL ICQ   Вверх
web
Дата 7.2.2006, 13:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 7.2.2006

Репутация: нет
Всего: нет



ошибку не выдает но не удаляет
PM MAIL   Вверх
Mal Hack
Дата 7.2.2006, 13:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



1. Юзаем mysql_query.
2. Выводим mysql_error и смотрим ошибку.
PM ICQ   Вверх
web
Дата 7.2.2006, 13:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 7.2.2006

Репутация: нет
Всего: нет



А это как?

извини, но я полный профан в этом деле
PM MAIL   Вверх
Mal Hack
Дата 7.2.2006, 13:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Цитата(web @ 7.2.2006, 13:48 Найти цитируемый пост)

А это как?

"Что" как? Не знаем как вывести?
PM ICQ   Вверх
web
Дата 7.2.2006, 14:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 7.2.2006

Репутация: нет
Всего: нет



да
PM MAIL   Вверх
Mal Hack
Дата 7.2.2006, 14:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



print mysql_error

Эти вещи надо в книгах смотреть
PM ICQ   Вверх
web
Дата 7.2.2006, 14:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 7.2.2006

Репутация: нет
Всего: нет



эх, пока я с книгами разберусь...
я же потому сюда зашел ...

if(mysql_error(&mysql)[0] != '\0')
{
// an error occurred
}

в учебнике что-то вроде этого... куда мне ее вставлять .. на страничке же должно выдаваться где ошибка? там ничего нет.. работает также как и без замены кода. не удаляет

Это сообщение отредактировал(а) web - 7.2.2006, 15:06
PM MAIL   Вверх
IvanB
Дата 7.2.2006, 16:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 155
Регистрация: 23.5.2005
Где: Irkutsk

Репутация: 2
Всего: 5



Ты хоть разобрался, что тебе написали? И статью прочитал?
Код

if (isset($_GET['task'], $_GET['id']))
{
 $id=$_GET['id'];
 $task=$_GET['task'];
 $SQL ="DELETE FROM comments WHERE commentid = ".$id;
 mysql_db_query($db, $SQL, $cid) or die(mysql_error());
}

--------------------
Закон отладки: Каждая последняя ошибка является предпоследней.
PM MAIL ICQ   Вверх
web
Дата 7.2.2006, 16:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 7.2.2006

Репутация: нет
Всего: нет



мне сказали заменить часть кода частью кода и я заменил. не моя же вина что часть кода неправильно была указана. и прочитать то я прочел да ничего не понял.

спасибо. работает. тему закрываем. СПАСИБО.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0546 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.