powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] Одновременное обновление (Update) таблицы
16 сообщений из 16, страница 1 из 1
[PHP] Одновременное обновление (Update) таблицы
    #37815511
Терри
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте,

У меня есть 3 таблицы и мне нужно сделать Update для двух таблиц type и type_name .

languageid_langlang

typeid_type........ primarytype_def....... text

type_nameid_type id_langtype......... text


Lang 1Type 1Lang 2Type 2Lang 3Type 3...


Обновление значений Lang 1,Type 1 ................. UPDATE для таблицы `type` получилось,

А как сделать UPDATE для таблицы `type_name` для значений
Lang 2Type 2Lang 3Type 3...

Надеюсь, ясно объяснила ситуацию.


Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
<?php
if($err=="" && $id>0) {        
  $q1="UPDATE `type` SET `type_def`='".$rimt."' WHERE `id_type`='".$id."'";  
         
 // $q2="UPDATE `type_name` SET `type`='".$rimp."' WHERE `language`.`id_lang` = `type_name`.`id_lang` AND `id_type`='".$id."'";    ..........        
        
  if(!$link=mysql_query($q1)) $err.="System error";        
  else { 
    ?>
        <script type="text/javascript">
                location="home.php";
         </script>                
<?php
        }    
    }
?>



<div>
<?php 
    $str="";
    $r1 = mysql_query('SELECT `id_type`, `type_def` FROM `type` WHERE `id_type`='.$id);              
    if (!$result=$r1) $err='Server error'; 
    while($row1 = mysql_fetch_row($r1)) { 
        $r2 = mysql_query('SELECT `type_name`.`id_type`, `type_name`.`type`, `language`.`lang` FROM `language` INNER JOIN `type_name` ON `language`.`id_lang` = `type_name`.`id_lang` WHERE `type_name`.`id_type`='.$id);                 
        if (!$result=$r2) $err='Server error'; 
        $str.='<div>
		<input type="text" name="rimt" size="30" value="'.$row1[1].'" />';   
	echo '<input type="hidden" name="id" value="'.$id.'" /> 
        while($row2 = mysql_fetch_row($r2)) {
            $str.='<span>'.$row2[2].':</span><input type="text" name="rimp'.$i.'" size="30" value="'.$row2[1].'" />
';
        }
        $str.='</div>';   
    } 
 ?>  
<?=$str?>
...
Рейтинг: 0 / 0
[PHP] Одновременное обновление (Update) таблицы
    #37815514
Терри
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Теме полное название забыла дать, если можно, поменяйте/
[PHP] Одновременное обновление (Update) таблицы
...
Рейтинг: 0 / 0
[PHP] Одновременное обновление (Update) таблицы
    #37815522
MikkiMouse
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Терри,

Переформулируйте вопрос, пожалуйста, я практически ничего не понял.
...
Рейтинг: 0 / 0
[PHP] Одновременное обновление (Update) таблицы
    #37815727
Терри
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MikkiMouse,

Мне нужно обновить значения type для таблицы type_name , где id_type таблицы type_name равно значению id_type таблицы type . А этих строк у меня несколько может быть.


Ночь сказалась и видимо смутно рассказала ситуацию.
...
Рейтинг: 0 / 0
[PHP] Одновременное обновление (Update) таблицы
    #37815753
Терри
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня скорее проблема в том, что я не знаю, что мне делать с rimp . У меня же практически несколько значений будет в цикле? Значит и там, где идет UPDATE , должен участвовать цикл. А может есть какая другая команда для таких действий?

Код: php
1.
$q2="UPDATE `type_name` SET `type`='".$rimp."' WHERE `id_type`='".$id."'";  


..................................................

Код: php
1.
2.
3.
while($row2 = mysql_fetch_row($r2)) {
        $str.='<span>'.$row2[2].':</span><input type="text" name="rimp'" size="30" value="'.$row2[1].'" />';
}
...
Рейтинг: 0 / 0
[PHP] Одновременное обновление (Update) таблицы
    #37815755
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зачем вам одинаковые данные в 2х таблицах?
...
Рейтинг: 0 / 0
[PHP] Одновременное обновление (Update) таблицы
    #37815758
