Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyświetlanie rekordów mysql w postaci linków.
Forum PHP.pl > Forum > Przedszkole
macius
Chciałbym pobrać wszystkie rekordy z jednego wiersza tabeli i wyświetlić je w postaci takich linków:

  1. <a href="artkul.php?id=nr id rekordu w bazie danych">rekord</a>


Jak to zrobić?
strife
  1. <?php
  2.  
  3.  
  4. $mysql_query = mysql_query(&#092;"SELECT * FROM tabela WHERE wiersz \");
  5. while ($row = mysql_fetch_array($mysql_query)) 
  6. {
  7. echo '<a href=\"artkul.php?id='.$row.\">.$row.</a>';
  8. }
  9.  
  10. ?>
hwao
przeczytac kurs mysql :PPPPPPPPPPPPP
  1. <?php
  2.  
  3.  
  4. $res = mysql_query( 'Select * From `lalal`' );
  5. while( $val = mysql_fetch_array( $res ) ) {
  6.  echo '<a href=\"'.$val['href'].'\">'.$val['text'].'</a>';
  7. }
  8. ?>

tongue.gif
Reszte masz w manualu
mysql_connect" title="Zobacz w manualu PHP" target="_manual()
mysql_select_db" title="Zobacz w manualu PHP" target="_manual()
mysql_query" title="Zobacz w manualu PHP" target="_manual()
mysql_fetch_array" title="Zobacz w manualu PHP" target="_manual()
Coyote
tylko oczywiscie jak bys chcial wszystkie rekordy wysw .. to musisz sobie do tego petle dolozyc winksmiley.jpg
macius
Mam taki kod:

  1. <html>
  2. <head>
  3. <title>Artykuły</title>
  4. </head>
  5. <body bgcolor=\"dc0101\">
  6. <?php
  7.  
  8. $link=mysql_connect(&#092;"localhost\", \"neo\", \"dupa\");
  9. mysql_select_db(&#092;"malbin\");
  10.  
  11. $res = mysql_query( 'Select tytul From artykuly' );
  12.  
  13. while( $val = mysql_fetch_array($res, MYSQL_ASSOC) ) {
  14.  echo ('<a href=\"artykul.php$id='.$val['id'].'\">'.$val['tytul'].'</a>');
  15.  
  16. mysql_close($link);
  17. ?>
  18. </body>
  19. </html>


A wyświetla mi się to:

Cytat
Parse error: syntax error, unexpected $end in c:\usr\krasnal\www\_jgames_\gotowe\artykuly.php on line 18


Why?
ARJ
brakuje ci zamknięcia klamry od while. w lini 15 wstaw }
i powinno działać
Puciek
  1. <?php
  2. $link=mysql_connect(&#092;"localhost\", \"neo\", \"dupa\");
  3. mysql_select_db(&#092;"malbin\");
  4.  
  5. $res = mysql_query( 'Select tytul From artykuly' );
  6.  
  7. while( $val = mysql_fetch_array($res, MYSQL_ASSOC) ) {
  8.  echo ('<a href=\"artykul.php$id='.$val['id'].'\">'.$val['tytul'].'</a>');
  9. }
  10. mysql_close($link);
  11. ?>
macius
Mam jeszcze problem z id, nie wiem jak je wyciągnąć z mysqla?
Vertical
  1. <?php
  2. $link=mysql_connect(&#092;"localhost\", \"neo\", \"dupa\");
  3. mysql_select_db(&#092;"malbin\");
  4. $res = mysql_query( 'SELECT * FROM artykuly' );
  5.  
  6. while( $val = mysql_fetch_array($res) )
  7. {
  8. echo $val['id'];
  9. }
  10. mysql_close($link);
  11. ?>

...ale wykryłem jeszcze jeden błąd w kodzie. Zamiast:
  1. <?php
  2. echo ('<a href=\"artykul.php$id='.$val['id'].'\">'.$val['tytul'].'</a>');
  3. ?>

powinno być:
  1. <?php
  2. echo ('<a href=\"artykul.php?id='.$val['id'].'\">'.$val['tytul'].'</a>');
  3. ?>

(w linku dałeś "$" zamiast "?")
macius
Dzięki działa.
A czy można wyświetlić tylko te wyniki których pole dzial ma wartosc 1?
ARJ
  1. SELECT *
  2. FROM artykuly WHERE dzial='1'
macius
Gdy całość wygląda tak
  1. <html>
  2. <head>
  3. <title>Artykuły</title>
  4. </head>
  5. <body bgcolor=\"dc0101\">
  6. <?php
  7.  
  8. $link=mysql_connect(&#092;"localhost\", \"***\", \"*****\");
  9. mysql_select_db(&#092;"malbin\");
  10.  
  11. $res = mysql_query('Select * FROM artykuly WHERE dzial='1');
  12.  
  13. while( $val = mysql_fetch_array($res) )
  14. {
  15. echo ('<a href=&#092;"artykul.php?id='.$val['id'].'\">'.$val['tytul'].'</a>');
  16. }
  17. mysql_close($link);
  18. ?>
  19. </body>
  20. </html>

To wyskakuje taki błąd:
Cytat
Parse error: syntax error, unexpected T_STRING in c:\usr\krasnal\www\_jgames_\gotowe\artykuly.php on line 11

A jeśli pobywam się apostrofów przy 1, wyskakuje taki błąd:
Cytat
Parse error: syntax error, unexpected T_STRING in c:\usr\krasnal\www\_jgames_\gotowe\artykuly.php on line 15
strife
  1. <?php
  2.  
  3. $link = mysql_connect(&#092;"localhost\", \"***\", \"*****\");
  4. mysql_select_db(&#092;"malbin\");
  5.  
  6. $res = mysql_query(&#092;"Select * FROM artykuly WHERE dzial='1' \" );
  7.  
  8. while( $val = mysql_fetch_array($res) )
  9. {
  10. echo '<a href=\"artykul.php?id='.$val['id'].\">'.$val['tytul'].'</a>';
  11. }
  12. mysql_close($link);
  13.  
  14. ?>
macius
Chciałem zamias jeden wstawić zmienną get więc:

  1. <?php
  2. $res = mysql_query( &#092;" Select * FROM artykuly WHERE dzial='.$_GET['dzial'].' \" );
  3. ?>

A w odpowiedzi dostaję że "unexpected T_ENCAPSED_AND_WHITESPACE". Czemu?
strife
zrób to tak:
  1. <?php
  2.  
  3. $zmienna = $_GET['dzial'];
  4. $res = mysql_query(&#092;"SELECT * FROM artykuly WHERE dzial='$zmienna' \");
  5.  
  6. ?>


Pozdrawiam!
macius
Już próbowałem wyświetla się:
Cytat
Parse error: syntax error, unexpected T_VARIABLE in c:\usr\krasnal\www\_jgames_\gotowe\artykuly.php on line 11

Wkleję jeszcze raz cały kod:
  1. <html>
  2. <head>
  3. <title>Artykuły</title>
  4. </head>
  5. <body bgcolor=\"dc0101\">
  6.  
  7. <?php
  8. $link=mysql_connect(&#092;"localhost\", \"*****\", \"******\");
  9. mysql_select_db(&#092;"malbin\");
  10. $dzial=$_GET['dzial']
  11. $res = mysql_query(&#092;" Select * FROM artykuly WHERE dzial='$dzial' \");
  12.  
  13. while( $val = mysql_fetch_array($res) )
  14. {
  15. echo ('<a href=\"artykul.php?id='.$val['id'].'\">'.$val['tytul'].'</a>');
  16. }
  17. mysql_close($link);
  18. ?>
  19. </body>
  20. </html>
ARJ
w lini 10 dodaj ;
strife
linia 10
  1. <?php
  2.  
  3. $dzial=$_GET['dzial']; // brak średnika
  4.  
  5. ?>


a dalej tak jak pisałem, czyli cały kod
  1. <?php
  2.  
  3. $link=mysql_connect(&#092;"localhost\", \"*****\", \"******\");
  4. mysql_select_db(&#092;"malbin\");
  5. $dzial=$_GET['dzial'];
  6. $res = mysql_query( &#092;" Select * FROM artykuly WHERE dzial='$dzial' \" );
  7.  
  8. while( $val = mysql_fetch_array($res) )
  9.     {
  10.     echo '<a href=\"artykul.php?id='.$val['id'].\">'.$val['tytul'].'</a>';
  11.     }
  12. mysql_close($link);
  13.  
  14. ?>


Musi działać... jak nie to ustaw raporty błędów na E_ALL i powiedz co wyświetla.

Pozdrawiam!

BTW.

Już chyba teraz bez gotowca trudno coś samemu wyklepać co? biggrin.gif Wszystko jest w manualu, wystarczy poszukac i pokombinować plus trochę dobrych chęci i działa... Ale to przecież nieważne... hehe... Pozdrawiam jeszcze raz i cieszę się że wreszcie Twój problem został rozwiązany...
macius
Dziękuję bardzo, już działa.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.