Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.06.2011, 20:13   #1
ilushka2306
Пользователь
 
Регистрация: 19.06.2010
Сообщений: 48
По умолчанию удаляется последняя запись

Удаляется последняя добавленная запись из таблицы, а не та, около которой нажата кнопка, помогите пожалуйста разобраться, что не так
PHP код:
<title></title>
<?php  
session_start
();
$dblocation "localhost";
$dbname "site";
$dbuser "root";
$dbpass "";

$dbconnect mysql_connect ($ldbocation$dbuser$dbpass);
mysql_select_db ($dbname,$dbconnect);

if (!
$dbconnect)
{
    echo (
"ERROR! CAN NOT CONNECT DB");
    exit();
}

if (isset(
$_POST['del']))
{
    
$res=mysql_query("SELECT * FROM quote ORDER BY quote_id DESC LIMIT 30"); 
    
$row=mysql_fetch_array($res);
    
$del $row['quote_id'];
    
mysql_query("DELETE FROM quote WHERE quote_id = $del");
  
header('Location: /admin/quote.php');
}
?> 
тут css и всякое разное
  <?php
  
if ($_SESSION['login']=='user')
        {
          if (
$_POST['add']) 
              {
                  
$text $_POST['text'];
                  
$sql mysql_query("INSERT INTO quote (quote_text) VALUES('$text')");
                
                  if (
$sql
                { 
                    
?>
            <table align="center" border="1px" bordercolor="#000000">
         <tr>
          <td width="60px" align="center">
              Номер
         </td>
         <td width="540px" align="center">
              Цитата
          </td>
        <td>
        </td>
      </tr>
   <?php
                     $res
=mysql_query("SELECT * FROM quote ORDER BY quote_id DESC LIMIT 30"); 
                while(
$row=mysql_fetch_array($res)){ 
                
?>

      <tr >
          <td width="60px" align="center">
        <center>
  <?php
  
echo $row['quote_id']; 
  
?>
  </center>
          </td>
          <td  width="540px">
      <?
  
echo $row['quote_text'];
  
?>
          </td>
        <td width="45px">
        <form action="quote.php" name="delete" method="post">
        <input type="submit" name="del" value="Удалить"> 
        </form>
        </td>       
      </tr>
        <?php
        
}
        
?>
  </table>        
                    <?
                    
echo('<p>Запись добавлена.</p>');
               } 
                else
                {
                     echo(
'<p>Ошибка при добавлении записи в БД.</p>');
                }
            }
        else
            {
?>
   <table align="center" border="1px" bordercolor="#000000">
         <tr>
          <td width="60px" align="center">
              Номер
         </td>
         <td width="540px" align="center">
              Цитата
          </td>
        <td>
        </td>
      </tr>
   <?php
                     $res
=mysql_query("SELECT * FROM quote ORDER BY quote_id DESC LIMIT 30"); 
                while(
$row=mysql_fetch_array($res)){ 
                
?>

      <tr >
          <td width="60px" align="center">
        <center>
  <?php
    

  
echo $row['quote_id']; 
  
?>
  </center>
          </td>
          <td  width="540px">
      <?
  
echo $row['quote_text'];
  
  
?>
          </td>
        <td width="45px">
        <form action="quote.php" name="delete" method="post">
        <input type="submit" name="del" value="Удалить"> 
        </form>
        </td>  
      </tr>
        <?php
        
}
        
?>
  </table>
<?

        
}
    
?>
    <form action="quote.php" method="post">
    <center><br>
    <textarea name="text" cols="70">
    </textarea>
      <br>
    <input type="submit" name="add" value="Добавить">
    <input type="reset" value="Очистить">
    </center>
    </form>    
        <?
        
}
    else
    {

    
?>
        <H1> Эта страница не для Вас! </H1>
    <?php
        
}
    
?>

Последний раз редактировалось ilushka2306; 05.06.2011 в 20:50.
ilushka2306 вне форума Ответить с цитированием
Старый 05.06.2011, 20:37   #2
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

А где здесь вообще запрос на удаление?
motorway вне форума Ответить с цитированием
Старый 05.06.2011, 20:49   #3
ilushka2306
Пользователь
 
Регистрация: 19.06.2010
Сообщений: 48
По умолчанию

Цитата:
Сообщение от motorway Посмотреть сообщение
А где здесь вообще запрос на удаление?
ssory, забыл вставить... он вверху был...
ilushka2306 вне форума Ответить с цитированием
Старый 05.06.2011, 21:15   #4
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Запись удаляется в соотв-ии с запросом, а где здесь нужная кнопка и вводимое число для удаления, которое требуется?
motorway вне форума Ответить с цитированием
Старый 05.06.2011, 21:17   #5
ilushka2306
Пользователь
 
Регистрация: 19.06.2010
Сообщений: 48
По умолчанию

Цитата:
Сообщение от motorway Посмотреть сообщение
Запись удаляется в соотв-ии с запросом, а где здесь нужная кнопка и вводимое число для удаления, которое требуется?
if (isset($_POST['del']))
{
$res=mysql_query("SELECT * FROM quote ORDER BY quote_id DESC LIMIT 30");
$row=mysql_fetch_array($res);
$del = $row['quote_id'];
mysql_query("DELETE FROM quote WHERE quote_id = $del");
header('Location: /admin/quote.php');
}
ilushka2306 вне форума Ответить с цитированием
Старый 05.06.2011, 21:28   #6
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,158
По умолчанию

полная чушь.... $_POST['del'] нигде не используется же
может так $del = intval($_POST['del']); без всяких лишних запросов?
ADSoft вне форума Ответить с цитированием
Старый 05.06.2011, 21:29   #7
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,158
По умолчанию

полная чушь.... $_POST['del'] нигде не используется же
может так $del = intval($_POST['del']); без всяких лишних запросов?
ADSoft вне форума Ответить с цитированием
Старый 05.06.2011, 21:42   #8
ilushka2306
Пользователь
 
Регистрация: 19.06.2010
Сообщений: 48
По умолчанию

Цитата:
Сообщение от ADSoft Посмотреть сообщение
полная чушь.... $_POST['del'] нигде не используется же
может так $del = intval($_POST['del']); без всяких лишних запросов?
не, так вообще ни чего не происходит(
ilushka2306 вне форума Ответить с цитированием
Старый 05.06.2011, 22:17   #9
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Вы хотите, чтобы удалялась запись, выбранная пользователем. А где, собственно, ее выбор происходит?
motorway вне форума Ответить с цитированием
Старый 05.06.2011, 22:38   #10
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,158
По умолчанию

чтобы что то происходило - надо передать через форму номер удаляемого элемента
ADSoft вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не удаляется запись. Firebird + Interbase artemavd Общие вопросы Delphi 2 08.05.2011 14:30
последняя запись в столбце ALEKS2008 Microsoft Office Excel 3 18.06.2010 13:29
Последняя запись из DBGrid в отчёт Raccoon Помощь студентам 2 25.05.2008 13:59
Не удаляется папка. Kashp Операционные системы общие вопросы 9 31.01.2008 10:49