Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Czy w dobrym kierunku...
Forum PHP.pl > Forum > Bazy danych > MySQL
primo
Witam,

chcę sobie zrobić słowniczek pojęć technicznych w bazie danych baza ma pola:
id_slowniczka
litera
slowo
opis


litera to np: A B C D itd. to ma być linkiem do wyswietlenia konkretnych wpisow

oto kod:

[php:1:66ad12fc1d]<?php
<td class="right">
<table border="0" cellpadding="0" cellspacing="5" class="inside">
<tr>
<td class="white"><h6>Słowniczek pojęć technicznych...</h6><div class="text"><br>


<a href="index.php?op=11&go=2&litera=A">A</a><br> // to mialby byc link litera A



<?php

mysql_connect ("cosik", "cosik", "cosik") or die("Nie można połączyć się z
bazą danych");
mysql_select_db ("cosik") or die("Nie można połączyć się z bazą danych");


$litera = $_GET["litera"];


$sql = "SELECT * FROM slowniczek WHERE litera = '".$litera."'";
$result = mysql_query($sql) or die(mysql_error());


while ($rekord = mysql_fetch_row ($result)) {
$id_slowniczka = $rekord[0];
$litera = $rekord[1];
$slowo = $rekord[2];
$opis = $rekord[3];
}
print "$id_slowniczka";
print "$litera";
print "$slowo";
print "$opis";



?>



<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
</div></td>
</tr>
</table>
</td>
</tr>
</table>
?>[/php:1:66ad12fc1d]

i prawie wszystko jest ok, ale jak klikne juz na stronie litere A to wypisuje mi ze jest 5A i ostatni wpis w bazie z litery A - co jest w tym nie tak, ze nie zwraca wszystkich wynikow z litery A


pozdrawiam
Aiker
Nie mozna wyswietlania danych z bazy wstawiac poza petla poniewaz wyswietli ci dane z ostatniej iteracji petli czyli ostatni rekord w bazie danych.
Ten kawalek
[php:1:8077f2d110]<?php
while ($rekord = mysql_fetch_row ($result)) {
$id_slowniczka = $rekord[0];
$litera = $rekord[1];
$slowo = $rekord[2];
$opis = $rekord[3];
}
print "$id_slowniczka";
print "$litera";
print "$slowo";
print "$opis";

?>[/php:1:8077f2d110]
zmien na
[php:1:8077f2d110]<?php
while ($rekord = mysql_fetch_row ($result)) {
$id_slowniczka = $rekord[0];
$litera = $rekord[1];
$slowo = $rekord[2];
$opis = $rekord[3];

print "$id_slowniczka";
print "$litera";
print "$slowo";
print "$opis";
}
?>[/php:1:8077f2d110]
radziel
Wydaje mi się że zamiast
[php:1:b676bc799a]<?php
while ($rekord = mysql_fetch_row ($result)) {
$id_slowniczka = $rekord[0];
$litera = $rekord[1];
$slowo = $rekord[2];
$opis = $rekord[3];
}
print "$id_slowniczka";
print "$litera";
print "$slowo";
print "$opis";




?>[/php:1:b676bc799a]

powinno byc
[php:1:b676bc799a]<?php
while ($rekord = mysql_fetch_array ($result)) {
$id_slowniczka = $rekord[0];
$litera = $rekord[1];
$slowo = $rekord[2];
$opis = $rekord[3];

print "$id_slowniczka";
print "$litera";
print "$slowo";
print "$opis";

}

?>
[/php:1:b676bc799a]UPADTE: wyprzedzili mnie tongue.gif
primo
pozostałem przy mysql_fetch_row i przesunąłem zamknięcie pętli i jest ok, a teraz jaką funkcją potraktować rekord litera aby po nim wstawiało separator np. -- i dopiero opis, czy lepiej od razu w bazie wpisywac z myslniikiem questionmark.gif


pozdrawiam
Aiker
Wystarcze w ciagu
[php:1:8c26a0f520]<?php
print "$litera";
?>[/php:1:8c26a0f520]
dodac po zmiennej spearator jakim chesz odzielac ta literke:)
np..
[php:1:8c26a0f520]<?php
print "$litera --";
?>[/php:1:8c26a0f520]
primo
wielkie dzięki za pomoc, jeśli chcecie looknąć jak to działa to zapraszam:
http://www.divideo.com.pl/index.php?op=11&go=2

jeszcze mam mało wpisów, no ale skrypt już gotowy to wpisy to już formalność i dużu klawiaturowania winksmiley.jpg
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.