<MyRusakov.ru />

JavaScript, jQuery и Ajax с Нуля до Гуру

JavaScript, jQuery и Ajax с Нуля до Гуру

Видеокурс "JavaScript, jQuery и Ajax с Нуля до Гуру" научит Вас "вдыхать жизнь" в страницы, делая их с потрясающими эффектами и максимальным удобством для пользователя.

Курс научит Вас писать скрипты на JavaScript, а также обучит использованию библиотеки jQuery и технологии Ajax.

Практически любой красивый сайт (с красивыми галереями изображений, слайдерами, плавными переходами и так далее) использует jQuery. А практически на любом серьёзном сайте вовсю используется технология Ajax, которая делает работу с сайтом максимальной удобной.

Поэтому курс "JavaScript, jQuery и Ajax с Нуля до Гуру" Вам просто необходим, если Вы хотите создавать по-настоящему достойные сайты.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Форум сайта MyRusakov.ru

select, update в цикле.
15.02.2013 20:02:33 select, update в цикле. Сообщение #1
Casha

Casha

Новичок

Новичок

Дата регистрации:
15.02.2013 19:55:46

Сообщений: 11

Здравствуйте Михаил!
Нужна мпомошь.

можно ли делать выборку и апдейт для всех полей в цикле, чтобы апдейт делался в том поле что выбранно?

Ниже код в котором я пытаюсь это сделать.

Это мне нужно для игры, которую я создаю.
код имитирует покупку товаров с магазинов пользователей
у каждого по тому какую цену он установил на товар и какой уровень его магазина.



<?php include("blocks/db.php";

do {


$result1 = mysql_query ("SELECT COUNT(id) FROM mag ",$db);
$massiv1 = mysql_fetch_array ($result1);

$allvl = $massiv1['0'];

$result = mysql_query ("SELECT SUM(lvlmag) FROM mag ",$db);
$massiv = mysql_fetch_array ($result);

$colmag = $massiv['0'];

$result11 = mysql_query ("SELECT lvlmag FROM mag";
$massiv11 = mysql_fetch_array ($result11);

$result2 = mysql_query ("SELECT budjet FROM budjet ";
$massiv2 = mysql_fetch_array ($result2);

$budjet = $massiv2['budjet'];
$moymag = $massiv11['lvlmag'];

$obshbudjet = ($budjet / $colmag);
$moyposititel = ($moymag * $obshbudjet);

$time = time();

$result4 = mysql_query("UPDATE mag SET budjet='$moyposititel',time='$time'",$db);

if ( isset($_POST['mp3'])) {$mp3=$_POST['mp3'];} else {"";}


$result3 = mysql_query ("SELECT mp3 FROM ceni";
$massiv3 = mysql_fetch_array ($result3);
$mp3 = $massiv3['mp3'];

$result12 = mysql_query ("SELECT budjet FROM mag";
$massiv12 = mysql_fetch_array ($result12);
$budjet = $massiv12['budjet'];

$raz = $mp3 - 42;

$f1=$budjet;
$f2=$raz * 200;
$f3=$f1*(1-$f2) ;
$f3=($f1 * (100000 - $f2))/100000;

$e= 540;
if ($mp3 > $e) echo ""; else

$b= NULL;
if ($mp3 == $b) echo ""; else
$d = 0;
if ($mp3 == $d) echo ""; else {

$result122=mysql_query("SELECT mp3,many FROM res",$db);
$massiv122 = mysql_fetch_array($result122);
$mp = $massiv122['mp3'];

if ($mp < 1) echo "";

else {

$many = $massiv122['many'];

if (($mp * $mp3) < $f3){
$many = ($mp * $mp3) + $many;
$mp1 = 0;
$mp1 = intval ($mp1);

;} else {

$mp2 = $f3 / $mp3;
$mp1 = $mp - $mp2;
$mp1 = intval($mp1);


$mony = ($mp - $mp1);
$many = ($mony * $mp3) + $many; ; }

$many= intval ($many);

$result133 = mysql_query("UPDATE res SET mp3='$mp1',many='$many'",$db); ;} ;}

}
while ($massiv1 = mysql_fetch_array ($result1)); ( $massiv = mysql_fetch_array ($result));( $massiv11 = mysql_fetch_array ($result11));
($massiv2 = mysql_fetch_array ($result2)); ($massiv3 = mysql_fetch_array ($result3)); ($massiv12 = mysql_fetch_array ($result12));
($massiv122 = mysql_fetch_array($result122));;;;;

?>
Профиль Ответить
15.02.2013 20:06:31 select, update в цикле. Сообщение #2
Casha

Casha

Новичок

Новичок

Дата регистрации:
15.02.2013 19:55:46

Сообщений: 11

Код выполняется, но во все поля в БД пишет значение одного пользователя.
А мне надо чтобы писалось каждому свое.


быть может проблема еше в том что записи в Таблицах идут не попорядку. Тоесть в одной таблице первая запись одного персонажа а в другой таблице первая запись другого персонажа.

Прошу сказать мне решение моей проблемы.
Профиль Ответить
15.02.2013 21:05:43 select, update в цикле. Сообщение #3
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Используйте вложенные запросы. Внутри UPDATE можно без проблем использовать SELECT.
Профиль Ответить
15.02.2013 23:19:34 select, update в цикле. Сообщение #4
Casha

Casha

Новичок

Новичок

Дата регистрации:
15.02.2013 19:55:46

Сообщений: 11

Спасибо вам за ответ. Но я совсем новичек в программировании. Не могли бы вы мне показать пример с моим кодом? И как это мне поможет? Как вы видите у меня в цикле не только выборки, а есть еше много математических решений со своими переменными взятые из выборок. Как мне с ними быть?

как вы видите у меня в коде много запросов. И как с ними быть тоже в один апдейт вложить?

А с циклом что? Мне нужен цикл.

Очень прошу полный ответ.
Профиль Ответить
15.02.2013 23:51:02 select, update в цикле. Сообщение #5
Casha

Casha

Новичок

Новичок

Дата регистрации:
15.02.2013 19:55:46

Сообщений: 11

Кажись я решил свою проблему.
Просто в первом селекте выбирал и логин. А дальше везде выбирал поле где логин равнялся первой выборке.

Теперь у меня другой вопрос.

Как мне запускать автоматически, данный файл каждый час? и чтобы не надо было на него заходить.
Профиль Ответить
16.02.2013 10:00:20 select, update в цикле. Сообщение #6
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Через cron: http://myrusakov.ru/use-cron.html
Профиль Ответить