[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите с круговоротом $a в sql/php
Tuezov
Вот пример того, что нужно

1) Подключился к базе
2) Получил из базы значение в $a
Вывел в $a <input type="text" name="title" value="<? echo $a?>" >
3) Отправил через форму (например POST)
4) Получил пост и сохранил в базу (Например апдейтом).

И после этого, сразу же значение в input стало новым $a - сохраненным в базу.

У меня же сначала подгружается старое $a, а после обновления страницы - новое $a.

Приведите пожалуйста рабочий пример этой взаимосвязи!!!!





Спустя 5 минут, 55 секунд (18.12.2010 - 17:38) Lenarfate написал(а):
сколько заплатишь?)

Спустя 11 минут, 29 секунд (18.12.2010 - 17:49) Tuezov написал(а):
А тут платные ответы?)

Спустя 1 минута, 31 секунда (18.12.2010 - 17:51) Lenarfate написал(а):
ну ты же свой код не показал, свои мысли не выложил, свои идеи. а просто сказал, покажите, как надо. помогают здесь бесплатно, а делают за тебя - за деньги

Спустя 14 минут (18.12.2010 - 18:05) Tuezov написал(а):
$DataBase = mysqli_connect("localhost", "test", "test", "test");
$Select = "SELECT a FROM pages;
$result=mysqli_query($DataBase,$Select);
if (
$result)
{

$rows = mysqli_num_rows($result);
for (
$i=0; $i<$rows; $i++)
{

$res=mysqli_fetch_assoc($result);
$a = $res["a"];

}
mysqli_free_result(
$result);

<html>
<body>
<form method="
post" name="editform">
<input type="
text" name="text1" value="<? echo $a ?>" size="60" >
</form>
</body>

$a = $_POST['text1'];
$Update = "UPDATE `pages` SET `a` = '".$a."' WHERE `pages;
$result=mysqli_query($DataBase,$Update);

Спустя 19 минут, 1 секунда (18.12.2010 - 18:24) sergeiss написал(а):
Очень просто smile.gif

СНАЧАЛА сделай апдейт БД, при условии, что было что-то передано. А потом "тупо" считай новые данные. И будет тебе счастье....

Спустя 7 минут, 15 секунд (18.12.2010 - 18:31) Tuezov написал(а):
sergeiss я в тупике от твоего ответа? Что значит сначала сделай апдейт? Порядок простой
База = > Input => Post = > База. Где сначала сделать апдейт?

Спустя 1 минута, 34 секунды (18.12.2010 - 18:33) Tuezov написал(а):
Я мб чего то не понял. Можно кусок в коде?

Спустя 7 минут, 10 секунд (18.12.2010 - 18:40) sergeiss написал(а):
Объясняю.
Вот твой код (кстати, пользуйся подсветкой код - кнопки чуть выше окна ввода), я ничего не менял, только расставил каменты

// подключение к БД
$DataBase = mysqli_connect("localhost", "test", "test", "test");

// выбор данных
$Select = "SELECT a FROM pages;
$result=mysqli_query($DataBase,$Select);
if (
$result)
{

$rows = mysqli_num_rows($result);
for (
$i=0; $i<$rows; $i++)
{

$res=mysqli_fetch_assoc($result);
$a = $res["a"];

}
mysqli_free_result(
$result);
// далее идет форма ввода


<html>
<body>
<form
method="post" name="editform">
<input
type="text" name="text1" value="<? echo $a ?>" size="60" >
</form>
</body>


// и завершает всё адейт
$a = $_POST['text1'];
$Update = "UPDATE `pages` SET `a` = '".$a."' WHERE `pages;
$result=mysqli_query($DataBase,$Update);

Поменяй порядок блоков:
подключение к БД - апдейт - чтение - форма ввода.

И еще не понятно, что за данные ты читаешь? Чтение идет в цикле, но заносишь ты их в одну переменную. В которой будет только последнее прочтенное значение.

Плюс к этому, почитай о выборке тут http://phpforum.ru/index.php?showtopic=21916.
И твою тему я переношу в другой раздел, более подходящий.

Спустя 6 минут, 18 секунд (18.12.2010 - 18:46) Tuezov написал(а):
Уважаемый sergeiss дело в том, что апдейт происходит тех значений, которые ввел пользователь. Изначально они грузятся из базы.
Т.е если я поменяю местами блоки, то мне кажется записи просто не будет.

Спустя 35 минут, 46 секунд (18.12.2010 - 19:22) sergeiss написал(а):
Блин... Горелый....

При первом запуске скрипта у тебя всё равно нету никакого апдейта! Потому что юзер ничего не мог еще выбрать. Затем он что-то выбрал, жмякнул по кнопке - данные ушли к скрипту обработки.
Вот тут ты их получаешь, апдейтишь, затем читаешь и показываешь новые данные.

Если ты считаешь, что как-то по-другому можно, то напиши свой алгоритм smile.gif Можно для начала просто словами.

Спустя 12 минут, 33 секунды (18.12.2010 - 19:35) Tuezov написал(а):
Спасибо sergeiss! Попробую так)

Спустя 1 час, 25 минут, 7 секунд (18.12.2010 - 21:00) Tuezov написал(а):
Перестал писать в базу(((

Спустя 54 секунды (18.12.2010 - 21:01) Tuezov написал(а):
Могу в пм полный код кинуть, что написал

Спустя 13 минут, 34 секунды (18.12.2010 - 21:14) Tuezov написал(а):
Извеняюсь. В базу писать начал, но ничего не изменилось


_____________
Туезов А.В
Быстрый ответ:

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