За последние 24 часа нас посетили 18865 программистов и 1632 робота. Сейчас ищут 918 программистов ...

Нажатие кнопки и запрос. Как передать значение$ myrow[3]

Тема в разделе "PHP для новичков", создана пользователем inaymov, 9 янв 2009.

  1. inaymov

    inaymov Активный пользователь

    С нами с:
    9 янв 2009
    Сообщения:
    28
    Симпатии:
    0
    Есть база данных с полями: id, url, zametka.

    Есть форма. Пока с одной кнопкой - "Удалить заметку" (если разберусь с этим вопросом - будет и всё остальное).

    На вебстраничке выводятся все записи из базы данных.
    И для каждой записи выводится кнопка "Удалить".
    Эта кнопка должна вызывать запрос вида DELETE FROM zametki WHERE zametka=$myrow[3];
    Кнопка запускает dele.php.
    (<form action=dele.php method=post>);

    Но вот вопрос - как передать текущее значение $myrow[3];?
    Пытался присвоить $tek=$myrow[3];

    А в файле dele.php записать
    $tek = $_POST['tek'];
    Но не передаётся...

    Как решить данную проблему?
     
  2. free-bits

    free-bits Активный пользователь

    С нами с:
    13 ноя 2008
    Сообщения:
    296
    Симпатии:
    0
    Адрес:
    г. Красноярск
    HTML:
    1.  
    2. <form action="dele.php?tek=<?=$myrow[3];?>" method="post">
    3.  
    Вариант 2
    HTML:
    1.  
    2. <input type="button" onclick="windows.location='dele.php?tek=<?=$myrow[3];?>'">
    3.  
    dele.php
    PHP:
    1.  
    2. <?
    3. $tek = (isset($_GET['tek'])) ? $_GET['tek']) : null;
    4.  
     
  3. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Передавайте id заметки:
    echo '<input type="checkbox" value="'.$myrow[0].'" name="del_zam"> Удалить<br>'.$myrow[2];

    А потом по принятому id удаляйте:
    'DELETE FROM zametki WHERE zametka='.(int)$_POST["del_zam"];
     
  4. EvelRus

    EvelRus Активный пользователь

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    Код (Text):
    1. 'DELETE FROM zametki WHERE zametka='.intval($_POST["del_zam"]);
    кусаться буду :)))
     
  5. Myskyl

    Myskyl Активный пользователь

    С нами с:
    9 янв 2009
    Сообщения:
    10
    Симпатии:
    0
    Попов чтоли?
     
  6. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Nemo
    Одно и тоже :)
     
  7. inaymov

    inaymov Активный пользователь

    С нами с:
    9 янв 2009
    Сообщения:
    28
    Симпатии:
    0
    free-bits и Kreker
    Большое спасибо! Разобрался! :)
     
  8. EvelRus

    EvelRus Активный пользователь

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    Kreker, не спорю, но мое правильнее с тз php ))) у тебя С )))
     
  9. Frozen

    Frozen Активный пользователь

    С нами с:
    20 окт 2008
    Сообщения:
    540
    Симпатии:
    0
    Адрес:
    Москва
    мб наоборот?
     
  10. Luge

    Luge Старожил

    С нами с:
    2 фев 2007
    Сообщения:
    4.680
    Симпатии:
    1
    Адрес:
    Минск
    а давайте ещё добавим проверку на ctype_digit и тогда посмотрим как правильнее с точки зрения пользователя, а не программера
     
  11. inaymov

    inaymov Активный пользователь

    С нами с:
    9 янв 2009
    Сообщения:
    28
    Симпатии:
    0
    Про ctype_digit - спасибо.
    В этой задаче правда мне не понадобилось, а вот при использовании метода get при написании модуля статей - понадобилось. Только возник вопрос, как же проверить тип переменной при данном запросе. Прочитал эту тему - сразу и ответ вижу).
    А то введут еще чего-нибудь типа: http://mysait.ru/page?n=<b>Проверка</b>
    или еще чего пострашнее).
     
  12. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    данные GET/POST ВСЕГДА обрабатываются так, что ожидаемое поступление может быть любым, т.е. ты должен ждать что прийти может все, что угодно, а не то, что ты думаешь.

    отсюда и плясать.