![huh.gif](http://phpforum.ru/html/emoticons/huh.gif)
вот мой код файла с формой:
<?php include("blocks/db.php");?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Удаление услуг</title>
<link href="style.css" rel="stylesheet" type="text/css">
</head>
<body>
<h1>Удаление услуг</h1><br>
<form action="drop_service.php" method="post">
<?php
$result = mysql_query("SELECT title,id FROM service");
$myrow = mysql_fetch_array($result);
do{
printf("<p><input name='id' type='radio' values='%s'><label>%s</label></p>",$myrow["id"],$myrow["title"]);
}
while($myrow = mysql_fetch_array($result));
?>
<input name="submit" type="submit" value="Удалить">
</form>
</body>
</html>
это код обработчика:
<?php
include("blocks/db.php");
if(isset($_POST['id'])){$id = $_POST['id'];}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Обработчик</title>
<link href="style.css" rel="stylesheet" type="text/css">
</head>
<body>
<?php
if(isset($id))
{
$resul = mysql_query("DELETE FROM service WHERE id='$id'");
if($resul == 'true'){echo"<p>Информация удалена успешно!</p>";}
else{echo"<p>Информация НЕ удалена!</p>";}
}
else
{
echo"<p>Введена не вся информация об услуге</p>";
}
?>
</body>
</html>
Спустя 16 минут, 45 секунд (1.06.2010 - 11:49) Basili4 написал(а):
mysql_query("DELETE FROM service WHERE id='$id'"); - $id -если он индификатор то юолжен быть без кавчек
Спустя 5 минут, 23 секунды (1.06.2010 - 11:55) Gabriel написал(а):
Basili4
а ежели так?
а ежели так?
mysql_query("DELETE FROM service WHERE id='".intval( $id )."'") or die( mysql_error() );
Спустя 7 минут, 44 секунды (1.06.2010 - 12:02) DenisovVSh написал(а):
ничего из предложеного не помогло
Спустя 5 минут, 44 секунды (1.06.2010 - 12:08) DenisovVSh написал(а):
может кто нить подскажет - почему удаление может не работать и почему в моем варианте выдает - " Информация удалена успешно! " ???? А удаления не происходит.
Зарание огромное СПОСИБО.
Зарание огромное СПОСИБО.
Спустя 17 секунд (1.06.2010 - 12:08) Gabriel написал(а):
echo "DELETE FROM service WHERE id='".intval( $id )."'";
выведи на экран запрос посмотри что приходит в id
Спустя 7 минут, 29 секунд (1.06.2010 - 12:16) DenisovVSh написал(а):
Ничего не выводит, но если в проводник после ..../drop_service.php вручную добавить ?id=10
то тогда удаление происходит
то тогда удаление происходит
Спустя 9 минут, 14 секунд (1.06.2010 - 12:25) Gabriel написал(а):
1. замени это
2. это
3. это
а также почитай http://phpforum.ru/index.php?showtopic=21916
if(isset($id))на
if( isset( $id ) && isset( $_POST['submit'] ) )
2. это
if($resul == 'true')на
if($resul == true )
3. это
if(isset($_POST['id'])){$id = $_POST['id'];}на
$id = isset( $_POST['id'] ) ? $_POST['id'] : NULL;
а также почитай http://phpforum.ru/index.php?showtopic=21916
Спустя 21 минута, 48 секунд (1.06.2010 - 12:47) DenisovVSh написал(а):
все заменил, теперь пишет " Информация НЕ удалена ". А почему у Е. Попова все работает??
Спустя 6 минут, 57 секунд (1.06.2010 - 12:54) Bezdna написал(а):
Цитата (DenisovVSh @ 1.06.2010 - 12:47) |
А почему у Е. Попова все работает?? |
Потому что ты невнимательно прочитал (?) вышеприведённую тему - http://phpforum.ru/index.php?showtopic=21916
Спустя 9 минут, 51 секунда (1.06.2010 - 13:04) DenisovVSh написал(а):
теперь код обработчика выглядит вот так:
пишет что "информация удалена", но не удаляется
<?php
include("blocks/db.php");
$id = isset( $_POST['id'] ) ? $_POST['id'] : NULL;
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Обработчик</title>
<link href="style.css" rel="stylesheet" type="text/css">
</head>
<body>
<?php
if( isset($id) && isset($_POST['submit']))
{
$resul = mysql_query("DELETE FROM service WHERE id='".intval( $id )."'") or die( mysql_error() );
if($resul == true ){echo"<p>Информация удалена успешно!</p>";}
else{echo"<p>Информация НЕ удалена!</p> $resul";}
}
else
{
echo"<p>Введена не вся информация об услуге</p>";
}
?>
</body>
</html>
![sad.gif](http://phpforum.ru/html/emoticons/sad.gif)
Спустя 35 минут, 54 секунды (1.06.2010 - 13:40) Gabriel написал(а):
<?php
if ( isset($id) && isset($_POST['submit'])) {
var_dump( $id );
$resul = mysql_query("DELETE FROM service WHERE id='".intval( $id )."'") or die( mysql_error() );
if ($resul == true ){
echo"<p>Информация удалена успешно!</p>";
} else {
echo "<p>Информация НЕ удалена!</p>";
}
echo "DELETE FROM service WHERE id='".intval( $id )."'";
} else {
echo"<p>Введена не вся информация об услуге</p>";
}
?>
та всеже какое значение попадает в переменную id?
Спустя 12 минут, 56 секунд (1.06.2010 - 13:53) DenisovVSh написал(а):
заменил в обработчике свой код на укзанный выше - теперь выдает :
string(2) "on"
Информация удалена успешно!
DELETE FROM service WHERE id='0'
а текущий существующий id='11', он единственный
string(2) "on"
Информация удалена успешно!
DELETE FROM service WHERE id='0'
а текущий существующий id='11', он единственный
Спустя 1 час, 47 минут, 3 секунды (1.06.2010 - 15:40) agentor написал(а):
у вас форма не верно отсылает данные в $_POST массив...
а точнее это
а нужно
не values а value
а точнее это
printf("<p><input name='id' type='radio' values='%s'>
а нужно
printf("<p><input name='id' type='radio' value='%s'>
не values а value
Спустя 1 час, 17 минут, 55 секунд (1.06.2010 - 16:58) DenisovVSh написал(а):
Всем кто мне ответил, Большое Спосибо, agentor тебе респектище за внимательность
Тема закрыта.
![biggrin.gif](http://phpforum.ru/html/emoticons/biggrin.gif)
Тема закрыта.