• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

PHP - nie wyświetla się całość pobranego z bazy

VPS Starter Arubacloud
0 głosów
201 wizyt
pytanie zadane 12 stycznia 2018 w PHP przez Xentis Początkujący (280 p.)
edycja 12 stycznia 2018 przez Eryk Andrzejewski

Mam taki kod i nie wyświetla całości, nie wiem co jest nie tak w tym while, wyświetla jakby tylko jeden przykład i po dodaniu AND się tak dzieje
 

<?php

 

$baza=mysqli_connect("localhost", "root", "", "ogloszenia")

or die("Brak połączenia z bazą");

 

$zapytanie1="SELECT id,tytul,tresc FROM ogloszenie WHERE kategoria=1";

$zapytanie2="SELECT uzytkownik.telefon FROM uzytkownik, ogloszenie WHERE uzytkownik.id=ogloszenie.uzytkownik_id AND ogloszenie.id=1";

$wynik1=mysqli_query($baza,$zapytanie1);

$wynik2=mysqli_query($baza,$zapytanie2);

 

while($t=mysqli_fetch_array($wynik1) AND $t2=mysqli_fetch_array($wynik2)){

echo "<h3>".$t["id"]." ".$t["tytul"]."</h3>";

echo "<p>".$t["tresc"]."</p>";

echo "<p>Telefon kontaktowy: ".$t2["telefon"]."</p>";

}

 

mysqli_close($baza);

?>

 

komentarz 12 stycznia 2018 przez Eryk Andrzejewski Mędrzec (164,260 p.)
Kod źródłowy proszę umieszczać w bloczku.

1 odpowiedź

+1 głos
odpowiedź 12 stycznia 2018 przez mtk3d Nałogowiec (46,690 p.)
AND ogloszenie.id=1

Prawdopodobnie w tabeli 'ogloszenie' masz tylko jeden rekord o id = 1, więc dostajesz tylko jeden wynik, a to doprowadza do tego, że pętla po pobraniu tego jednego elementu się zatrzymuje.

To jest w ogóle błędnie napisane, bo niekoniecznie dane w bazie w 2 różnych tabelach, będą w tej samej kolejności. Po za tym robisz dwa zapytania, a da się to zwrócić w jednym.
Do pobierania takich danych, użyj JOIN'a.

komentarz 13 stycznia 2018 przez Xentis Początkujący (280 p.)
Właśnie rekordów było więcej, ale coś z zapytaniem było nie tak z JOIN lepiej :)

Podobne pytania

0 głosów
1 odpowiedź 642 wizyt
pytanie zadane 13 lutego 2016 w PHP przez Zelek Użytkownik (960 p.)
+1 głos
5 odpowiedzi 353 wizyt
0 głosów
2 odpowiedzi 212 wizyt
pytanie zadane 21 czerwca 2018 w PHP przez kubusop Początkujący (420 p.)

92,453 zapytań

141,262 odpowiedzi

319,088 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...