Страница 1 из 2
UPDATE
Добавлено: 25 май 2010, 17:40
dead_luminor
Пытаюсь сделать: Если score больше 100, то сменить score на 0. Не меняет(
Код: Выделить всё
<?php $db_host="localhost"; $db_user="1111111"; $db_password="11111111111"; $db_name = "111111111111"; $table_name = "1111111111"; $uid=$_GET['uid'];$viewer_id = $_GET['viewer_id']; // данные приложения$app_id = '1870100'; // id приложения$api_secret = 'cuUv074HQschvCBlsc5J'; // защищенный ключ приложения с вкладки платежи mysql_connect($db_host, $db_user, $db_password) or die (mysql_error()); mysql_select_db($db_name) or die (mysql_error()); mysql_query("SET NAMES 'utf8'"); $query = 'SELECT * FROM `111111` WHERE `uid` ="'.$uid.'"'; if($query>=100){ $query = "UPDATE 111111 SET score = '0' WHERE uid = $uid ";$query = 'SELECT * FROM `111111` WHERE `uid` ="'.$uid.'"'; }$sql = @mysql_query($query); $num_rows = mysql_num_rows($sql); if ($num_rows>0) {$user_data = @mysql_fetch_array($sql);echo $user_data['score'];}else {echo 'Error!'; } ?>
Re: UPDATE
Добавлено: 25 май 2010, 17:50
bodnar
1 Оформите код как подобает!
2
Код: Выделить всё
if($query>=100){$query = "UPDATE 111111 SET score = '0' WHERE uid = $uid ";$query = 'SELECT * FROM `111111` WHERE `uid` ="'.$uid.'"';}$sql = @mysql_query($query);
после ифа что хранится в переменной query? (сразу скажу, Оно же и выполнится после ифа)
Re: UPDATE
Добавлено: 25 май 2010, 18:03
dead_luminor
1. не могу редактировать тему, ужебы давно изменил
2.
Re: UPDATE
Добавлено: 25 май 2010, 18:08
dead_luminor
Код: Выделить всё
<?php// данные доступа к базе данных$db_host="olololo"; // обычно не нужно изменять$db_user="olololololo"; // имя пользователя БД$db_password="olololololo"; // пароль БД$db_name = "ololololololo"; // имя БД$table_name = "olololol"; // имя таблицы статистики. Если вы не меняли его в запросе, создающем БД, то и здесь менять его не надо $uid=$_GET['uid'];$viewer_id = $_GET['viewer_id']; // данные приложения$app_id = 'ololol'; // id приложения$api_secret = 'ololol'; // защищенный ключ приложения с вкладки платежи mysql_connect($db_host, $db_user, $db_password) or die (mysql_error());mysql_select_db($db_name) or die (mysql_error());mysql_query("SET NAMES 'utf8'"); $query = 'SELECT * FROM `stat_1881118` WHERE `uid` ="'.$uid.'"'; $sql = @mysql_query($query); $num_rows = mysql_num_rows($sql); if ($num_rows>0) {$user_data = @mysql_fetch_array($sql);if($user_data['score'] > 100){$query2 = "UPDATE 111111 SET score = '0' WHERE uid = $uid ";$sql2 = @mysql_query($query2);$num_rows2 = mysql_num_rows($sql2);$user_data2 = @mysql_fetch_array($sql2);}echo $user_data['score'];}else {echo 'Error!'; } ?>
Re: UPDATE
Добавлено: 25 май 2010, 18:10
dead_luminor
кстати мне нужно не вывести 0, а в базе 0 сделать
Re: UPDATE
Добавлено: 25 май 2010, 18:15
bodnar
"UPDATE 111111 SET score = '0' WHERE uid = $uid " и так делает в базе 0
Re: UPDATE
Добавлено: 25 май 2010, 18:23
dead_luminor
знаю!! кстати убери данные из моего сообщения!
Re: UPDATE
Добавлено: 25 май 2010, 18:30
dead_luminor
так как правельно??
Re: UPDATE
Добавлено: 26 май 2010, 18:08
dead_luminor
Код: Выделить всё
<?php $db_host="mysql4.freehostia.com"; $db_user="11111111111111_11111"; $db_password="111111111111"; $db_name = "111111111"; $table_name = "11111111"; $uid=$_GET['uid']; mysql_connect($db_host, $db_user, $db_password) or die (mysql_error());mysql_select_db($db_name) or die (mysql_error());mysql_query("SET NAMES 'utf8'"); $query = 'UPDATE 11111111 SET click = '0' where `user_id` ="'.$uid.'"'; $sql = @mysql_query($query); $num_rows = mysql_num_rows($sql); if ($num_rows>0) {$user_data = @mysql_fetch_array($sql);echo $user_data['click'];}else {echo 'Error!'; } ?>
изза этой строки не работает:
Код: Выделить всё
$query = 'UPDATE 11111111 SET click = '0' where `user_id` ="'.$uid.'"';
если выполнять напрямую (руками) через мускул, то такой запрос проходит...
(UPDATE 11111111 SET click = '0' where `user_id` ="1")
Re: UPDATE
Добавлено: 26 май 2010, 18:43
bodnar
при каждом mysql query приписывайте сзади
чтобы видеть в чем косяки