Wyświetlenie danych

0

Mam zapytanie do bazy

$dane = mysql_fetch_assoc(mysql_query("SELECT * FROM tabela WHERE `Id`=".mysql_real_escape_string($_GET['user_id'])." LIMIT 1;"));

następnie

 echo '</b><br />Nazwa:<b>'. $dane['Nazwa']

W tej chwili wyświetla mi dane tylko 1 rekordu, a powinno zwrócić 3 rekordy (sprawdzałem zapytanie w phpmyadmin).
Próbowałem zastosować pętle z mysql_fetch_row. Ale wyświetlało błędy. Proszę o pomoc. Jak wyświetlić w tym przypadku wszystkie znalezione rekordy.

0

wiec ja bym to zrobil tak :

$zapytanie =   "SELECT * FROM tabela WHERE `Id`=".mysql_real_escape_string($_GET['user_id'])." LIMIT 1;";    
$wynik = mysql_query($zapytanie)or die("Wystąpił błąd.");     
  
 while ($row = mysql_fetch_assoc($wynik))
{
 echo '</b><br />Nazwa:<b>'. $row['Nazwa'];
}     
      
 

ale to nadal wyswietli 1 rekord - dlaczego ? Bo w zapytaniu dales LIMIT 1 - wywal to albo zmien na LIMIT 3 jesli chcesz 3 wyniki.

0
    $query="SELECT * FROM `przeglad` WHERE `Pojazd_Id_Pojazd`=".mysql_real_escape_string($_GET['pojazd_id'])." ";
    $result=mysql_query($query);
    $num=mysql_numrows($result);
     
    $i=0;
    while ($i < $num)
    {
    $Id=mysql_result($result,$i,"Id_Przeglad");
    $Data_przegladu=mysql_result($result,$i,"Data_przegladu");
    $Wynik=mysql_result($result,$i,"Wynik");
    $Uwagi=mysql_result($result,$i,"Uwagi");
    $Pracownik=mysql_result($result,$i,"Pracownik_Id_Pracownika");
     
    $query="SELECT * FROM `pracownik` WHERE `Id_Pracownika`=$Pracownik";
    $result=mysql_query($query);
    $num=mysql_numrows($result);
    $i=0;
    while ($i < $num)
    {
    $Imie=mysql_result($result,$i,"Imie");
    $Nazwisko=mysql_result($result,$i,"Nazwisko");
    $i++;
    }
    echo "<tr><td>{$Id}</td><td>{$Data_przegladu}</td><td>{$Wynik}</td><td>{$Uwagi}</td><td>{$Imie} {$Nazwisko}</td></tr>";
    $i++;
    }

W tej chwili wyświetla mi tylko 1 w pełni uzupełniony rekord, a powinno 3. Błąd mam pewnie gdzieś w pętli while, ale nie potrafię go rozwiązać. Proszę o pomoc.

0

Nie wiem czy dobrze myślę, ale to bez sensu, że w wewnętrznej pętli używasz tej samej zmiennej co w zewnętrznej.
Zmień ją np. na x:

$x=0;
    while ($x < $num)
    {
    $Imie=mysql_result($result,$x,"Imie");
    $Nazwisko=mysql_result($result,$x,"Nazwisko");
    $x++;
    }
0

Już poprawiłem to wcześniej. Bez zmian.

1 użytkowników online, w tym zalogowanych: 0, gości: 1