2013-04-28 2 views
0

У меня проблема с запросом, который не сработает.MySQL Query in PHP error

Тот, который должен установить ранг на 2, работает, но тот, который должен установить vip на 1, не работает.

Я просто получаю белую страницу.

В чем проблема?

<?php 
session_start(); 
include ("includes/config.php"); 

$lid = $_SESSION['lid']; 

$uQuery = mysql_query("SELECT * FROM users WHERE id = '".$lid."'"); 
while($uFetch = mysql_fetch_array($uQuery)){ 
     $uuser = $uFetch['username']; 
     $umotto = $uFetch['motto']; 
     $ucredits = $uFetch['credits']; 
     $upixels = $uFetch['activity_points']; 
     $ubelcr = $uFetch['belcredits']; 
     $urank = $uFetch['rank']; 
     $ufigure = $uFetch['look']; 
} 

if($urank < '2'){ 
mysql_query("UPDATE users SET rank = 2 WHERE id = '".$lid."'"); 
mysql_query("UPDATE users SET vip = 1 WHERE id = '".$lid."'"); 
} 



Header("vip.php?succes=1"); 
?> 
+1

какая ошибка это показать на mysql_error() –

+0

Можно не просто упростить ваш запрос с использованием 'WHERE rank <2'? –

+0

, пожалуйста, проверьте тип данных поля таблицы «vip» –

ответ

4
mysql_query("UPDATE users SET rank = 2,vip = '1' WHERE id = '".$lid."'"); 
+0

Спасибо, это работает! – user2252348

2

Не совсем то, что вы ищете, но, глядя на запросы можно упростить:

session_start(); 
include ("includes/config.php"); 
if(isset($_SESSION['lid'])){ 

$lid = $_SESSION['lid']; 
$query = "UPDATE users SET rank = 2, vip = '1' WHERE rank < 2 AND id = ".intval($lid); 
$result = mysql_query($query) or die(mysql_error()); 
header('Location: vip.php?succes=1'); 
exit; 
}