Извеждане на резултати от select заявка

karamel4o

Registered
Как трябва да я направя тази заявка :
Код:
			$sda = mysql_query("SELECT * FROM tours WHERE active = 1") or die(mysql_error());
			if(mysql_num_rows($sda) > 0)
			{
				if($dsa['username'] == $user)
				{
				$upd = mysql_query("UPDATE users SET crowns=crowns+1 WHERE username='$user'") or die(mysql_error());
				}
			
			}
така както съм я направил не става :(

// мод : Моля , прочетете правилата за правилно използване на заглавията.
 
http://php.net/manual/en/function.mysql-fetch-array.php

PHP:
<?php
mysql_connect("localhost", "mysql_user", "mysql_password") or
    die("Could not connect: " . mysql_error());
mysql_select_db("mydb");

$result = mysql_query("SELECT id, name FROM mytable");

while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
    printf("ID: %s  Name: %s", $row[0], $row[1]);  
}

mysql_free_result($result);
?>
 
Може би аз не обясних както трябва ....
искам да направя една заявка :
в базаданни имам таблица TOURS и там има поле active и искам ако даден потребител се е записал в някой турнир и турнира е пуснат (active = 1) да ми прави UPDATE заявка , но както виждате съм го направил 1-во да проверява дали има даден турнир който е пуснат и след това ако има да проверява дали $_SESSION['username'] се е записал за този турнир ?
 
karamel4o каза:
Може би аз не обясних както трябва ....
искам да направя една заявка :
в базаданни имам таблица TOURS и там има поле active и искам ако даден потребител се е записал в някой турнир и турнира е пуснат (active = 1) да ми прави UPDATE заявка , но както виждате съм го направил 1-во да проверява дали има даден турнир който е пуснат и след това ако има да проверява дали $_SESSION['username'] се е записал за този турнир ?
Че то така би трябвало да работи.. Каква грешка (ако има) ти дава?

А сигурен ли си, че не си допуснал правописна грешка някъде?Например тук можеш да се объркаш:
$sda = mysql_query("SELECT * FROM tours WHERE active = 1") or die(mysql_error());
if(mysql_num_rows($sda) > 0){
if($dsa['username'] == $user){
$upd = mysql_query("UPDATE users SET crowns=crowns+1 WHERE username='$user'") or die(mysql_error());
}
}
И ако там е грешката тогава си пропуснал един ред:
$sda = mysql_query("SELECT * FROM tours WHERE active = 1") or die(mysql_error());
if(mysql_num_rows($sda) > 0){
$row = mysql_fetch_assoc($sda);
if($row['username'] == $user){
$upd = mysql_query("UPDATE users SET crowns=crowns+1 WHERE username='$user'") or die(mysql_error());
}
}
 
Видях къде е грешката ....
пропуснал съм да сложа mysql_fetch_assoc на $sda но сега го направих така :
Код:
			$dsa = mysql_fetch_assoc(mysql_query("SELECT * FROM tourz"))or die(mysql_error());
			$sda = mysql_fetch_array(mysql_query("SELECT * FROM tours WHERE active = 1")) or die(mysql_error());
			if(mysql_num_rows($sda) > 0)
			{
				if($dsa['username'] == $user)
				{
				$upd = mysql_query("UPDATE users SET crowns=crowns+1 WHERE username='$user'") or die(mysql_error());
				}
			
			}
но ми дава тази грешка :
Код:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in D:\Programs\xampp\htdocs\fight.php on line 171
171 ред е това с MYSQL_NUM_ROWS ? :(
 
PHP:
			$dsa = mysql_query("SELECT * FROM tourz WHERE active=1")or die(mysql_error());
			$sda = mysql_fetch_array(mysql_query("SELECT * FROM tours WHERE active = 1")) or die(mysql_error());
			if(mysql_num_rows($sda) > 0)
			{
				$row = mysql_fetch_assoc($dsa);
				if($row['username'] == $user)
				{
				$upd = mysql_query("UPDATE users SET crowns=crowns+1 WHERE username='$user'") or die(mysql_error());
				}
			
			}
Така би трябвало да проработи! :?:
 
Да но виж сега в tours се записват самите турнири, а в tourz се записват хората които са записани за турнирите и в tourz нямам поле ACTIVE ...
ето какво има в tours:
Код:
id
title
ndz
kdz
max
mesta
active
Ето какво има и в tourz:
Код:
username
tour_id
 

Back
Горе