не получается передать переменную через форму

Brajt

Новичок
подскажите, что не так. вот код:
PHP:
<?php 
if (isset($_GET['id'])) 
{ 
  $id = $_GET['id']; 
} 

echo '<form action="dobcat.php?" method="post"><input name="banan" type="hidden" value="'.$id.'"/><br/>'; 
echo 'Введите название категории:<br/><input name="name" type="text"/><br/>'; 
echo 'Введите расширения:<br/><input name="ext" type="text"/><br/>'; 
echo '<input type="submit" name="submit" value="Загрузить"/></form>'; 


if (isset($_POST['submit'])) 
{ 
  if (isset($_POST['banan'])) 
  { 
    $banan = $_POST['banan']; 
  } 
  if (isset($_POST['name'])) 
  { 
    $name = $_POST['name']; 
  } 
  if (isset($_POST['ext'])) 
  { 
    $ext = $_POST['ext']; 
  } 
  $db = mysql_connect("localhost", "people", "laco"); 
  mysql_select_db("zaychik",$db); 
  $result = mysql_query("INSERT INTO categories (rid,name,ext) VALUES ('$banan','$name','$ext')"); 
  if ($result == 'true') 
  { 
    echo "Информация в базу добавлена успешно!"; 
  } 
} 
?>
 

Ragazzo

TDD interested
Ты ищешь перепенную которая передается через GET, но форма то POST, сделай тогда уж так form action="dobcat.php?id=
 

SiZE

Новичок
Так то тупо передавать кнопку. :) Лучше
PHP:
if ( sizeof( $_POST ) ) {...}
Далее у тебя не правильно сравнение идет:
PHP:
if ($result == 'true') {...}
здесь у тебя переменная резалт должна быть равна строке 'true'
правильно так:
PHP:
if ( $result === TRUE ) {...}
по мануалу резалт возвращает булевые, не строковые значение
 

Фанат

oncle terrible
Команда форума
SiZE
по мануалу функция возвращает ресурс, а не булево значение
в случае успешного выполнения запроса
 

PHProgress

Новичок
подскажите, что не так. вот код:
PHP:
<?php 
if (isset($_GET['id'])) 
{ 
  $id = $_GET['id']; 
} 

echo '<form action="dobcat.php?" method="post"><input name="banan" type="hidden" value="'.$id.'"/><br/>'; 
echo 'Введите название категории:<br/><input name="name" type="text"/><br/>'; 
echo 'Введите расширения:<br/><input name="ext" type="text"/><br/>'; 
echo '<input type="submit" name="submit" value="Загрузить"/></form>'; 


if (isset($_POST['submit'])) 
{ 
  if (isset($_POST['banan'])) 
  { 
    $banan = $_POST['banan']; 
  } 
  if (isset($_POST['name'])) 
  { 
    $name = $_POST['name']; 
  } 
  if (isset($_POST['ext'])) 
  { 
    $ext = $_POST['ext']; 
  } 
  $db = mysql_connect("localhost", "people", "laco"); 
  mysql_select_db("zaychik",$db); 
  $result = mysql_query("INSERT INTO categories (rid,name,ext) VALUES ('$banan','$name','$ext')"); 
  if ($result == 'true') 
  { 
    echo "Информация в базу добавлена успешно!"; 
  } 
} 
?>

Должно быть так: <form action="dobcat.php?" method="get"> - для переменной $_GET['id']
Должно быть так: <form action="dobcat.php?" method="post"> - для переменной $_POST['id']
 
Сверху