[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Непонятен механизм выполнения скрипта php
Nailya
Всем привет!

Я написала скрипт по обновлению данных поля name(полю name задан первичный ключ) в БД.

Проблема следующая, не могу понять почему в команде SELECT
переменная $name спокойно читается, а в команде UPDATE - нет

Как видно ниже, у меня две формы: одна для извлечения данных,
другая для обновления данных. Так вот, если я скопирую форму( Имя: <input type="text" name="name" />) и вставлю во вторую форму перед(Другое имя: <input type="text" name="rename" />) , то все начинает работать: и $name читается и UPDATE обновляется.

<?php

require_once 'login2.php';// соединение с MySQL и выбор базы данных

//выводим форму ввода имени

echo <<<_END
<form action="update.php" method="post"><pre>
Имя: <input type="text" name="name" />
<input type="submit" value="OK" /></pre>
</form>

_END;



if(isset($_POST['name']))//если строка name заполнена, тогда выполняем следующий код
{
$name = $_POST['name']; // присваевываем переменной значение поля name
$query = "SELECT name FROM about WHERE name='$name'"; //проверяем в базе данных есть ли такое имя
$results = mysql_query($query); //присваиваем результат запроса переменной
// if(!mysql_query($query)) //проверяем есть ли результат запроса
// die("Вы ввели не верное значение" ); // если нет - ошибка

$rows = mysql_num_rows($results);//подсчет строк
if ($rows!=0)
{
echo mysql_result($results,0,'name');//вывод результата на экран
echo <<<_END
<form action="update.php" method="post"><pre>
Другое имя: <input type="text" name="rename" />
<input name="button" type="submit" value="Изменить" /></pre>
</form>

_END;
}
}


if(isset($_POST['rename']) && isset($_POST['name']))//если результат подтвердился
{
$rename =$_POST['rename'];
// echo $rename;
//проверяем введены ли данные и передаем переменной


$query = "UPDATE about SET name='$rename' WHERE name='$name'";//команда изменения значения
$results = mysql_query($query);//проверка запроса
$query = "SELECT name FROM about WHERE name='$rename'"; //проверяем в базе данных есть ли такое имя
$results = mysql_query($query);
// if(!mysql_query($query)) die("Сбой при доступе к базе данных " . mysql_error());//проверяем есть ли результат запроса
$rows = mysql_num_rows($results); //подсчет строк
if ($rows!=0) echo mysql_result($results,0,'name');//вывод результата на экран
}

?>
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.