Иван._.ЙокоЙоко
6.02.2009 - 21:57
Всем привет !
В общем имею форму
(mysql_form.php) ,
обработчик (mysql_.php) , ну и саму страницу на которую выводятся данные
(mysql.php).
Почему-то скрипт выводит текст тока из 3 поля формы , а остальные поля не остаются заполненными в чём беда

?
(mysql_form.php)PHP |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> <title>Добавление через форму</title> </head>
<body>
<form action="mysql_.php" method="post" name="form"> <p>Введите имя</p> <input name="name" type="text" size="20" maxlength="40"> <p>Введите фамилию</p> <input name="lastname" type="text" size="20" maxlength="40"> <p>Должность :</p> <input name="dol" type="text" size="20" maxlength="40"> <br> <input name="submit" type="submit" value="Занести нового сотрудника в базу"> </form> </body> </html> |
обработчик (mysql_.php)
PHP |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" /> <title>Соеденение с бд</title> </head>
<body> <?php
if (isset($_POST['name'])) { $name = $_POST['name']; }
if (isset($_POST['lastname'])) { $name = $_POST['lastname']; }
if (isset($_POST['dol'])) { $name = $_POST['dol']; }
$db = mysql_connect ("localhost","user","pass");/*Соденяемся с бд*/ mysql_select_db("firstbd",$db);/*Выбираем бд с которй будем работать*/
$result = mysql_query ("INSERT INTO firma (name,lastname,dol) VALUES ('$name','$lastname','$dol')");
if ($result == 'true') { echo "good"; } else { echo "bad"; }
|
(mysql.php)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Соеденение с бд</title>
</head>
<body>
PHP |
<?php
$db = mysql_connect ("localhost","user","pass");/*Соденяемся с бд*/ mysql_select_db("firstbd",$db);/*Выбираем бд с которй будем работать*/
$result = mysql_query("SELECT * FROM firma ",$db);/*Запрос к выбору полей из таблицы*/ /* (*)-выбирает все поля */ echo mysql_errno() . ": " . mysql_error(). "\n";
$myrow= mysql_fetch_array($result); /* Вытаскивает первый параметр как массив*/
/*===================Вывод данных из бд в цикле================*/ do { printf ("Сотрудник № - %s<br>%s<br>%s<br>%s<br><br>",$myrow['id'],$myrow['name'],$myrow['lastname'],$myrow['dol']); } while ($myrow= mysql_fetch_array($result)); echo mysql_errno() . ":" . mysql_error(). "\n"; |
[glow=][/glow]
Спустя 7 минут, 37 секунд (6.02.2009 - 21:05) twin написал(а):
У Вас одинаковые имена полей и переменные... Откуда же он узнает, где что написано Вот и берет последнюю. Культурно... Мог бы вообще послать
Спустя 8 минут, 34 секунды (6.02.2009 - 21:13) Иван._.ЙокоЙоко написал(а):
Спасибо , что не послал

.Поменял название полей результат всё тот же
Спустя 7 минут, 51 секунда (6.02.2009 - 21:21) twin написал(а):
Ну а переменные вот тут:
PHP |
if (isset($_POST['name'])) { $name = $_POST['name']; }
if (isset($_POST['lastname'])) { $name = $_POST['lastname']; }
if (isset($_POST['dol'])) { $name = $_POST['dol']; } |
?
Спустя 14 минут, 11 секунд (6.02.2009 - 21:35) Иван._.ЙокоЙоко написал(а):
Я понять не могу при чём тут имена полей формы и имена ячеек таблицы из мускула?
Спустя 7 минут, 25 секунд (6.02.2009 - 21:43) lawbreaker написал(а):
я майскуле не профи. но мне кажетса что ошыбка ТУТ
PHP |
$result = mysql_query ("INSERT INTO firma (name,lastname,dol) VALUES ('$name','$lastname','$dol')"); |
попробуй поменять на ето
PHP |
$result = mysql_query ("INSERT INTO `firma` (`name` , `lastname` , `dol`) VALUES ('".$name."' , '".$lastname."' , '".$dol."')"); |
надеюсь я прав
Спустя 2 минуты, 54 секунды (6.02.2009 - 21:46) twin написал(а):
Цитата |
Я понять не могу при чём тут имена полей формы и имена ячеек таблицы из мускула? |
Так а что понимать, загляните в таблицу и все увидите... Ну как он напишет в поле значение переменной $lastname, если у Вас её и в помине нет...
Спустя 1 минута, 12 секунд (6.02.2009 - 21:47) lawbreaker написал(а):
Спустя 34 секунды (6.02.2009 - 21:47) twin написал(а):
lawbreaker
Молодец, именно так и надо.
В кавычки и конкатенацией. Читать удобно и работает в полтора раза быстрее. Но проблема не в этом.
Спустя 5 минут, 59 секунд (6.02.2009 - 21:53) Иван._.ЙокоЙоко написал(а):
Цитата (lawbreaker @ 6.02.2009 - 18:43) |
я майскуле не профи. но мне кажетса что ошыбка ТУТ
PHP | $result = mysql_query ("INSERT INTO firma (name,lastname,dol) VALUES ('$name','$lastname','$dol')"); |
попробуй поменять на ето
PHP | $result = mysql_query ("INSERT INTO `firma` (`name` , `lastname` , `dol`) VALUES ('".$name."' , '".$lastname."' , '".$dol."')"); |
надеюсь я прав |
последовал твоему совету после чего $result = false, то есть данные не стали вообще выводиться
twin,так в чём проблема? Я чего то не понимаю если можеш будь добр - объясги подробнее
Спустя 8 минут, 14 секунд (6.02.2009 - 22:02) twin написал(а):
PHP |
if (isset($_POST['name'])) { $name = $_POST['name']; }
if (isset($_POST['lastname'])) { $lastname = $_POST['lastname']; }
if (isset($_POST['dol'])) { $dol = $_POST['dol']; } |
Вообще должно работать, как Андрей написал.
Спустя 7 минут, 9 секунд (6.02.2009 - 22:09) Иван._.ЙокоЙоко написал(а):
Цитата (twin @ 6.02.2009 - 18:46) |
Цитата | Я понять не могу при чём тут имена полей формы и имена ячеек таблицы из мускула? |
Так а что понимать, загляните в таблицу и все увидите... Ну как он напишет в поле значение переменной $lastname, если у Вас её и в помине нет... |
Извини пропустил етот пост мимо глаз. Делал как всё как было в видеокурсе ето ошибка автора

.
Цитата |
PHP | PHP if (isset($_POST['name'])) { $name = $_POST['name']; }
if (isset($_POST['lastname'])) { $lastname = $_POST['lastname']; }
if (isset($_POST['dol'])) { $dol = $_POST['dol']; } |
|
Уже сам догодался.
Всем большое человеческое спасибо.