Терри
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hett,

В одной таблице по умолчанию взяты значения на одном языке, а в другой - на остальных языках ......... То есть, многоязычный сайт будет.
...
Рейтинг: 0 / 0
[PHP] Одновременное обновление (Update) таблицы
    #37815792
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как я понимаю это нужно для того, чтобы если в дополнительной локали нету перевода, то текст брался из основной таблицы? Если да, то как вариант можно в запросе на получение данных джоинить таблицу с базовой локалью и делая проверку на пустоту брать значения из нее по необходимости.
...
Рейтинг: 0 / 0
[PHP] Одновременное обновление (Update) таблицы
    #37815815
Терри
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HettКак я понимаю это нужно для того, чтобы если в дополнительной локали нету перевода, то текст брался из основной таблицы? Если да, то как вариант можно в запросе на получение данных джоинить таблицу с базовой локалью и делая проверку на пустоту брать значения из нее по необходимости.

Это уже для основного сайта.

А сейчас я пока работаю над административным сайтом, где ввожу эти данные. Может я что-то иначе представляю себе, но я просто хотела делать редактирование значений.
Допустим, на первой страничке у меня видны все значения на разных языках

English Русский...English 1 Русский 1... кнопка Edit English 2 Русский 2... кнопка Edit English 3 Русский 3... кнопка Edit English 4 Русский 4... кнопка Edit

При нажатии на кнопку Edit появляется соответствующая запись, допустим:

English 3 Русский 3...

И здесь меняю значения, если нужно будет. Именно здесь я и застряла.
...
Рейтинг: 0 / 0
[PHP] Одновременное обновление (Update) таблицы
    #37815832
Фотография Ренат
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Терри,

Код: sql
1.
2.
3.
INSERT INTO type_name(id_type, id_lang, type)
VALUES(1, 1, "Русски3"), (1, 2, "Англицкий3"), (1, 3, "Турецкий3")
ON DUPLICATE KEY SET type=VALUES(type);
...
Рейтинг: 0 / 0
[PHP] Одновременное обновление (Update) таблицы
    #37815834
Фотография Ренат
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ренат,

я надеюсь правда у вас стоят уник ключи на id_type, id_lang
...
Рейтинг: 0 / 0
[PHP] Одновременное обновление (Update) таблицы
    #37815844
Терри
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ренат,

Но это же Insert, а не Update?
...
Рейтинг: 0 / 0
[PHP] Одновременное обновление (Update) таблицы
    #37815849
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТерриИ здесь меняю значения, если нужно будет. Именно здесь я и застряла.
ну так бы сразу и описали, сделайте несколько апдейтов, ничего страшного в данном случае.
...
Рейтинг: 0 / 0
[PHP] Одновременное обновление (Update) таблицы
    #37815852
Терри
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HettТерриИ здесь меняю значения, если нужно будет. Именно здесь я и застряла.
ну так бы сразу и описали, сделайте несколько апдейтов, ничего страшного в данном случае.
Несколько штук? А разве это удобно будет?
...
Рейтинг: 0 / 0
[PHP] Одновременное обновление (Update) таблицы
    #37816132
Фотография Ренат
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТерриРенат,

Но это же Insert, а не Update?
я же вам написал, что еслиу вас стоят уник ключи на id_type, id_lang то будет апдейт а не инсерт. Инсерт будет только в случае если обновляемых записей нет
...
Рейтинг: 0 / 0
[PHP] Одновременное обновление (Update) таблицы
    #37816309
Терри
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ренат,

Это всё из-за неопытности, сразу не разобралась ... :)

К вечеру сяду и снова пересмотрю то, что сделано и что должна сделать. Думаю, что всё получится.

Большое спасибо ... :) и про Duplicate
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] Одновременное обновление (Update) таблицы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]