Jump to content
  • 0

обновление данных в бд


necro
 Share

Question

Выдает данные обновлены успешно, но передает пустое значение, в чем косяк?

<? session_start();
$id=$_SESSION['id'];
include ('connect.php');
$reg=false;
if(!empty($try)){
$naimenovanie =($_POST['naimenovanie']);
}
if(isset($_POST['go']))
{
$reg=true;
}
if ($reg)
{
$sql = "UPDATE user set naimenovanie='$naimenovanie' where id=".$id."";
$res = mysql_query($sql);
if ($res == 'true')
{
echo "<h3>Данные успешно обновлены</h3>";
}
else
{
echo "<h3>Ошибка при добавлении в базу данных</h3>";
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Редактировать данные</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title></title>
<meta name="keywords" content="" />
<meta name="description" content="" />
<link rel="stylesheet" href="styles/registration.css" type="text/css" media="screen, projection" />
<head>
<body>
<div class="pages">
<?
$result=mysql_query("SELECT * FROM user WHERE id='".$id."' and type='user'");
if($myrow=mysql_fetch_array($result))
{
print('<h3>Пользователь:<br/></h3>');
print ('<form action="edit.php" method="POST"> <input type="hidden" name="try" value="1"/>');
print ('<span class="userinfo">WWW: <input value="'.$myrow['site'].'" ></span>');
if($myrow['naimenovanie']!='')
{
print('<span class="userinfo">Наименование Юр. лица: <input value="'.$myrow['naimenovanie'].'" name="'.$naimenovanie.'"><br /></span>');
}
print ('<input type="submit" name="go" id="button" value="Изменить">');
print ('</form>');
}
?>
</div>
</body>
</html>

Link to comment
Share on other sites

10 answers to this question

Recommended Posts

  • 0

Потому что:


print('<span class="userinfo">Наименование Юр. лица: <input value="'.$myrow['naimenovanie'].'" name="'.$naimenovanie.'"><br /></span>');

Поле с пустым атрибутом name

Как следствие пустота при $naimenovanie =($_POST['naimenovanie']);

и откуда берётся значение $id ?


$sql = "UPDATE user set naimenovanie='$naimenovanie' where id=".$id."";

$id = session_id(); // ?

  • Like 1
Link to comment
Share on other sites

  • 0

Да в регистрации у меня везде круглые и там нормально все передает, не в этом проблема.

а зачем вы их вообще ставите?

Нет, убрал скобки все равно передает пустое значение.

пользуйтесь отладкой и выводите ошибки на экран.

Да, а что в edit.php ?

  • Like 1
Link to comment
Share on other sites

  • 0

$id=$_SESSION['id']; отсюда берется да и опеделяет правильно все, я выводил, показывает правильный ид.

это и есть edit.php пробывал выводить результат запроса выводит единицу(1) просто и все.

Link to comment
Share on other sites

  • 0

$id=$_SESSION['id']; отсюда берется да и опеделяет правильно все, я выводил, показывает правильный ид.

это и есть edit.php пробывал выводить результат запроса выводит единицу(1) просто и все.

Я вас что-то не понимаю. Echo $sql; Выводит правильный запрос?

  • Like 1
Link to comment
Share on other sites

  • 0

UPDATE user set naimenovanie='' where id=48

не то выводил, но вот ничего не передает.

нашел косяк, впедь буду руками все писать, а не копировать, немного промахнулся строчкой и вот результат, атрибуту name я присваивал пустую переменную>< сразу не понял что рус имел ввиду, а когда сам допер уже понял. всего то надо было изменить name="naimenovanie". Всем спасибо.

Edited by necro
Link to comment
Share on other sites

  • 0

ошибки детские вообще-то:


<?
session_start();
$id = $_SESSION['id'];
//include ('connect.php');
//$reg=false;
//if(!empty($_POST['try'])) {
$try = $_POST['try'];
$naimenovanie = $_POST['naimenovanie'];
$url = $_POST['url'];
if(isset($_POST['go'])) {
echo $naimenovanie.'<br>';
echo $url.'<br>';
echo $try.'<br>';
echo $id;
}
//}
/*
if(isset($_POST['go'])) {
$reg=true;
}
if ($reg) {
$sql = "UPDATE user set naimenovanie='$naimenovanie' where id=".$id."";
$res = mysql_query($sql);
if ($res == 'true') {
echo "<h3>Данные успешно обновлены</h3>";
} else {
echo "<h3>Ошибка при добавлении в базу данных</h3>";
}
}
*/
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Редактировать данные</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title></title>
<meta name="keywords" content="" />
<meta name="description" content="" />
<link rel="stylesheet" href="styles/registration.css" type="text/css" media="screen, projection" />
<head>
<body>
<div class="pages">
<?
//$result=mysql_query("SELECT * FROM user WHERE id='".$id."' and type='user'");
//if($myrow=mysql_fetch_array($result))
//{
print('<h3>Пользователь:<br/></h3>');
print ('<form action="" method="POST"> <input type="hidden" name="try" value="1"/>');
print ('<span class="userinfo">WWW: <input value="" name="url"></span>');
//if($myrow['naimenovanie']!='')
//{
print('<span class="userinfo">Наименование Юр. лица: <input value="" name="naimenovanie"><br /></span>');
//}
print ('<input type="submit" name="go" id="button" value="Изменить">');
print ('</form>');
//}
?>
</div>
</body>
</html>

а еще, непонятно что находится в $_SESSION['id'].

часть кода закомментил потому как не знаю что у тебя там в бд...

  • Like 1
Link to comment
Share on other sites

  • 0

UPDATE user set naimenovanie='' where id=48

не то выводил, но вот ничего не передает.

нашел косяк, впедь буду руками все писать, а не копировать, немного промахнулся строчкой и вот результат, атрибуту name я присваивал пустую переменную>< сразу не понял что рус имел ввиду, а когда сам допер уже понял. Всем спасибо.

В #4 в первой части я вам об этом писал, проверяйте правильность формирования формы.

P.S. Собсна Rus вам нужную часть изменил чтоб работало.

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy