[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Почему не работает do-while
lop_atin
Привет всем!

Сразу код:

$time = time();

$result_status = mysql_query("SELECT * FROM order_like_person WHERE ($time - time) >= 10 AND status='0'",$db);
$myrow_status = mysql_fetch_array($result_status);

if(!empty($myrow_status)){
do{
$id_order = $myrow_status['id_order'];
$id_user = $myrow_status['id_user'];

$result_uid = mysql_query("SELECT * FROM users WHERE id='$id_user'",$db);
$myrow_uid = mysql_fetch_array($result_uid);
$uid = $myrow_uid['uid'];

$result_post = mysql_query("SELECT * FROM order_like WHERE id='$id_order'",$db);
$myrow_post = mysql_fetch_array($result_post);

$a = $myrow_post['type'];
$b = $myrow_post['id_user'];
$c = $myrow_post['id_post'];

if($a == 'wall'){
$a = 'post';
}
else{
$a = 'photo';
}

$result_data = file_get_contents('https://api.vk.com/method/likes.getList?type='.$a.'&owner_id='.$b.'&item_id='.$c.'&filter=likes&count=10000');
$myrow_data = json_decode($result_data, true);

if (in_array("$uid", $myrow_data['response']['users'])) {
$points = $myrow_uid['points'];
$points = $points +1;
$result_points = mysql_query("UPDATE users SET points='$points' WHERE id='$id_user'",$db);
$result_status = mysql_query("UPDATE order_like_person SET status='1' WHERE id_order='$id_order'",$db);
}
}

while ($myrow_status = mysql_fetch_array($result_status));
}


Дело в том, что сам код работает... То есть если я запускаю скрипт, он всю работу сделает правильно, но только для 1 записи, а мне нужно чтобы он сделал это для всех записей... Кстати, я проверял сколько именно записей достает $myrow_status = mysql_fetch_array($result_status); из БД, так вот он достает как раз более 10 записей..., но все-равно проделывает всю эту операцию только для 1.


Помогите пожалуйста :)
Быстрый ответ:

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