Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как отредактировать сразу несколько строк в табли 
:(
    Опции темы
PARROT
Дата 23.8.2006, 15:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2339
Регистрация: 5.1.2005
Где: Спб-ЦарьГрад

Репутация: 3
Всего: 50



Igor_CH, Вы неправильно переписали:
Код

while(list($id_Rx,$val) = each($ar))
{
     mysql_query("UPDATE raspis SET k='$ar[$idx]' WHERE id_R=$id_Rx")or die(mysql_error());
}


Нужно так:
Код

while(list($id_x,$val) = each($ar))
{
     mysql_query("UPDATE raspis SET k='$ar[$idx]' WHERE id_R=$id_Rx")or die(mysql_error());
}



Добавлено @ 15:36 
Мы обновляем запись по ключу массива $ar по условию вашего id_Rx


--------------------
Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим!
PM MAIL   Вверх
PARROT
Дата 23.8.2006, 16:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2339
Регистрация: 5.1.2005
Где: Спб-ЦарьГрад

Репутация: 3
Всего: 50



У вас пустое значение id_R:
Код

UPDATE raspis SET k=5 WHERE id_R=You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

Откуда оно берется? Должно браться?

Добавлено @ 16:11 
Значение приходит правильное для обновления, а вот переменная $id_R пустая

Добавлено @ 16:19 
Все работает:  smile  Вспомнила...
Если мы обновляем ключ значение, то обновляем мы значение по пришедшему ключу, то есть его условию $idx
Код

<?php
Error_Reporting(E_ALL & ~E_NOTICE);
$db_server = "localhost";
$db_name = "test";
$db_username = "test";
$db_password = "123";
function db_connect()
{

    global $db_server;
    global $db_username;
    global $db_password;
    global $db_name;

    $con = mysql_connect($db_server,$db_username,$db_password);
    if (!(mysql_select_db($db_name,$con)))
    {
        show_error();
    }

    return $con;
}

        $con = db_connect();

    global $SmbIt;
    if (!isset($SmbIt)){

       ?>
<form name="Edit" method="POST">
<table>
<tr><td valign=top>
<?php
$old = mysql_query("SELECT id_R,k FROM raspis");
while($row2 = mysql_fetch_row($old)) {

 echo "<input type=text name=ar[".$row2[0]."] value='$row2[1]'  maxlength=10 size=10><br>";
}
?>
    </td>
</tr>
<tr>
    <td>
<input type="submit" Name="SmbIt" value="Обновить инфо &raquo;&raquo;&raquo;">
    </td>
</tr>
</table>
    </form>

<?php
 } else {



while(list($idx,$val) = each($ar))
{
echo "UPDATE raspis SET k=".$ar[$idx]."  WHERE id_R='$idx'";
echo "<br>";
     mysql_query("UPDATE raspis SET k=".$ar[$idx]." WHERE id_R='$idx'")or die(mysql_error());
}


    }

?>



--------------------
Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим!
PM MAIL   Вверх
-=Ustas=-
Дата 23.8.2006, 16:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ustix IT Group
****


Профиль
Группа: Участник Клуба
Сообщений: 2222
Регистрация: 21.1.2005
Где: Краснодар

Репутация: 17
Всего: 69



Я чё то не пойму вашего бреда. Это получается, что данный скрипт обновляет записи на значения, которые там уже присутствуют.....


--------------------
В искаженном мире все догмы одинаково произвольны, включая догму о произвольности догм.
-----
PM WWW ICQ Skype   Вверх
PARROT
Дата 23.8.2006, 16:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2339
Регистрация: 5.1.2005
Где: Спб-ЦарьГрад

Репутация: 3
Всего: 50



Данный скрипт обновляет  измененные значения, по ключу. 
Было например 5, измениили 5 на 1, стало 1 и так далее.

Добавлено @ 16:47 
http://pk.traktora.spb.ru/1.php 


--------------------
Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим!
PM MAIL   Вверх
Igor_CH
Дата 24.8.2006, 08:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 288
Регистрация: 20.3.2005

Репутация: нет
Всего: нет



PARROT большое спасибо!!!
Но мы так изменяем одно поле (k), а можно сразу не сколько(k1, k2,....)? 
PM MAIL   Вверх
Igor_CH
Дата 24.8.2006, 09:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 288
Регистрация: 20.3.2005

Репутация: нет
Всего: нет



а еще странно внутри функции код тоже не работает smile
Код

<?php
 function Edit() {
Error_Reporting(E_ALL & ~E_NOTICE);

$con = db_connect();

    global $SmbIt;
    if (!isset($SmbIt)){

       ?>
<form name="Edit" action="<?=$_SERVER["PHP_SELF"]?>?action=Edit" method="POST">
<table>
<tr><td valign=top>
<?php
$old = mysql_query("SELECT id_R,k,k1 FROM raspis");
while($row2 = mysql_fetch_row($old)) {

 echo "<input type=text name=ar[".$row2[0]."] value='$row2[1]'  maxlength=10 size=10>";
 echo "<input type=text name=am[".$row2[0]."] value='$row2[2]'  maxlength=10 size=10><br>";
}
?>
    </td>
</tr>
<tr>
    <td>
<input type="submit" Name="SmbIt" value="Обновить инфо &raquo;&raquo;&raquo;">
    </td>
</tr>
</table>
    </form>

<?php
 } else {



while( (list($idx,$val) = each($ar)) and (list($idx,$val) = each($am)) )
{
echo "<br>";
     mysql_query("UPDATE raspis SET k=".$ar[$idx].", k1=".$am[$idx]." WHERE id_R='$idx'")or die(mysql_error());
}


    }


        

 }
?>


Почему внутри функции не работает?

Добавлено @ 09:19 
а разобался global $ar;
PARROT с меня +

Это сообщение отредактировал(а) Igor_CH - 24.8.2006, 09:20
PM MAIL   Вверх
PARROT
Дата 24.8.2006, 10:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2339
Регистрация: 5.1.2005
Где: Спб-ЦарьГрад

Репутация: 3
Всего: 50



Если закоментировать функцию то все работает.

Добавлено @ 10:14 
Код

function edit ($edd) {


Это сообщение отредактировал(а) PARROT - 24.8.2006, 10:16


--------------------
Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим!
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Базы Данных | Следующая тема »


 




[ Время генерации скрипта: 0.0515 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.