2013-03-25 2 views
0

Я пытаюсь это сделать, если у меня есть хотя бы одна команда, созданная для одного человека, она отобразит команду. Если у них нет команды, в ней не будет команд. Он работает, если у человека есть как минимум 1 команда, но ничего не показывает, не находится ли человек в команде. Как это исправить?PHP-подсчет строк в строке MYSQL?

<?php 

         $sql = mysql_query("SELECT * FROM teams WHERE players LIKE '%$sessiongamt%'") or die("Could not allocate information!"); 
           $num = 0; 
           while($row = mysql_fetch_assoc($sql)){ 
            $num = ++$num; 
         $amount1 = mysql_num_rows($sql); 
         $name = $row["name"]; 
            $teamrank = $row["rank"]; 
            $teamlink = $row["link"]; 
            $players = $row["players"]; 
         $teamid = $row['id']; 

         if($amount1 < 1){ 
          $teams = "No Teams"; 
          echo "$amount"; 
         }else{ 
          $teams = "$name"; 
          echo "<a href='$teamlink?id=$teamid'>$teams</a>"; 
         } 


         }print "$amount1"; 
        ?> 
+1

Почему с помощью '$ Num = ++ $ Num;'? почему не '$ num ++'? –

+0

Просьба показать структуру вашего стола. Без них мы не сможем помочь. Или, по крайней мере, это было бы догадкой. – judda

ответ

0

Посмотрите на третью строку этого кода - поместите его в свой код на одно и то же место вместо своей линии.

     if($amount1 < 1){ 
          $teams = "No Teams"; 
          echo $teams; 
         }else{ 
          $teams = "$name"; 
          echo "<a href='$teamlink?id=$teamid'>$teams</a>"; 
         } 
+0

По-прежнему ничего ... – ExcuseMyLuck

0

Поместите подсчет вне время ... петля

$sql = mysql_query("SELECT * FROM teams WHERE players LIKE '%$sessiongamt%'") or die("Could not allocate information!"); 

$amount1 = mysql_num_rows($sql); //<---- this should fix it 

$num = 0;   
while($row = mysql_fetch_assoc($sql)){ 
    $num = ++$num; 

    $name = $row["name"]; 
    $teamrank = $row["rank"]; 
    $teamlink = $row["link"]; 
    $players = $row["players"]; 

    $teamid = $row['id']; 

    $teams = "$name"; 
    echo "<a href='$teamlink?id=$teamid'>$teams</a>"; 
} 

if($amount1 < 1){ 
    $teams = "No Teams"; 
} 

print "$amount1"; 
?> 
+1

Попробуйте использовать альтернативную библиотеку для 'mysql_'. Вместо этого используйте mysqli или PDO – codingbiz

+0

Нет. Все еще ничего не показываю. – ExcuseMyLuck

+0

Показывает название команды, если оно есть, в противном случае оно просто показывает количество команд (0) – ExcuseMyLuck

Смежные вопросы